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.MARK: "mark",
|
||||||
PriceType.INDEX: "index",
|
PriceType.INDEX: "index",
|
||||||
},
|
},
|
||||||
|
# Kraken Futures retains only 29 days of hourly funding rate history.
|
||||||
|
"funding_fee_candle_limit": 700,
|
||||||
}
|
}
|
||||||
|
|
||||||
@retrier
|
@retrier
|
||||||
|
|||||||
@@ -32,6 +32,8 @@ def test_krakenfutures_ft_has_overrides():
|
|||||||
assert ft_has["stoploss_query_requires_stop_flag"] is True
|
assert ft_has["stoploss_query_requires_stop_flag"] is True
|
||||||
assert ft_has["stop_price_param"] == "triggerPrice"
|
assert ft_has["stop_price_param"] == "triggerPrice"
|
||||||
assert ft_has["stop_price_type_field"] == "triggerSignal"
|
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):
|
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
|
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 ---
|
# --- fetch_order fallback tests ---
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user