diff --git a/trading_system/binance_client.py b/trading_system/binance_client.py index f4d7910..d28379a 100644 --- a/trading_system/binance_client.py +++ b/trading_system/binance_client.py @@ -1552,8 +1552,10 @@ class BinanceClient: logger.error(f" 原因: ReduceOnly 订单被拒绝(可能没有持仓或持仓方向不对)") elif error_code == -4120: logger.error(f" 原因: 不支持的条件单类型(可能需要使用 Algo 接口)") - elif "immediately trigger" in error_msg.lower() or "would immediately trigger" in error_msg.lower(): + elif error_code == -2021 or "immediately trigger" in error_msg.lower() or "would immediately trigger" in error_msg.lower(): logger.error(f" 原因: 触发价格会导致立即触发(止损/止盈价不在正确一侧)") + # 关键修复:抛出此异常,让上层(PositionManager)捕获并执行市价平仓 + raise e elif "position" in error_msg.lower(): logger.error(f" 原因: 持仓相关问题(可能没有持仓或持仓方向不匹配)")