From b467eff8bec55f6ad6a278c3af2890a16970b067 Mon Sep 17 00:00:00 2001 From: ABS <53243996+ABSllk@users.noreply.github.com> Date: Mon, 20 Apr 2026 00:11:23 +0800 Subject: [PATCH] fix(bitget): add legacy fallback for futures stoploss cancel --- freqtrade/exchange/bitget.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/freqtrade/exchange/bitget.py b/freqtrade/exchange/bitget.py index 3be721cff..1119a6455 100644 --- a/freqtrade/exchange/bitget.py +++ b/freqtrade/exchange/bitget.py @@ -7,6 +7,7 @@ from freqtrade.constants import BuySell from freqtrade.enums import OPTIMIZE_MODES, CandleType, MarginMode, PriceType, TradingMode from freqtrade.exceptions import ( DDosProtection, + InvalidOrderException, OperationalException, RetryableOrderError, TemporaryError, @@ -149,7 +150,11 @@ class Bitget(Exchange): if self.trading_mode != TradingMode.FUTURES: return self.cancel_order(order_id, pair, cancel_params) - return self.cancel_order(order_id, pair, {**cancel_params, "planType": "pos_loss"}) + try: + return self.cancel_order(order_id, pair, {**cancel_params, "planType": "pos_loss"}) + except (InvalidOrderException, IndexError): + # Keep compatibility with stoploss orders created by older versions. + return self.cancel_order(order_id, pair, cancel_params) @retrier def additional_exchange_init(self) -> None: