Skip to content

Explore WCWins

Track 4 · Professional Research Lab · Lesson 20 of 24

Replicate a cross-bookmaker discrepancy study

Rebuild a consensus-versus-outlier betting rule in the style of Kaunitz, Zhong & Kreiner (preprint), then add quote timestamps, stake caps, account restrictions, fill rates and costs to see how a nominal edge erodes.

Learning objectives

  • Define a consensus probability from several bookmakers and a numerical outlier threshold.
  • Show that the nominal EV of an outlier equals its percentage distance above the fair consensus price.
  • Compute executed expected value under slippage, partial fills and costs.
  • State the replication status of the study accurately: preprint, code released, no published replication found.

The study in one paragraph

The idea needs no football model at all. Average many bookmakers' prices, treat that consensus as a probability estimate, and bet only when one bookmaker offers a price far enough above it. The appeal is that the market does the forecasting; the researcher only looks for a bookmaker that is out of line.

Defining consensus and an outlier

Every replication must make choices the original description leaves open, and each is a researcher degree of freedom. Write them down before looking at results:

  • Consensus statistic: mean or median of the odds, and whether the candidate bookmaker is excluded from its own consensus.
  • Margin treatment: de-vig the averaged three-way market (our choice here, proportional) or subtract a fixed margin.
  • Threshold θ: how far above the fair consensus price a quote must be before it counts as an outlier.
  • Timing: which quote snapshot is used, and how old it may be relative to the decision.
p̂ = devig(ō) bet if o_b × p̂ − 1 ≥ θ
ō: average odds per outcome across bookmakers; p̂: consensus fair probability; o_b: one bookmaker's quote. The left side is exactly the nominal EV if p̂ is the true probability.

The threshold matters more than it looks. In the worked example below, the averaged book carries a 4.86% overround and the fair consensus home price is 2.1795. The cut-off price is 2.2885 at θ = 5%, 2.3430 at 7.5%, 2.3975 at 10% and 2.4520 at 12.5%. A quote of 2.40 qualifies under the first three rules and fails the fourth. When many qualifying bets sit just above the line, small changes in θ change the sample — and trying several values of θ on the same data is a multiple-testing problem.

Notice what the rule assumes: that the consensus is close to the truth. If the outlier bookmaker moved first on genuine news (a late injury, a lineup leak), the consensus is stale and the outlier is the better forecast. A quote timestamp on every price is the only way to tell which is which.

From nominal edge to executed edge

A historical odds file shows prices; it does not show whether you could have taken them. Five frictions decide the executed edge: the quote age (an out-of-line price may be corrected before you can act), slippage (the price you get is worse than the one you saw), stake caps (the book accepts only part of the order), account restrictions (after a run of winning bets, limits shrink towards zero) and costs.

Executed EV per intended stake = fill × (p × o × (1 − s) − 1 − c)
fill: share of the intended stake accepted; s: slippage as a fraction of the odds; c: other costs per unit staked.
How a +10.12% nominal edge erodes (p = 45.88%, quoted odds 2.40; all frictions hypothetical)
ScenarioOdds obtainedFillCostEV per intended stake
As quoted2.400100%0%+10.12%
Stale quote, 4% slippage2.304100%0%+5.71%
…plus stake cap2.30450%0%+2.86%
…plus 1% costs2.30450%1%+2.36%
…plus account restriction2.30410%1%+0.47%
8% slippage, 50% fill2.20850%0%+0.65%

The edge vanishes entirely at 9.19% slippage (odds 2.18, the fair consensus price). Detection also gets harder: with a per-bet standard deviation of about 1.20 units, confirming a 10.12% edge at two standard errors takes about 537 bets, but the post-slippage 5.71% edge needs about 1,553 — far more bets than a restricted account may ever be allowed.

Replication status and how to read it

A good replication report therefore has two results: the nominal replication (does the published rule reproduce on the released data?) and the executed replication (what survives realistic quote ages, fills and costs?). Report both, and say plainly when the second rounds to zero. The broad survey evidence that wagering prices are, to a first approximation, efficient forecasts Sauer (1998) is the prior a replication has to overcome.

Worked example

Worked example · One outlier, from nominal to executed edge: Ashbridge v Millford

Seven hypothetical bookmakers quote home/draw/away: 2.10/3.40/3.60, 2.05/3.45/3.70, 2.12/3.30/3.55, 2.08/3.40/3.65, 2.06/3.50/3.60, 2.10/3.35/3.70 and 2.04/3.45/3.75. An eighth bookmaker offers 2.40 on Ashbridge. Pre-registered rule: proportional de-vig of the seven-book average, threshold θ = 7.5%.

  1. Average oddsMean of the seven quotes for each outcome2.0786 / 3.4071 / 3.6500
  2. Book sum1/2.0786 + 1/3.4071 + 1/3.65001.0486
  3. Consensus fair probabilitiesDivide each implied probability by 1.048645.88% / 27.99% / 26.13% (fair home odds 2.1795)
  4. Outlier testThreshold price 2.1795 × 1.075; compare 2.402.3430 needed; 2.40 qualifies (2.40 × 0.4588 − 1 = +10.12%)
  5. Per-bet risksd = √(p(o − 1)² + (1 − p) − EV²) at p = 0.4588, o = 2.401.196 units per unit staked
  6. Slippage 4%Odds 2.40 × 0.96 = 2.304; 0.4588 × 2.304 − 1+5.71%
  7. Fill 50%, costs 1%0.5 × (0.0571 − 0.01)+2.36% per intended stake
  8. Account restricted to 10% fill0.1 × (0.0571 − 0.01)+0.47% per intended stake

A quote 10% above fair consensus looks compelling on paper. After plausible frictions the expected value per intended stake falls to a fraction of a percent, and it relies on the consensus being right in the first place. The replication conclusion is "nominal edge reproduced, executed edge not demonstrated" — a perfectly respectable finding.

Practice · Stress-test the outlier with an uncertainty band

In the Fair odds and EV lab, enter odds 2.40 with estimate 45.88% and a band of 43.88%–47.88% (consensus ± 2 points). Then change the odds to 2.304 (4% slippage) and 2.208 (8% slippage). At which price does the verdict stop being positive across the range?

Lab 1 · Fair odds and expected value

Synthetic · deterministic
Enter a decimal price and your probability estimate, with an honest range for how wrong it could be.
Break-even probability41.67%
Theoretical EV at estimate+10.2%
EV at range low+5.4%
EV at range high+15.0%
Fair odds of estimate2.179
Probability edge4.23 pts
Full Kelly (estimate)7.26%
Full Kelly (range low)3.83%

Positive across your range. Even the low end of your range clears break-even. Under these assumptions the price looks favourable — but the range itself is an assumption, and margins, execution and correlated exposure can still remove the edge.

Expected value against the true probabilityExpected ROI per unit staked at odds 2.40 if the true probability were each value on the horizontal axis. EV crosses zero at the break-even probability, 41.67%.-20%0%20%35%40%45%50%55%True probability (%)Expected ROI (%)Break-even
Expected ROI per unit staked at odds 2.40 if the true probability were each value on the horizontal axis. EV crosses zero at the break-even probability, 41.67%.
Show data table
True probability (%)Expected ROI
33%-21%
34%-18%
35%-16%
36%-14%
37%-11%
38%-9%
39%-6%
40%-4%
41%-2%
42%1%
43%3%
44%6%
45%8%
46%10%
47%13%
48%15%
49%18%
50%20%
51%22%
52%25%
53%27%
54%30%
55%32%
56%34%
57%37%
58%39%

Educational calculator. Uses only the numbers you enter or seeded synthetic data — no live prices, no staking, no real money.

Show what you should find

At 2.40: break-even 41.67%, EV +10.11% at the estimate, +5.31% to +14.91% across the band — positive across the range. At 2.304: break-even 43.40%, EV +5.71%, +1.10% to +10.32% — still positive, but only just at the low end. At 2.208: break-even 45.29%, EV +1.30%, −3.11% to +5.72% — the verdict now depends on the estimate. Moderate slippage alone is enough to turn a clear-looking edge into an uncertain one.

Common mistakes

  • ✗ Including the outlier bookmaker in its own consensus.Decide in advance; including it pulls the average towards the outlier (here the home average would rise from 2.0786 to 2.1188) and changes which bets qualify.
  • ✗ Assuming every historical quote was available at the recorded time.Require a capture timestamp and a maximum quote age; an out-of-line price may be gone before an order reaches the bookmaker.
  • ✗ Quoting the preprint's returns as established fact.Kaunitz, Zhong & Kreiner (2017) is a preprint with a short live trial. Say what it reports, not what it proves, and note that no published replication was found.
  • ✗ Treating account restrictions as bad luck rather than data.Restrictions cap the total stake an edge can absorb. Model them as a fill rate that falls with success.

When it fails

Supporting research

Check your understanding

1. Fair consensus home odds are 2.1795 and one bookmaker offers 2.40. If the consensus probability is right, what is the nominal EV?
2. With 4% slippage, a 50% fill and 1% costs, what is the EV per intended stake?
3. Which statement about the replication status of Kaunitz, Zhong & Kreiner is accurate?

Practice only: saved on this device, no XP and no account record.

Saved on this device only.
Replicate a cross-bookmaker discrepancy study · Value Academy · WCWins