fix: carry action/risk_level onto backtest candidates for the gate ablation
_window_setups computed them but _replay_ticker dropped them, so the ablation's NEUTRAL/tightener checks saw None for every candidate and the 'without confidence floor' / 'without R:R floor' rows collapsed to 0 setups (impossible — removing a floor can only add setups). Regression test now goes through the real _replay_ticker path. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -394,6 +394,10 @@ def _replay_ticker(symbol: str, records: list, config: dict, activation: dict) -
|
||||
"best_prob": s["best_prob"],
|
||||
"momentum": s["momentum"],
|
||||
"meets_core": s["meets_core"],
|
||||
# Gate fields the ablation recomputes floors from — without them
|
||||
# every candidate looks NEUTRAL and the ablation rows collapse.
|
||||
"action": s["action"],
|
||||
"risk_level": s["risk_level"],
|
||||
"outcome": outcome,
|
||||
"target_hit": target_hit,
|
||||
"realized_r": realized_r,
|
||||
|
||||
Reference in New Issue
Block a user