New to these reports? Start here
  • Dotted-underlined words have a plain-English definition — hover or tap them. Every term is also on the glossary page.
  • "Null" means we found nothing, not that something broke. Most reports here are negative results, on purpose — knowing an idea doesn't work is the point.
  • Two questions get asked separately. First, is the effect real? Second, is it already priced into the betting odds? An effect can be completely real and still useless to bet on.
  • A "calibration" row is a self-check. It runs the same method on something already known to be true. If that fails, the whole report is unreliable — so it's reported alongside the findings.
  • If a confidence interval includes zero, the real effect might be nothing at all, so no claim gets made.

Kicker-wind pre-registration: historical result (2026-11-02)

Graded exactly as PREREG.md (frozen 2026-10-21, unedited). Odds bought 2026-11-02: backtests/historical_odds_nov2026/ (292 games, 2,924 credits; the calm sample was drawn with seed 20261021 and saved to data/kicker_sample.csv before purchase). Script: grade_historical.py → results_historical.json.

Bets Games Under won ROIreturn on investmentProfit as a percentage of the money wagered. +2% means $2 profit per $100 bet. at best Under price 95% CI95% confidence intervalThe range the true value is plausibly in. If this range includes zero, we cannot rule out that the real effect is nothing at all. (bootstrapbootstrapRe-running a calculation on thousands of resampled versions of the data to see how much the answer wobbles. The spread of those answers becomes the confidence interval. by game)
Windy (≥ 12 mph forecast) 269 141 52.4% −0.2% −10.9% to +11.0%
Calm control (< 10 mph) 293 146 43.3% −17.0% −28.2% to −5.6%
  • Criterion 1 (windy ROI > 0, CI lower bound > −5%, n ≥ 150): FAILS. n = 269 and ROI is about 0.
  • Criterion 2 (calm shows no comparable Under edge): passes, but that's moot.
  • Criterion 3 (forward 2026, first 100 bets): still collecting. It can't rescue criterion 1.
  • By season (windy): 2023 −11.9%, 2024 +3.4%, 2025 +5.3%.

Reading: - The wind effect is real: Unders win 52% in wind vs. 43% in calm. - Books barely shade the line (kicker line ÷ game total 0.155 windy vs. 0.151 calm). Instead they price the Under expensively, and the expected 0.37-point drop doesn't survive that juice. - The test was whether books already price wind into kicker props. They do, through the price rather than the line.

Not pre-registered (reported, not acted on): calm-game Overs at the best price won 56.7%, ROI +7.7% (CI −3.6% to +18.8%), with seasons +11% / −14% / +22%. Unstable, found after looking.

Grading notes: - nflverse has rows for kickers who played with zero attempts. A first pass dropped them; they're Under wins. - Names: unicode-normalised ("Andrés"), with a unique-last-name fallback ("Andy" vs "Andres" Borregales). - 6 props unmatched, mostly kickers who didn't play (void). 5 games had no kicker market posted.

On this page

Terms in this report

Related

Kicker scoring and forecast wind (2026-10-21) Pre-registration: kicker-points unders in forecast wind (frozen 2026-10-21)

Source

backtests/nfl_kicker_wind/RESULT_HISTORICAL.md
updated 2026-11-02 03:58