Calibration
Probability vs Reality
When the model says 60%, does the bet actually win 60% of the time? Below: each point is a decile bucket. Perfect calibration sits on the diagonal.
ECE
13.17%
weighted bucket gap · <5% is good
Calibration Slope
0.85
model is over-confident
Avg Confidence
53.1%
aggressive (marginal edges)
Settled Bets
2665
Brier 0.2327 · <0.25 beats coin flip
Model vs Market
Our model's probability vs the market's closing line probability
Each dot is a settled bet; the market prob is de-vigged (the book's juice removed). Recolor to see where our disagreements with the market actually paid off.
Each dot is one settled bet (1739with a consensus close): x = our model's probability, y = the market's de-vigged consensus closing probability. Click a pill (or drag the line sliders) to isolate a group — the rest grey out. Our model is closer to the actual result on 42% of bets · Brier 0.241 (model) vs 0.220 (market), lower = better predictor.
Model vs Market vs Reality
By line — what we say, what the market says (de-vigged), what happens
Win probability at each line. "Model over" is how far our number sits above the actual rate — our overconfidence at that line.
| Line | Bets | Model says | Market says | Actual | Model over |
|---|---|---|---|---|---|
| 2.5 | 35 | 78.1% | 63.7% | 57.1% | +21.0 |
| 3.5 | 262 | 66.9% | 53.4% | 51.5% | +15.4 |
| 4.5 | 478 | 60.1% | 48.6% | 47.5% | +12.7 |
| 5.5 | 429 | 54.8% | 42.7% | 42.2% | +12.6 |
| 6.5 | 304 | 47.4% | 35.2% | 36.5% | +10.9 |
| 7.5 | 151 | 42.9% | 30.6% | 29.1% | +13.8 |
| 8.5 | 57 | 32.2% | 20.7% | 15.8% | +16.4 |
| 9.5 | 18 | 24.6% | 15.2% | 5.6% | +19.1 |
Model vs Market vs Reality
By pitcher class — where the overconfidence concentrates
Win probability by pitcher talent tier (strikeouts per start). "Model over" is how far our number sits above reality for that class — the model runs hottest on mid-tier arms, not the aces.
| Class | Bets | Model says | Market says | Actual | Model over |
|---|---|---|---|---|---|
| Scrub< 3.98 K | 179 | 53.9% | 44.0% | 35.2% | +18.7 |
| Average3.98–4.64 K | 380 | 51.6% | 42.7% | 40.5% | +11.0 |
| Good4.64–5.36 K | 668 | 51.2% | 43.0% | 35.9% | +15.3 |
| Elite5.36+ K | 858 | 56.1% | 43.2% | 44.1% | +12.0 |
Team Strikeout Rate
Model K% vs actual K%, by opponent (2026)
All 2139 starts this season, not just bets — where the model misreads how often a lineup strikes out.
model over-expects Ks (overs trap / unders value)model under-expects Ks (overs value)
Reliability Diagram
Predicted probability → actual win rate
Bets per bucket
