Spaces:
Running
Running
Commit History
-
Fix: 4 critical accuracy fixes from 6-agent panel audit
Fix 1 (scorer.py): Hard R/R veto gate - Cards with R/R < 1.0 now get vetoed=True + veto_reason explaining breakeven win rate needed - Frontend shows red NO TRADE banner with explanation - No more surfacing mathematically losing trades as actionable signals Fix 2 (backtest.py): Align ATR timeframe with live scorer - Switched from 1h candles to 15m candles (same as scorer.py SL/TP logic) - LOOKBACK_BARS = 17,280 (6 months of 15m bars) - MAX_HOLD_BARS = 480 (5 days in 15m bars) - 1h ATR was ~2x 15m ATR causing backtested TP2 to be unreachably far - This directly explains 0% backtest win rate when user won both live trades Fix 3 (backtest.py + frontend): Dual TP1/TP2 win rate tracking - Backtest now tracks both TP1 win (1.5x ATR hit before SL) and TP2 win (2.5x ATR) - TP1 win rate is the PRIMARY metric (matches how most traders actually exit) - Frontend shows TP1 Win Rate as main number + TP2 comparison row - State breakdown shows both TP1% and TP2% per market regime Fix 4 (scorer.py + …34bf5b4
-
fix: backtest detector — RSI/ATR anti-correlation bug, expect ~150 trades/6mo now
b13dbcb -
fix: paginated kline fetch for backtest (500→4320 bars), fix ?mo bug
0b71b54 -
feat: walk-forward backtesting layer — backtest.py, /api/backtest, p_win blend, frontend panel
8506514