← Back to AFL Player Disposals
SportPunter · AFL Player Disposals

Methodology and Limitations

How selections are generated, how every figure is calculated, and everything we know that could make the published numbers look better than the strategy really is.


How a selection is generated

Before each match the model produces, for every player in the named side, the probability of exceeding each disposal threshold from 10 through 35. That gives a modelled price for both sides of any line the bookmaker posts. We then read Sportsbet's player-disposals over/under market and pair each posted line with the matching model probability.

edge (overlay) = model probability of the selected side × price − 1

A bet is issued when edge ≥ 0.20 on either side of the line. Nothing else is applied on top: one bookmaker (Sportsbet), one market (player disposals over/under), one threshold. Every selection meeting the fixed live rule from Round 11 onward is included in the published figures, winners and losers alike.

Two conditions of the live rule are worth stating explicitly: the player must have at least 25 career games, and the full over/under market must be posted — a price is never derived from a one-sided market.

The stored model output is the probability of exceeding the threshold; the probability for the other side of the line is its complement. The conversion was verified against the archived probability grid across all 1,452 historical bets (maximum difference 2.2 × 10⁻¹⁶, i.e. floating-point noise only).

$1,000 Full Kelly staking

stake = $1,000 × edge ÷ (price − 1) profit = win → stake × (price − 1) loss → − stake void → 0 POT = 100 × total profit ÷ total staked

Each bet is sized independently against a notional $1,000 bank. There is no compounding — we do not grow or shrink the bank as results come in, because doing so would make the headline depend on the order the bets happened to arrive.

Full Kelly is aggressive, and deliberately unsmoothed

Across the record the mean stake is $387 — 38.7% of the bank — and the largest single stake is $754, or 75.4% of it. The longest run of consecutive losers is nine. Staked literally at these sizes, that sequence would be close to ruin.

Full Kelly maximises long-run growth only if the probabilities are correct. Ours are not (see calibration below), which means these stakes are larger than the true edge justifies. We report at full Kelly so nothing is smoothed, but most subscribers should stake a fraction of these amounts.

Backtest versus live — the two periods are not identical

Component2023–2025 backtest2026 liveSame?
BookmakerSportsbetSportsbetYes
MarketPlayer disposals, over/underPlayer disposals, over/underYes
Minimum edge20%20%Yes
Staking (as reported)$1,000 Full Kelly$1,000 Full KellyYes
Price captured15 minutes before the first bounceat alert time on the morning of the gameNo
Minimum career gamesnone25No
Probability modelas at December 2025production model, refitted during 2026No
Bets actually placedNo — simulatedAlerted before each matchNo

Price-capture timing

The backtest prices come from archived market snapshots taken 15 minutes before each first bounce — a late, well-tested market. The 2026 live selections take whatever Sportsbet is showing when the alert is sent on the morning of the game: 75% before noon, median send time 9am, with a small tail of afternoon and evening re-runs. A morning price is younger and less tested than a price taken 15 minutes out, so the two periods are not strictly like-for-like. This is one of the reasons we report them separately rather than as a single continuous run.

The combined figure

The combined 1,649-bet total is an arithmetic sum of a backtest and a live record. It is labelled that way everywhere it appears and should never be described as a live result: 1,452 of the 1,649 bets — and 90% of the turnover — were never placed.

The one difference that can be harmonised is the games filter. Applying the live rule's ≥25-career-games requirement to the historical set drops 170 bets and gives 1,282 bets, $487,462.60 staked, +$26,206.86, POT +5.38% — 1.48 points below the unharmonised backtest figure. The price-timing difference cannot be removed, because no 15-minute market snapshot was archived for 2026.

The backtest is in-sample

The most important limitation on this page

The logistic models used to price the 2023–2025 seasons were fitted on data that included those seasons. The individual features are clean — every rolling average excludes the player's current game, so no result feeds its own prediction — but the coefficients that weight those features were estimated using outcomes from the very matches being scored. The 20% threshold was also chosen after examining a table that ranked thresholds on the same rows.

That makes the 2023–2025 figures an optimistic guide, not an independent test. It is the single strongest reason to weight the 2026 live record more heavily, and the reason we lead with it.

What the backtest does get right: the prices are genuine archived Sportsbet quotes, not estimates; the results are real disposal counts; and the same process tested the over side of the market and rejected it, which is a real falsification test the strategy passed.

2026 Rounds 1–10 are excluded

The live figures begin at Round 11. Here is exactly why, round by round.

RdAlert system running?Sportsbet market posted?Alerts issuedModel probability archived?Included
1–6No — not yet builtYes0NoNo
7YesYes44NoNo
8YesYes46NoNo
9YesYes24NoNo
10YesYes25Reconstructed after the roundNo
11–25YesYes208Yes — archived before each round197

The alert system was first run on 23 April 2026, which is Round 7 — so Rounds 1–6 contain no missing bets, only bets that were never generated. Rounds 7–9 produced 114 real alerts with real prices and real results, but our probability archive does not start until Round 10, so we cannot prove what the model said at the time. Round 10's probability file was rebuilt three days after that round finished, which is not good enough for a live claim.

What this does and does not mean

Those 139 selections are excluded entirely — not counted as winners, not counted as losers, and not implied to be either. We do not know whether including them would improve or worsen the live figure, and we make no claim about it. Rather than reconstruct probabilities after the fact and present them as live, we leave the rounds out.

Probability calibration

Our stated probabilities are systematically too high. Across the record the model forecasts an average strike rate of 71.5% for the side it selected, and the realised rate is 57.6%.

Model said its side would land…BetsPredictedActualGap
60% – 65% of the time20263.63%59.41%4.22 pts
65% – 70%62867.43%55.25%12.18 pts
70% – 75%42472.30%59.91%12.40 pts
75%+39581.03%57.72%23.31 pts

The strategy is still profitable because the model does not need to be exactly right — it only needs to be closer than the price. Break-even at the average price of 1.870 is 53.5%, and the realised rate of 57.6% clears it by four points.

Two consequences follow, and both matter to a subscriber. First, the stated probabilities should be read as a ranking signal, not as literal chances. Second, because Kelly sizing is driven by the stated edge, Full Kelly stakes are larger than the true edge justifies — the calibration error inflates them.

Statistical confidence

Ten thousand bootstrap replications, resampling whole matches so that bets from the same game move together.

PeriodBetsMatch clustersPOT95% intervalAbove break-even in
2023–2025 backtest1,452473+6.86%+2.02% to +11.72%99.7% of replications
2026 live19777+15.64%+1.46% to +29.77%98.5% of replications

These intervals describe sampling variation within the bets we observed. They do not account for the in-sample fit of the backtest, the calibration error, the missing 2026 rounds, or any change in how Sportsbet prices this market in future.

Get the selections before the bounce

Members receive every qualifying disposal selection — player, line, side, price and edge — pushed the morning of the game. The rule does not change between subscribers.

Join SportPunter for free — 14 days, cancel anytime

← Back to AFL Player Disposals  ·  View detailed results →