Model Validation
Walk-forward means the model trains only on historical data prior to the prediction date β no future information leaks in. All backtest results shown below are out-of-sample. Go-live requires four independent thresholds: ROI > 3%, CLV β₯ 55%, calibration Β±2%, and β₯ 300 paper trade plays.
Backtest Results by Sport
| Brier Score | 0.1936 (22.6% above random baseline of 0.25) |
| Directional Accuracy | 70.3% |
| Simulated ROI | +39% |
| Sample Size | 973 matches |
| Competitions | EHF CL + Bundesliga |
| Data Period | 2019β2025 |
| Teams Covered | 48 teams, 6 seasons |
Platt scaling calibration infrastructure added (v1.1.0). PLATT_ENABLED=False pending additional data β overconfidence identified at low-probability end (0β30%), underconfidence at high end (90%+). Live signals are issued without shrinkage until calibration refit threshold (500+ predictions) is reached.
| Brier Score (National) | 0.2330 post-ELO separation |
| Brier Score (Franchise/IPL) | 0.2552 post-ELO separation |
| National Sample | 3,111 matches, 107 countries |
| Franchise Sample | 1,117 matches (IPL), 18 teams |
| Data Period | 2008β2025 |
ELO pools separated in v0.5.1 β franchise teams (IPL) and national teams (ICC) now maintain independent ELO ratings. Prior conflation was suppressing predictive accuracy for international matches.
| Model | Pythagorean Win% (exp = 2.0) + ELO blend |
| ELO Source | ESPN standings API |
| Odds Source | ESPN Core API + FanDuel player props |
| Signals Issued (Mar 21) | 12 team ML/totals Β· 369 player prop lines |
| Pythagorean RMSE | In calibration (paper trade phase) |
NHL team model uses Pythagorean expected win% derived from Goals For / Goals Against. ELO initialized from ESPN power rankings. Three confirmed SNIPE (T1) totals on Mar 21 with 14β23% edge: DAL@MIN Over 5.5, NYI@MTL Over 5.5, BOS@DET Over 5.5.
| ELO Source | Warren Nolan (warrennolan.com) β weekly |
| ISR Source | Boyd's World (boydsbets.com) β weekly |
| ELO / ISR Blend | 60% ELO + 40% ISR |
| SP ERA Adjustment | Β±3β4pp per dominant vs. shaky SP matchup |
| Live Signals Since | March 21, 2026 |
| Signals Issued (Mar 21) | 7 plays β 3 T1 FILTHY Β· 2 T2 WHEELHOUSE Β· 2 T3 SCOUT |
Closing line value (CLV) tracking begins from first live signal date. 30-day paper trade window in progress. Go-live target: April 20, 2026 (pending all 4 thresholds).
Walk-Forward Backtest Protocol
- All backtests use walk-forward splits β model trained on data prior to prediction date only. Zero lookahead contamination.
- 10Β’ slippage applied to every simulated entry.
- Minimum 3 seasons required before trusting any team ML backtest result.
- Calibration bins must be within Β±2% across all probability ranges (0β10%, 10β20%, β¦ 90β100%).
- Closing line (no-vig) = CLV benchmark. Pinnacle closing line is the gold standard reference.
- Paper trading minimum: 30 days before real money on any new model.
- All results logged publicly in the Results tab β wins and losses, no cherry-picking.
Data Sources Used in Validation
- Boyd's Worldβ boydsbets.com Β· ISR ratings, NCAA Baseball, updated weekly
- Warren Nolanβ warrennolan.com Β· ELO ratings, NCAA Baseball, updated weekly
- Cricsheetβ cricsheet.org Β· T20 ball-by-ball data, Cricket international + IPL
- API Sportsβ EHF / Bundesliga handball fixtures Β· ICC / IPL cricket fixtures and results
- MoneyPuckβ moneypuck.com Β· NHL shot quality, xG data, 2007βpresent
- football-data.co.ukβ Soccer results and odds, 6 top leagues, 1993βpresent
- Club Eloβ clubelo.com Β· Soccer ELO ratings, 1939βpresent