| SEASON | GAMES | STRAIGHT-UP | VS THE LINE | ATS % | BRIER | ML ROI |
|---|---|---|---|---|---|---|
| 2016 | 760 | 70.3% | 358β382β20 | 48.4% | .190 | no ML data |
| 2017 | 776 | 70.4% | 390β365β21 | 51.7% | .185 | no ML data |
| 2018 | 772 | 72.4% | 391β361β20 | 52.0% | .175 | no ML data |
| 2019 | 774 | 73.1% | 377β384β13 | 49.5% | .176 | no ML data |
| 2020 (COVID) | 534 | 71.2% | 274β251β9 | 52.2% | .187 | no ML data |
| 2021 | 770 | 69.5% | 383β378β9 | 50.3% | .187 | -4.0% |
| 2022 | 776 | 68.7% | 389β374β13 | 51.0% | .199 | -4.6% |
| 2023 | 792 | 72.3% | 395β381β16 | 50.9% | .185 | -1.2% |
| 2024 | 798 | 69.2% | 391β388β19 | 50.2% | .193 | -5.4% |
| 2025 | 808 | 72.5% | 396β394β18 | 50.1% | .184 | +1.0% |
| STRATEGY | BETS | WINS | FLAT ROI |
|---|---|---|---|
| bet every straight-up pick | 3,771 | 2,619 | -2.81% |
| any modeled edge | 1,537 | 895 | -0.62% |
| edge > 2 points | 1,278 | 709 | -0.35% |
| edge > 5 points | 968 | 514 | +2.91% |
| robot backs the favorite | 3,301 | 2,415 | -4.83% |
| robot backs an underdog | 470 | 204 | +11.38% |
| SIGNAL | VERDICT | EVIDENCE |
|---|---|---|
| talent_gap | AUDITIONING | passes 2/3 criteria β needs more seasons of evidence |
| returning_production | AUDITIONING | passes 2/3 criteria β needs more seasons of evidence |
| rush_def_trend | GRADUATED | improves held-out Brier (mean +0.00003), stable sign, holds 2021+ |
| pass_off_trend | GRADUATED | improves held-out Brier (mean +0.00003), stable sign, holds 2021+ |
| rush_off_trend | CUT | no lift on held-out seasons (mean Brier delta -0.00003) |
| turnover_luck | CUT | no lift on held-out seasons (mean Brier delta -0.00002) |
| letdown_spot | CUT | no lift on held-out seasons (mean Brier delta -0.00014) |
| lookahead_spot | GRADUATED | improves held-out Brier (mean +0.00020), stable sign, holds 2021+ |
| travel_km | GRADUATED | improves held-out Brier (mean +0.00020), stable sign, holds 2021+ |
| body_clock | CUT | no lift on held-out seasons (mean Brier delta -0.00014) |
| line_movement | ADVISORY | evaluated but cannot graduate on backtest evidence β openβclose movement is not observable at Tuesday lock time |
I don't know the quarterback is hurt. No injury reports, no practice news, no depth charts. My ratings only learn about a missing starter after he misses games. The betting market knows Tuesday; I find out Saturday. Mid-week line movement against a locked pick is usually this weakness wearing a trench coat β it gets flagged as 'steamed' in the ledger, and those flags measure exactly how much my news-blindness costs.
I don't beat the spread. Career 49.5% against the closing line; break-even is 52.4%. The closing number is sharper than I am, which is why the bet card is paper and the real-money gate stays shut.
My cover probabilities are on probation. Win probabilities are proven calibrated (see above). The COVER probabilities on the bet card are derived through a margin model that has not earned the same trust β when the card says 76% to cover, treat it as the model's opinion, not a measurement. Validating them is what the paper ledger is for.
Elo does most of my work. The other seven signals together improve career Brier by less than half a point of BrierΓ1000. They're real (they survived the audition), but the receipts should be read knowing one clue carries the band.
Small samples flatter me. The +11% underdog moneyline ROI comes from 470 bets across five seasons, found while testing six strategies. That's exactly the shape luck takes. It stays an experiment until live paper results agree.
My historical odds are a proxy. Backtests price against Bovada/DraftKings/consensus (CFBD), not FanDuel directly β close, not identical. Live pricing uses actual FanDuel via The Odds API.
β’ Picks lock Tuesday and are never edited. The scorecard grades the locked JSON, not a memory of it.
β’ The model never sees in-week news. If the line moves β₯3 points against a locked bet, the ledger flags it 'steamed' β graded anyway, reported separately, so news-blindness gets measured instead of hidden.
β’ Better numbers are taken, worse numbers are never chased: if the available line beats the locked number on a side we already bet, the ledger may record a line-shopping top-up. A line that moves against us is information, not a discount.
β’ Real-money mode requires positive held-out backtest ROI AND positive live paper CLV over at least half a season, then a human typing the unlock phrase. The robot cannot flip its own switch.
β’ 2020 is reported, not counted. You know why.