Liquidity, execution, limits and costs
Turn a theoretical edge into a realised one by accounting for partial fills, slippage, latency, commission and stake limits — and see why hypothetical backtest profits overstate what real markets deliver.
Learning objectives
- Convert a theoretical EV into an executed EV using fill rate, slippage and costs.
- Compute the break-even slippage for a given probability and quoted price.
- Compute the effect of commission on net odds and EV.
- Explain why backtests that ignore limits and account restrictions overstate returns, citing Kaunitz et al. and Simon (2024) within what they show.
The price you see is not the price you get
A backtest usually records one price per pick and assumes the full intended stake was placed there. Real execution is messier. Lesson 6, Quoted vs Executable Prices, introduced the gap; here we price it.
- Liquidity: how much can be staked at a price before it moves or the offer runs out.
- Latency: prices move between the moment you see them and the moment an order lands.
- Cancellations and rejections: an order can be refused, re-priced or partly accepted.
- Maximum stakes and account limits: a bookmaker can cap a stake per market or restrict an account altogether.
- Fees and commission: exchanges typically charge commission on net winnings; payment costs also eat returns.
Each friction is small on its own. The problem is that betting edges are small too.
Frictions can be measured rather than guessed. For every simulated or paper pick, log four things: the quoted price and its timestamp, the price at which the order would actually have been matched, the stake intended and the stake accepted. Realised slippage is then the average gap between quoted and executed odds, and the realised fill rate is accepted stake over intended stake. Those two numbers, not the quoted price, belong in any claim about an edge.
Executed expected value
EV_exec = fill × (p × o × (1 − s) − 1 − c)| Fill rate | Slippage | Executed odds | EV per intended unit |
|---|---|---|---|
| 100% | 0% | 2.00 | +4.00% |
| 100% | 2% | 1.96 | +1.92% |
| 50% | 2% | 1.96 | +0.96% |
| 100% | 5% | 1.90 | −1.20% |
| 50% | 5% | 1.90 | −0.60% |
Break-even slippage s* = 1 − 1 / (p × o)A 4% paper edge disappears once the executed price is 3.85% worse than the quote. Latency alone can do it: if the price moves from 2.00 to 1.92 before the order lands, EV becomes 0.52 × 1.92 − 1 = −0.16%.
Thin edges also take longer to verify. With a per-pick standard deviation of about 1.0, a 4% edge needs roughly 2,398 picks to sit two standard errors from zero (the bets-needed estimate); a 1.92% executed edge needs about 9,993.
Commission and stake limits
Net odds = 1 + (o − 1) × (1 − commission)At 2.00 with p = 0.52, a 2% commission gives net odds 1.98 and EV +2.96% — about a quarter of the edge gone. At 5% commission the net odds are 1.95 and EV falls to +1.40%.
Limits cut the absolute return even when the percentage edge survives. If you intend 10 units at +4% (expected profit 0.40) but the maximum accepted stake is 3, the expected profit is 0.12 units. A backtest that keeps the intended stake overstates profit by more than three times.
Account-level restrictions are worse than per-market caps because they end the experiment. If an account is limited after a few hundred picks, the thousands of picks needed to verify a thin edge can never be placed, and the record that remains is too short to separate skill from luck.
What the research says about limits
Worked example
Worked example · From paper edge to executed edge
Your model gives Glenrock 52% to beat Ferrybank. A hypothetical quote of 2.00 is on screen, and you intend to stake 10 units of a simulated bankroll. By the time your order lands, the price has slipped 2% and only half the stake is accepted.
- Theoretical EV
0.52 × 2.00 − 1+4.00% → expected profit 0.40 units on 10 - Executed price
2.00 × (1 − 0.02)1.96 - EV at the executed price
0.52 × 1.96 − 1+1.92% - Partial fill
5 units × 0.0192 = 0.096; executed EV(fill 0.5, slippage 0.02)+0.96% per intended unit - Share of the paper edge kept
0.96% / 4.00%24% - Break-even slippage
1 − 1 / (0.52 × 2.00)3.85% (odds 1.923) - If slippage were 5%
0.52 × 1.90 − 1−1.20% per unit filled
Under realistic friction the executed edge is about a quarter of the paper edge, and a slightly worse fill makes it negative. A strategy should be judged on executed EV, with its own uncertainty, not on the quoted price.
Practice · Enter the executed price, not the quote
Open the Fair Odds and EV lab with the preset (odds 1.96 — the executed price after 2% slippage — estimate 52%, interval 50%–54%). Read the verdict. Then compare with what the same interval gives at the quoted 2.00.
Lab 1 · Fair odds and expected value
Synthetic · deterministicNo clear advantage. Your range straddles break-even. Whether the bet has value depends on which end of your estimate is right, so there is no clear advantage. A careful analyst treats this as a pass unless better evidence narrows the range.
Show data table
| True probability (%) | Expected ROI |
|---|---|
| 40% | -22% |
| 41% | -20% |
| 42% | -18% |
| 43% | -16% |
| 44% | -14% |
| 45% | -12% |
| 46% | -10% |
| 47% | -8% |
| 48% | -6% |
| 49% | -4% |
| 50% | -2% |
| 51% | -0% |
| 52% | 2% |
| 53% | 4% |
| 54% | 6% |
| 55% | 8% |
| 56% | 10% |
| 57% | 12% |
| 58% | 14% |
| 59% | 16% |
| 60% | 18% |
| 61% | 20% |
| 62% | 22% |
| 63% | 23% |
| 64% | 25% |
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 1.96 the break-even is 51.02%. EV is −2.00% at 50%, +1.92% at 52% and +5.84% at 54%: the verdict depends on the estimate, so the robust decision is no action. At the quoted 2.00 the same interval gives 0.00% at the low end, +4.00% at the estimate and +8.00% at the high end — still not positive across the range, because the low end is exactly break-even. Execution turned a borderline case into a clear pass.
Common mistakes
- ✗ Backtesting at the best price recorded across many bookmakers.You could not have taken every best price at full stake, and some recorded prices are stale or erroneous. Model fills, slippage and limits explicitly.
- ✗ Ignoring commission because it is ‘only 2%’.At p = 0.52 and odds 2.00, 2% commission cut EV from +4.00% to +2.96%, about 26% of the edge.
- ✗ Assuming the intended stake is the executed stake.Limits and partial fills scale profit down: 3 accepted units of an intended 10 cut expected profit from 0.40 to 0.12.
- ✗ Reading hypothetical profits as achievable profits.Simon (2024) reports hypothetical profits that ignore limits and latency, and Kaunitz et al. report account restrictions during their trial.
When it fails
Supporting research
- Kaunitz, Zhong & Kreiner (2017): Beating the bookies with their own numbers – and how the online sports betting market is riggedarXiv preprint · Preprint · not peer reviewedAuthors report bookmakers restricted their accounts during a short real-money trial (preprint).
- Simon (2024): Inefficient Forecasts at the Sportsbook: An Analysis of Real-Time Betting Line MovementManagement Science · Peer-reviewed empiricalSignificant hypothetical profits in MLB line-movement strategies that ignore limits, latency and stake restrictions.
- Clegg & Cartlidge (2025): Not feeling the buzz: Correction study of mispricing and inefficiency in online sportsbooksInternational Journal of Forecasting · Peer-reviewed replicationA published profit depended on an erroneously recorded price; recorded prices are not proof of availability.
Check your understanding
Practice only: saved on this device, no XP and no account record.
