diff --git a/deploy/profile-scripts/strategy_lifecycle.py b/deploy/profile-scripts/strategy_lifecycle.py index 7dcf4d08..8e1d0e45 100644 --- a/deploy/profile-scripts/strategy_lifecycle.py +++ b/deploy/profile-scripts/strategy_lifecycle.py @@ -1180,8 +1180,13 @@ def reassess_strategy(code, name, price, cost, shares, current_action, break # ----- 风险回报比最终计算 ----- - risk = max(price - new_stop, price * 0.01) - reward = max(new_target - price, 0) + # 2026-08-18 修复:买入价用买入区中值(entry_mid)算 risk,不是现价 + # 现价不是买入价——实盘按 entry_mid 买入,risk=entry_mid-stop,reward=tp-entry_mid + _el = result.get("entry_low") or 0 + _eh = result.get("entry_high") or 0 + _entry_mid = (_el + _eh) / 2 if (_el > 0 and _eh > _el) else price + risk = max(_entry_mid - new_stop, _entry_mid * 0.01) + reward = max(new_target - _entry_mid, 0) rr_ratio = reward / risk if risk > 0 else 0 # ----- 状态判断 -----