← Ron's Tools NFL NHL NBA MLB
Under the hood

The Models

Every price on the site comes from a model built on free, public data. Here is every one of them, scored the same way: each season predicted by a model that had never seen it, then checked against what actually happened. The good, the middling, and the markets where the book still knows more than we do.

—markets modelled
—predictions scored
98research scripts
—big ideas tested and dropped

How to read the numbers

One score and four numbers per model. None of them is "win rate": a model can be great and still lose to a book that prices the same thing a little better. That's what the vs the market section is for.

Model score · 0 to 100

How far can you trust this model's prices?

One number per model, made of three parts you can see on every card. 90+ is as robust as sports props get; 70s–80s is solid; around 50 means limited signal beyond a guess; under 30 means the ranking, prices, or evidence need substantial caution.

  • Ranking (45%): the AUC, from 0.50 (a coin flip, 0) to 0.85 or better (full marks).
  • Honest prices (35%): at the top of the board (the tenth we price highest, where people bet), how far our price is from what actually happened, in relative terms, minus what chance alone explains at that sample. Within noise = full marks; 15% past it = 0. Relative matters: a 0.2% hat trick priced at 0.24% is only 0.04 points off, but its odds are 20% too short.
  • Evidence (20%): how many actual hits (or misses, whichever is rarer) back it up, from 10 (0) to 10,000+ (full). 140,000 skater-games hold only 288 hat tricks.
  • It measures how trustworthy our prices are, not whether they beat the book (see vs the market), and minutes-driven NBA markets are easier to rank than one-bounce ones, so compare within a sport first.

AUC

Does it rank the right players first?

Pick one player who hit and one who didn't: AUC is how often we priced the hitter higher. 0.50 is a coin flip, 0.70 is good for sports props, 0.80+ is strong. It's measured across every player we price, bench guys included, so markets driven by minutes (NBA) score higher than markets decided by one bounce (first basket).

Skill

How much better than guessing the average?

How much of the uncertainty the model removes compared with pricing everyone at the league average (log loss). 0% means no information; 10% is solid for a player prop; 30%+ is a market where the inputs (minutes, role) explain most of it. Unlike AUC, it punishes confident wrong prices.

Calibration

When we say 30%, does it hit 30%?

Players are sorted into ten groups by price; for each, the gap between what we priced and what actually happened, averaged. Under 1 point is excellent; 1–3 points is fine. This is what makes a fair price a fair price, and what the EV numbers depend on.

Top 10%

What happens at the top of the board?

The hit rate of the tenth of players we price highest, next to the average for everyone. 2× means the top of our board hits twice as often as a random player. It's where most people bet, so it's the number that matters most in practice.

Loading the scorecard…

Against the market where we've measured it

The only test that decides whether a model wins money: score it next to the book or exchange price on the same games. We've done it where historical prices exist. Honest summary: on most markets the sharp price and ours are close. The edges are narrow, specific, and sometimes the other way.

What didn't work tested, and left out on purpose

Every idea below was built and tested walk-forward, and added nothing out of sample, so it isn't in the price. A lot of popular betting angles are on this list.

How it's tested

01

Walk-forward, always

Every season is predicted by a model fitted only on the seasons before it, the same way it runs live. No peeking: a backtest that trains on the season it scores always looks better than it is.

02

Research = what ships

Each model's research is replayed against the site's own build code (a "parity check") so the numbers here are the model you see on the board, not a cleaner cousin of it.

03

Graded live

Every board is frozen at first pitch, puck drop or kickoff and graded afterwards. The Results tabs and each game's box score show how it did, misses included.

04

Public data only

MLB Stats API and Statcast, nflverse, the NHL's own API, ESPN. Anyone can rebuild these. The point isn't a secret; it's showing how far free data goes.

05

Nulls are kept

An idea that doesn't beat the model it's added to gets dropped, however good it sounds. The biggest ones are listed above.

06

Re-run as it grows

This page reads the scorecard straight from the research folder, so when a model is refit or a new one ships, the numbers here change with it.

These are fair prices, not picks. Ron's Tools · inspired by Green Means Go · About