Where tennis prices go soft: what six years of walk-forward taught us about recreational books

· Tennis Analytics

By the founder — Princeton econometrics; competitive tennis player

Our model doesn't beat Pinnacle. This essay is about the books it can measure — and the one claim from six years of data we're willing to put our name on, brackets and all.

Soft books are mechanically worse at this

Recreational books — the ones with ads, parlays and deposit bonuses — price tennis worse than Pinnacle, persistently. Across our 2019–2024 sample the best available recreational price beat Pinnacle's on essentially every match, by +0.094 in decimal odds on average (~3.5%), positive in all six years and every tournament tier.

That gap alone is nearly free money in the accounting sense: taking the best-of-4 price instead of Pinnacle's on identical picks was worth +4.6 percentage points of ROI, 95% CI [+3.6, +5.6] against the sharp close. That interval excludes zero comfortably. Line shopping is the most provable edge in this entire project — and it's available to anyone, model or no model.

The filter, exactly as validated

The model's job is narrower: find the matches where a recreational book's price disagrees with the calibrated fair line by enough to matter, but not by so much that the price is probably a mistake you can't actually bet.

The deployed filter, fixed before deployment and never tuned since:

  • model-favored pick, Pinnacle odds in [2.0, 3.0)
  • model-vs-market disagreement of 5–12% (vig removed)
  • executed at the best available recreational price

In the six-year walk-forward (each year scored by a model trained only on earlier years; 1,402 qualifying picks):

| Priced at | ROI | 95% CI | | --- | --- | --- | | Best-of-4 books | +10.4% | [+3.9%, +17.3%] | | Pinnacle close | +5.9% | [−0.3%, +12.5%] |

Read the second row first: against Pinnacle's close the interval touches zero, which is why we don't claim to beat Pinnacle. The first row is the claim we do make — the filter, executed where the softness actually is, with a CI that excludes zero. The gap between the rows is the product: roughly half the return is line shopping, and the filter's job is choosing when the shopping is worth doing.

The caveats we'd want disclosed to us

Year-to-year variance is brutal. Pooled results lean on 2022, the one year strong enough to clear zero on its own; 2021 was −18% against the close. Anyone quoting a six-year average without saying that is selling.

We already fell into the multiple-comparisons trap once, in public. A narrower 6–10% band looked better in-sample — it was the best of nine candidate bands, and it survived every statistical correction we threw at it. On the 2024 holdout it returned −1.0%, well below its claimed lower bound. The band was overfit; the correction procedure wasn't enough. That's why what's deployed is the broad, boring 5–12% band, and why any future filter change has to survive a holdout it wasn't discovered on.

Bigger disagreement is not a better pick. We tested whether the size of the model-market gap predicts winners: it doesn't (the effect is negligible and not significant). Above 12%, a huge gap usually means a stale line or bad data — the Edge Board renders those as a caution, never as conviction.

Paper numbers shrink in the real world. Best-of-4 assumes you hold accounts at soft books, get the posted price, and don't get limited. Our honest live expectation is +2–4%, not +10%. Soft books limit winners; that friction is real and unmodeled.

The test that never ends

Every pick the filter flags goes on the public ledger — flagged price, vig-removed Pinnacle close, closing-line value per pick, running aggregate at the top. Rows are never edited; corrections append. If the aggregate CLV on filtered picks sits at or below zero over any rolling 6-month window with n ≥ 100, the claim above comes off this site — a rule we pre-committed to on the Receipts page before the forward record started.

Six years of history earned the filter a live trial, not a verdict. The ledger is the verdict, accumulating one graded pick at a time.

This isn't theory — it runs every morning.

Every method described here feeds the daily board, and every flagged pick is graded against the close on the public ledger.

See this live on today's board →

We don't beat Pinnacle's closing line — nobody reliably does; we find the books that disagree with it. The only validated claim is the 5–12% recreational-book filter, scoped, tracked on the public ledger and graded on the receipts page. Not betting or financial advice. 21+ where legal.