From 5800002d4214ae4f3d2502b3046eed16024ab6e4 Mon Sep 17 00:00:00 2001 From: Matthias Date: Mon, 15 Dec 2025 06:48:53 +0100 Subject: [PATCH] feat: add stoploss_fetch_requires_stop_param property --- freqtrade/exchange/binance.py | 1 + freqtrade/exchange/bitget.py | 1 + freqtrade/exchange/exchange.py | 1 + freqtrade/exchange/exchange_types.py | 1 + freqtrade/exchange/gate.py | 1 + freqtrade/exchange/okx.py | 1 + 6 files changed, 6 insertions(+) diff --git a/freqtrade/exchange/binance.py b/freqtrade/exchange/binance.py index e05b9c702..258afc631 100644 --- a/freqtrade/exchange/binance.py +++ b/freqtrade/exchange/binance.py @@ -51,6 +51,7 @@ class Binance(Exchange): "funding_fee_candle_limit": 1000, "stoploss_order_types": {"limit": "stop", "market": "stop_market"}, "stoploss_blocks_assets": False, # Stoploss orders do not block assets + "stoploss_fetch_requires_stop_param": True, "tickers_have_price": False, "floor_leverage": True, "fetch_orders_limit_minutes": 7 * 1440, # "fetch_orders" is limited to 7 days diff --git a/freqtrade/exchange/bitget.py b/freqtrade/exchange/bitget.py index f0da55cb0..7fef482d2 100644 --- a/freqtrade/exchange/bitget.py +++ b/freqtrade/exchange/bitget.py @@ -31,6 +31,7 @@ class Bitget(Exchange): "stop_price_prop": "stopPrice", "stoploss_blocks_assets": False, # Stoploss orders do not block assets "stoploss_order_types": {"limit": "limit", "market": "market"}, + "stoploss_fetch_requires_stop_param": True, "ohlcv_candle_limit": 200, # 200 for historical candles, 1000 for recent ones. "order_time_in_force": ["GTC", "FOK", "IOC", "PO"], } diff --git a/freqtrade/exchange/exchange.py b/freqtrade/exchange/exchange.py index cc1cd3322..120b027e6 100644 --- a/freqtrade/exchange/exchange.py +++ b/freqtrade/exchange/exchange.py @@ -132,6 +132,7 @@ class Exchange: "stop_price_prop": "stopLossPrice", # Used for stoploss_on_exchange response parsing "stoploss_order_types": {}, "stoploss_blocks_assets": True, # By default stoploss orders block assets + "stoploss_fetch_requires_stop_param": False, # Require "stop": True" to fetch stop orders "order_time_in_force": ["GTC"], "ohlcv_params": {}, "ohlcv_has_history": True, # Some exchanges (Kraken) don't provide history via ohlcv diff --git a/freqtrade/exchange/exchange_types.py b/freqtrade/exchange/exchange_types.py index d2c2b46e2..0a69f8752 100644 --- a/freqtrade/exchange/exchange_types.py +++ b/freqtrade/exchange/exchange_types.py @@ -19,6 +19,7 @@ class FtHas(TypedDict, total=False): stop_price_type_value_mapping: dict stoploss_order_types: dict[str, str] stoploss_blocks_assets: bool + stoploss_fetch_requires_stop_param: bool # ohlcv ohlcv_params: dict ohlcv_candle_limit: int diff --git a/freqtrade/exchange/gate.py b/freqtrade/exchange/gate.py index 4c6d524d7..01be9d9cd 100644 --- a/freqtrade/exchange/gate.py +++ b/freqtrade/exchange/gate.py @@ -30,6 +30,7 @@ class Gate(Exchange): "stoploss_order_types": {"limit": "limit"}, "stop_price_param": "stopPrice", "stop_price_prop": "stopPrice", + "stoploss_fetch_requires_stop_param": True, "l2_limit_upper": 1000, "marketOrderRequiresPrice": True, "trades_has_history": False, # Endpoint would support this - but ccxt doesn't. diff --git a/freqtrade/exchange/okx.py b/freqtrade/exchange/okx.py index 14f20a0bb..43924d706 100644 --- a/freqtrade/exchange/okx.py +++ b/freqtrade/exchange/okx.py @@ -31,6 +31,7 @@ class Okx(Exchange): "ohlcv_candle_limit": 100, # Warning, special case with data prior to X months "stoploss_order_types": {"limit": "limit"}, "stoploss_on_exchange": True, + "stoploss_fetch_requires_stop_param": True, "trades_has_history": False, # Endpoint doesn't have a "since" parameter "ws_enabled": True, }