Methodology
From a screen of prices to one word
Seven stages sit between a set of sportsbook prices and the words BET, WAIT, or PASS. This page walks all seven, labels which are running today and which are designed but unexercised, and ends with what the method cannot see.
Overview
The pipeline, with the status of each stage
01 · Market
CurrentWhat is actually being offered, with the margin removed?
Prices from several books on the same market are collected and each two-sided market is de-vigged. Until that is done the numbers are not comparable to each other and not comparable to any probability estimate, because each one carries a different amount of book margin.
02 · Consensus
CurrentWhere does the market as a whole think this price should be?
The de-vigged prices are blended into one latent estimate rather than any single book being treated as the answer. Sources are weighted by how much they lead rather than follow, and the spread between them is retained as a measure of disagreement instead of being averaged away.
03 · Movement
CurrentHow did the market get to this number?
The path matters as much as the level. Speed, direction, which book moved first, whether others followed, and whether the move later retraced all change how much a present gap is worth believing.
04 · Model
Current · MLB moneyline onlyWhat does an estimate built outside the market say?
An independent probability estimate for the outcome. It exists so there is something to disagree with the market about. It is narrow: baseball, moneyline, and nothing else. No formula is published here, and no page on this site claims a model accuracy figure.
05 · Opportunity
Current · scoring shown here is illustrativeIs the gap large enough, and supported enough, to be interesting?
The gap between fair estimate and available price is combined with the evidence around it into a single score against a threshold. A large gap with no supporting evidence scores worse than a smaller gap that several independent signals agree on.
06 · Risk
Preview · nothing is stakedWhat would this cost if the estimate is wrong?
Stake sizing, correlation between simultaneous positions, total exposure, and drawdown tolerance. The public experiment stakes nothing, so this stage is designed and documented rather than exercised.
07 · Decision
CurrentWhich of the three words applies?
BET, WAIT, or PASS. The output is a description of what the pipeline concluded, logged with the price and the time so it can be graded later against the closing line.
What this page deliberately does not contain
There is no formula here. The stages, the inputs, and the reasoning are described in full; the specific weights and functions are not published. What is published instead is the measurement — every entry the method produced, at the price it produced it, graded against the close on the public ledger.
Stage 01 · Market
De-vigging: the step that makes prices comparable
The symmetric case
Real arithmeticBoth sides at -110. Each implies 52.38%, so the two together imply 104.76% — 4.76 percentage points of probability that does not exist. Scaling both back to sum to 100% gives the fair price.
- Posted, both sides
- -110 / -110
- Raw implied, each side
- 52.38%
- Overround
- 104.76%
- Fair, each side
- 50.00%
- Book hold
- 4.55%
The answer is exactly a coin flip, which is the point: -110 both ways contains no opinion at all. It is pure margin, and either side needs to win 52.38% of the time simply to break even.
The asymmetric case
Illustrative pricesReal markets are lopsided, and the margin does not split evenly across the two sides. The two prices below are the sample values Book A carries on the first row of the illustrative market board. The prices are invented; the arithmetic performed on them is the same arithmetic the public calculator runs.
| Side | Posted | Raw implied | Fair | Margin removed |
|---|---|---|---|---|
| Side A · underdog | +138 | 42.02% | 40.69% | 1.33 pts |
| Side B · favourite | -158 | 61.24% | 59.31% | 1.93 pts |
Overround 103.26%, hold 3.15%. The two sides do not give up the same amount: the favourite carries 1.93 points of margin against 1.33 on the underdog. Splitting the overround evenly, which is the shortcut most spreadsheets take, would misprice both sides.
Why proportional, and where it is wrong
Scaling both implied probabilities by the same factor assumes the book applies its margin proportionally. That assumption is convenient and slightly wrong: books generally load more margin onto longshots, so proportional de-vigging tends to leave underdogs looking cheaper than they are.
Alternatives exist — multiplicative, additive, power, and Shin methods each make a different assumption about where the margin sits — and they disagree most exactly where it matters most, on longshots. This is a modelling choice with consequences, not a solved detail, and it is one reason a single-book edge is treated sceptically further down the pipeline.
What comes out of stage one
- One fair probability per side, per book.
- An overround and hold figure per book, kept for later use.
- A record of which books priced the market at all.
- A staleness flag for any book that has not moved with the rest.
Nothing has been compared to anything yet. All that has happened is that the prices have been made commensurable.
Stage 02 · Consensus
The latent price, and what disagreement is worth
Weighting sources
Illustrative weightsBooks are not interchangeable. One that reprices first and holds its new number is doing its own work; one that follows several minutes later is copying, and counting it as a second opinion double-counts the first.
| Source | Weight | Line |
|---|---|---|
| Sharp consensus | 0.40 | +130 |
| Latent market | 0.35 | +131 |
| Model fair | 0.25 | +128 |
The blended estimate for that sampled market is +128 against a board price of +138. Both are invented numbers on a fixed snapshot; the structure is what this section is showing.
Latent, not observed
The quantity being estimated is not any price on the screen. It is the price the market would settle on with the margin, the noise, and the copying removed — a latent value that every book is a noisy observation of.
Framing it that way changes what disagreement means. Two books ten cents apart are not both right; they are two measurements of one number, and the distance between them tells you how confident that measurement is.
Disagreement is data
Tight agreement across books means the estimate is well determined, and an edge measured against it is either real or a mistake in the model. Wide dispersion means the market itself is unsure, and an edge measured against a shaky consensus deserves a wider band and a lower score.
Dispersion is also why a single outlying book rarely produces a high score on its own, however large the apparent gap.
Stage 03 · Movement
Six ways a price change is read
| Signal | What is measured | Effect | Why |
|---|---|---|---|
| Velocity | Implied probability change per minute across the observation window. | Raises urgency, lowers confidence. | A market moving fast is a market that has not settled. The number on screen is already old. |
| Persistence | How long a gap has survived without being closed. | Raises confidence. | A gap standing for twenty minutes across several books is less likely to be a bad quote than one that appeared ten seconds ago. |
| Divergence | Distance between one book and the consensus of the others. | Raises estimated edge, raises fragility. | Most apparent value is one book disagreeing. That is also the most common way a price turns out to be an error, a stale number, or unreachable. |
| Reversal | A move that retraces back through its own starting point. | Lowers confidence sharply. | The first move was probably a limit adjustment or one large bet rather than information. Whatever the model read into it was noise. |
| Staleness | A book that has not repriced while the rest of the market has. | Excludes the book from consensus. | A frozen quote usually looks like the best price on the board. Counting it as available is one of the easiest ways to fool yourself. |
| Dispersion | Spread of de-vigged estimates across every book pricing the market. | Widens the uncertainty band. | When books disagree with each other the consensus is a weaker claim, and any edge measured against it inherits that weakness. |
The Pulse demo renders these signals on illustrative sample data so the shape of each one is visible. Nothing on that page is a market reading.
Stage 04 · Model
Something to disagree with the market about
What it estimates
CurrentA probability for one team to win one baseball game. That is the entire scope. It is not a rating system, not a projection engine for other sports, and not a general-purpose forecast.
What is not claimed
Not recordedNo accuracy figure, no calibration curve, and no version history appears anywhere on this site, because none of them was recorded in a form that could be published honestly. Model version is null on all 33 ledger rows and renders there as Not recorded.
Why it stays narrow
Other sports: roadmapBaseball has a long schedule, a discrete event structure, and a market that reprices on scheduled information. Those properties make the measurement tractable, and they do not transfer. The other sports on this site are roadmap, not adaptations waiting to be switched on.
Stage 05 · Opportunity
Scoring: the size of the gap, weighted by the evidence for it
| Component | Value | Max | What it rewards |
|---|---|---|---|
| Book agreement | 18 | 20 | Several books arriving at a similar de-vigged estimate. |
| Persistence | 16 | 20 | A gap that has survived, rather than one that just appeared. |
| Divergence | 20 | 20 | A meaningful separation between the best price and consensus. |
| Movement quality | 14 | 20 | Movement that is orderly rather than violent or retracing. |
| Liquidity proxy | 14 | 20 | Enough market depth for the price to mean something. |
Component values from the BOS -1.5 demo row. The components are real categories; the numbers are invented sample values on a fixed snapshot.
The threshold
Demo threshold 75/100A score below the threshold is not a small opportunity, it is a pass. The threshold exists because the cost of acting on noise is not symmetric with the benefit of catching a marginal edge: every entry pays the spread, and marginal entries pay it for nothing.
Edge half-life
18 min on the sample rowAn edge is not a fixed quantity waiting to be collected. It decays as the market absorbs whatever produced it. Half-life is the estimate of how fast, and it is why a high score with a two-minute half-life can be less useful than a lower one that will still be there in an hour.
Uncertainty band
Sample row: mediumEvery edge estimate is carried as a band rather than a point. When the band crosses zero, the honest description of the row is that it might be nothing, and the state reflects that instead of rounding it into a decision.
Stage 06 · Risk
What it would cost to be wrong
What the stage covers
Preview- Stake sizing. Growth-optimal staking on an estimated edge is a fractional Kelly problem, and the fraction matters more than the model. A working Kelly calculator is on the tools page.
- Correlation. Two entries on the same game are not two independent positions. Adding them as though they were understates risk.
- Exposure. Total money at risk simultaneously, and the largest correlated cluster inside it.
- Drawdown. The peak-to-trough path a bankroll takes, which is what actually ends most staking plans — not the expected value.
The portfolio preview shows how these would be laid out. It is a preview with sample values, and the real public book has 0 open positions.
Why edge estimates get halved
Applied to the recordFull Kelly assumes the probability estimate is correct. It never is. The estimate carries model error, de-vigging error, and the possibility that the price was never really available — and full Kelly on an overestimated edge produces ruin rather than growth.
The practical response is to stake a fraction of what the formula says and treat the difference as the cost of not knowing how wrong the estimate is.
Stage 07 · Decision
BET, WAIT, and PASS are descriptions
BET
BETThe estimated edge clears the playable threshold and has held long enough to be treated as signal rather than noise.
WAIT
WAITThere is an apparent edge, but it is inside the uncertainty band, moving quickly, or resting on a single disagreeing book.
PASS
PASSNo edge survives de-vigging, or the market has already absorbed whatever the model saw.
WAIT is not a soft BET
WAIT means the row is being watched because something might resolve: the price may keep moving in the same direction, a second book may confirm the first, or an information event may land. It states that the evidence is not yet sufficient. It is not a suggestion to act at reduced size.
A WAIT row that never becomes a BET has not failed. Most of them should not become anything.
PASS is the normal outcome
Most markets, most of the time, are priced about right. A pipeline producing a steady stream of opportunities is either looking at bad data or grading itself generously. The count of PASS rows is published as prominently as the count of BET rows on every board on this site.
Measurement
Closing line value is the scoreboard, not profit
- Graded entries
- 33
- Record
- 9W-24L
- Paper units
- +2,417.5u
- Pre-game CLV
- +4.93%
All published
Paper only
Concentrated in a few winners
6/6 positive · 6 entries only
How CLV is computed here
CurrentBoth the entry price and the closing price are de-vigged first, then compared in fair-probability space. Comparing two prices that still carry different margins measures the margin, not the read.
Positive CLV means the market moved toward the side taken after it was taken. It says the read was ahead of the market at that moment. It does not say the bet won, and on this record most of them did not.
Read the sample size before the average
+4.93% average CLV across 6 pre-game entries is not a result. It is barely a hint, and it is entirely consistent with having no edge at all. It is published because a small honest number is better than waiting until the number flatters the project.
The in-play rows are excluded from that average. Their entry-to-close gaps are large, favourable-looking, and meaningless as a measure of price discovery, so they show n/a* rather than being counted.
Limits
What this method cannot see
Book of record is not captured
Known gapThe ledger schema has a book field and it is null on all 33 published rows, so every one of them renders as Not recorded. Without it, nobody can check whether an entry price was reachable at a book a normal account could use.
Model version is not captured
Known gapModel version is null on all 33 rows. The published record therefore cannot be split by what produced it, and no claim about improvement over time can be supported from it.
In-play entries carry no usable CLV
Known gap27 published rows were entered after first pitch. The gap between their entry and closing price measures innings elapsed rather than price discovery, so CLV on those rows is published as n/a* instead of as a number.
The pre-game sample is tiny
Known gapClosing line value is only meaningful on the 6 pre-game rows. That many readings cannot separate a real edge from luck, and the average across them carries that caveat everywhere it appears.
Limits and availability are unmeasured
Known gapNothing in the pipeline observes how much money a price would accept, or whether an account would be allowed to take it. A price that exists for one unit and a price that exists for a hundred are treated identically, which flatters the method.
Nothing has been staked
Known gapEvery published entry is paper. Paper never has a stake refused, never gets limited, and never misses a price by three seconds. The gap between paper and real is not estimated anywhere on this site.