krakenfutures: add funding_fee_candle_limit for limited history
Kraken Futures retains only ~29 days of hourly funding rate history. Set funding_fee_candle_limit to 700 so ohlcv_candle_limit returns the correct cap for CandleType.FUNDING_RATE instead of the general OHLCV limit.
This commit is contained in:
@@ -51,6 +51,8 @@ class Krakenfutures(Exchange):
|
||||
PriceType.MARK: "mark",
|
||||
PriceType.INDEX: "index",
|
||||
},
|
||||
# Kraken Futures retains only 29 days of hourly funding rate history.
|
||||
"funding_fee_candle_limit": 700,
|
||||
}
|
||||
|
||||
@retrier
|
||||
|
||||
@@ -32,6 +32,8 @@ def test_krakenfutures_ft_has_overrides():
|
||||
assert ft_has["stoploss_query_requires_stop_flag"] is True
|
||||
assert ft_has["stop_price_param"] == "triggerPrice"
|
||||
assert ft_has["stop_price_type_field"] == "triggerSignal"
|
||||
# Kraken retains only ~29 days of hourly funding rate history
|
||||
assert ft_has["funding_fee_candle_limit"] == 700
|
||||
|
||||
|
||||
def test_krakenfutures_ohlcv_candle_limit_uses_ccxt_limit(mocker, default_conf):
|
||||
@@ -44,6 +46,15 @@ def test_krakenfutures_ohlcv_candle_limit_uses_ccxt_limit(mocker, default_conf):
|
||||
assert ex.ohlcv_candle_limit("1m", candle_type=CandleType.FUTURES) == 2000
|
||||
|
||||
|
||||
def test_krakenfutures_ohlcv_candle_limit_funding_rate(mocker, default_conf):
|
||||
"""Funding rate candle limit is capped to reflect Kraken's limited history retention."""
|
||||
ex = get_patched_exchange(mocker, default_conf, exchange="krakenfutures")
|
||||
|
||||
mocker.patch.object(ex, "features", return_value=2000)
|
||||
|
||||
assert ex.ohlcv_candle_limit("1h", candle_type=CandleType.FUNDING_RATE) == 700
|
||||
|
||||
|
||||
# --- fetch_order fallback tests ---
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user