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:
matstedt
2026-02-14 20:34:59 +01:00
committed by Matthias
parent cb2e50abcf
commit 0dc26584cc
2 changed files with 13 additions and 0 deletions
+2
View File
@@ -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
+11
View File
@@ -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 ---