diff --git a/src/base_trader.py b/src/base_trader.py index 12d8231..435b5b8 100644 --- a/src/base_trader.py +++ b/src/base_trader.py @@ -224,3 +224,5 @@ class BaseTrader(ABC): """清除指定策略的持仓管理器""" if strategy_name in self.position_managers: self.position_managers[strategy_name].clear() + return True + return False diff --git a/src/trade_server.py b/src/trade_server.py index cf42b3f..3de269a 100644 --- a/src/trade_server.py +++ b/src/trade_server.py @@ -435,9 +435,10 @@ def clear_strategy(strategy_name): """清除指定策略的持仓管理数据""" logger.info(f"接收到清除策略持仓请求: {strategy_name}") try: - get_trader().clear_position_manager(strategy_name) - - return jsonify({"success": True, "message": "clear success"}), 200 + if get_trader().clear_position_manager(strategy_name): + return jsonify({"success": True, "message": "clear success"}), 200 + else: + return jsonify({"success": False, "message": "策略不存在: " + strategy_name}), 400 except Exception as e: logger.error(f"清除策略持仓时出错: {str(e)}")