fix: allow set-leverage failures on followup orders

This commit is contained in:
Matthias
2025-12-15 20:22:52 +01:00
parent 8c62816972
commit 289e53ed5a
2 changed files with 5 additions and 2 deletions
+3 -2
View File
@@ -1405,8 +1405,9 @@ class Exchange:
amount: float, amount: float,
rate: float, rate: float,
leverage: float, leverage: float,
reduceOnly: bool = False,
time_in_force: str = "GTC", time_in_force: str = "GTC",
reduceOnly: bool = False,
initial_order: bool = True,
) -> CcxtOrder: ) -> CcxtOrder:
if self._config["dry_run"]: if self._config["dry_run"]:
dry_order = self.create_dry_run_order( dry_order = self.create_dry_run_order(
@@ -1423,7 +1424,7 @@ class Exchange:
rate_for_order = self.price_to_precision(pair, rate) if needs_price else None rate_for_order = self.price_to_precision(pair, rate) if needs_price else None
if not reduceOnly: if not reduceOnly:
self._lev_prep(pair, leverage, side) self._lev_prep(pair, leverage, side, accept_fail=not initial_order)
order = self._api.create_order( order = self._api.create_order(
pair, pair,
+2
View File
@@ -937,6 +937,7 @@ class FreqtradeBot(LoggingMixin):
reduceOnly=False, reduceOnly=False,
time_in_force=time_in_force, time_in_force=time_in_force,
leverage=leverage, leverage=leverage,
initial_order=trade is None,
) )
order_obj = Order.parse_from_ccxt_object(order, pair, side, amount, enter_limit_requested) order_obj = Order.parse_from_ccxt_object(order, pair, side, amount, enter_limit_requested)
order_obj.ft_order_tag = enter_tag order_obj.ft_order_tag = enter_tag
@@ -2145,6 +2146,7 @@ class FreqtradeBot(LoggingMixin):
leverage=trade.leverage, leverage=trade.leverage,
reduceOnly=self.trading_mode == TradingMode.FUTURES, reduceOnly=self.trading_mode == TradingMode.FUTURES,
time_in_force=time_in_force, time_in_force=time_in_force,
initial_order=False,
) )
except InsufficientFundsError as e: except InsufficientFundsError as e:
logger.warning(f"Unable to place order {e}.") logger.warning(f"Unable to place order {e}.")