How the model earns a bet.
What we price. What turns a prediction into a play. How we tested it. And the claims we refuse to make.
Walk-forward backtest (all systems — one walk-forward portfolio), 2023–2026 · profitable every year · tracked live from UFC 329.
The 60-second version
01Price the fight
The model prices every fight three ways — who wins, how it ends, and when.
02Compare fair numbers
The model's probability is compared against the market's price with the bookmaker's margin removed.
03Freeze official plays
When the disagreement qualifies under fixed rules, the play is frozen and its fingerprint is published before the card.
04Grade everything
After the fights, every prediction and every play is graded in public — wins and losses alike.
| Prediction | Official play |
|---|---|
| Every fight on the card | Only markets that qualify under the frozen rules |
| Free — the model's win, method, and round probabilities | Priced — a specific bet at a captured price |
| Public all fight week | Frozen before the card, revealed after it |
| Graded for calibration — do the percentages tell the truth? | Graded in the public ledger — win or lose, in units |
What we price
A winner is only one slice of the fight. We price who wins, how it ends (KO/TKO, submission, decision), and when it ends (round by round). Every chart on the site comes from that same distribution: the win-probability bars, the method-by-round grid, the survival curve, the finish forecast.
Predictions are the product, and predictions can't be front-run — which is why they're free.
Where a prediction becomes a bet
The pick is not the bet. The price decides. We compare the calibrated model number with a no-vig market number — the fight's fair price. When the disagreement is strong enough under the fixed rules, it becomes an official play.
The exact selection rules stay private because teaching the market how to erase the edge would be bad business. What you can always see is the output: the calibrated number, the price, and — after every card — the grade.
How we tried to break it
Every model looks smart when it can peek backward. Ours had to bet forward. Train on the past. Price fights it had not seen. Record the result. Move the window. Repeat — across 2023–2026. No look-ahead: every input is timestamped before the fight, and every bet is graded at a price that actually existed. Staking in the backtest follows the same fixed policy the live ledger uses.
Here is the shape of one walk-forward step, with invented fighters and invented numbers — an illustration, not a row from the backtest. Train the model on every fight through December 2023. In January 2024, Okafor fights Briggs. The model — knowing nothing after 2023 — makes Briggs 45% to win; the fair market number that week was 38%. The backtest bets Briggs at a price that actually existed at the time, +160. Briggs loses by decision. The bet is graded −1 unit, recorded, done — no do-overs. The window moves forward, the fight joins the training data, and the next step repeats the whole thing. No step is ever allowed to know anything from its own future.
| Year | At $100/unit | ROI | Bets |
|---|---|---|---|
| 2023 | +$15,563 | +27.6% | 555 |
| 2024 | +$18,275 | +30.3% | 597 |
| 2025 | +$13,029 | +23.6% | 543 |
| 2026 | +$3,297 | +15.9% | 207 |
Across 1,902 bets that's +26% ROI, +501.64 units — +$50,164 at $100 per unit, scaled to whatever your unit is — with a 95% confidence interval on ROI of +21.3% to +30.6%. The interval is wide on purpose — 1,902 bets is a real sample, not an infinite one, and we'd rather show you the uncertainty than hide it. The full year-by-year breakdown, equity curve, and losing streaks live on the track record page.
How we stop ourselves cheating
Before the first fight, the plays are fixed into one file and that file's SHA-256 fingerprint is published. After the card, the file is revealed — anyone can re-hash it and verify that the picks did not change. Nothing gets edited, back-dated, or quietly forgotten. If it loses, it stays in the ledger.
UFC 329 plays were recorded as qualifying prices appeared during fight week, then included in one card-wide commitment before the first fight. Two checks cover different claims: public line history can verify that each quoted price existed on the operator-recorded capture day, while the published hash proves the complete card cannot be changed after commitment — the hash does not independently timestamp the earlier selections. This first-card gap is wider because public commitment tracking began at launch; future cards will shorten the gap between capture and public commitment.
After the event, every play is graded from captured price to close under the same protocol as the backtest, with any correction appended rather than silently edited. The running ledger lives on the track record page.
What makes a play official
If it is not frozen before the card, it is not a play. If it is not in the ledger, it is not in the record. Official plays come only from markets where the system is validated end-to-end; everything else on this site — every other edge readout, model number, and market row — is model reference: interesting, public, and explicitly not a bet.
How we size risk
Stakes follow a policy set before the result is known. No chasing. No doubling after a loss. No gut override because a fighter looked good at weigh-ins. The backtest and live ledger follow the same frozen policy.
Variance is part of the deal — losing runs happened in the backtest and more will happen live. A system you can't sit through is a system you don't have.
What we will not claim
A backtest is evidence. It is not live profit and it is not a promise. Some cards will lose. Some stretches will be ugly. We publish the uncertainty and the losing streaks because hiding them would make the rest of the record worthless. Nothing on this site is betting advice.
Known limitations
- Backtest is not live. Every profit number above is walk-forward backtest evidence. Live, public tracking starts with UFC 329 on the track record page.
- Variance is real. Losing cards, losing months, and long losing streaks are expected even when an edge is real.
- Prices move. Every captured price is timestamped; the price at your book may already be different, and a worse price can erase an edge entirely.
- Fighter data is imperfect. Short records, long layoffs, and late replacements make some inputs thin or stale — those fights carry more uncertainty than the bars alone suggest.
- No guarantee. A validated backtest is evidence, not a promise of future profit. Nothing on this site is betting advice.
Glossary
- Units
- A bet-size currency that ignores bankroll size: 1 unit = one standard flat stake. Winning +1.5u at +150 means a 1-unit bet returned 1.5 units of profit. Records in units are comparable across bettors and across time.
- CLV — closing line value
- How much better the price you took was than the market's final (closing) price, in probability points. Beating the close consistently is the strongest single sign a bettor has real edge rather than luck — it shows up long before profit does.
- Calibrated edge
- The gap between our model's probability and the fair market probability, after the model's raw output has been corrected against its own historical over- and under-confidence. We display only the calibrated number — raw model edges flatter themselves.
- Anchored (and the ~ mark)
- An edge is anchored when a sharp two-way market existed to measure it against. Thin, one-book markets have no such anchor — those edges render muted with a ~ and should be treated as unverified.
- Fair price
- What the odds would be with the bookmaker's margin (the vig) removed. Comparing a model to raw posted prices double-counts that margin; every edge on this site is measured fair-vs-fair.
New to betting on fights? Start with the UFC betting primer — odds, fair prices, units, and CLV, from zero.