Cycling race predictor Β· Okolo Slovenska

Stage 2 β€” 2026-09-17

The same production stack priced under 1 course readings, against the bookmaker's pre-stage line. Each scenario is one opinion about what kind of day this is; the results section settles the argument.

1 scenarios 121 riders priced models retrained d911de60f7 book snapshot no capture

The fork

1 readings of the same road

Course profile is an input the model can't see from a map β€” it's set from reference races (or overridden by hand). Different readings redistribute the same probability mass across rider types.

Hindsight (post-hoc)

Hindsight (post-hoc) β€” oracle-matched references
sprint1.00
mountain0.00
hilly0.00
rolling0.00
break0.00
TT0.00
keyed: bunch sprint (board order by rider-type retrieval; prices unchanged)
RETROSPECTIVE ONLY β€” no pre-race prediction was made. This board uses the settled result as the oracle and the nearest historical realized race shapes. It is corpus completion, not evidence of forecasting skill.
Top 5 (blend): Magnier Paul 75.0%; Milan Matteo 4.7%; Stolic Mihajlo 1.6%; Biermans Jenthe 0.9%; Walls Matthew 0.9%

The board

Win probabilities, scenario by scenario

Blend win probability per scenario (cascade Γ— LambdaRank, DNF-adjusted at the pricing layer), next to the devigged Kambi (Unibet) win line captured the morning before the stage. "Max edge" compares the most favourable scenario against the book β€” treat it as scenario-conditional, not a free bet.

Read "Max edge" as directional, not as a price. The blend is a set of per-rider marginals and does not sum to one book β€” across this field each reading totals Hindsight (post-hoc) 88% β€” while the devigged book column sums to exactly 100%. Putting the two side by side flatters the model, and Max edge is inflated by about that factor: divide a rider's probability by his reading's total before calling anything an edge. Of our heads only the LambdaRank one is natively book-preserving.

RiderTeamHindsight (post-hoc)Book oddsBook devigMax edge
Magnier PaulSoudal Quick-Step75.0%n/a––
Milan MatteoGroupama-FDJ United4.7%n/a––
Stolic MihajloBahrain Victorious Development Team1.6%n/a––
Hindsight (post-hoc) β€” oracle-matched references β€” top 30, all heads
#RiderBlendCascade LambdaRankPodiumTop 15 Book odds
1Magnier Paul75.0%60.6%88.4%76.2%89.7%n/a
2Milan Matteo4.7%8.7%4.4%27.3%69.1%n/a
3Stolic Mihajlo1.6%2.0%1.8%8.1%43.8%n/a
4Biermans Jenthe0.9%3.3%0.4%12.4%53.9%n/a
5Walls Matthew0.9%1.1%0.9%3.6%33.3%n/a
6Bittman Adam0.8%1.1%0.8%4.1%45.4%n/a
7Capra Thomas0.4%1.1%0.2%5.2%46.3%n/a
8Neuman Dominik0.4%0.6%0.3%4.2%54.8%n/a
9Barthe Cyril0.3%0.5%0.3%3.4%30.6%n/a
10KΓ€llberg Axel0.2%0.7%0.1%4.3%45.0%n/a
11Ridolfo Filippo0.2%0.5%0.2%3.1%38.1%n/a
12Fortin Filippo0.2%0.6%0.1%5.8%39.0%n/a
13Villa Giacomo0.2%0.5%0.1%3.8%46.8%n/a
14Bravo Henrique0.2%0.3%0.2%1.6%16.1%n/a
15Agnoletto Blake0.2%0.4%0.1%2.9%22.2%n/a
16Ilski Szymon0.1%0.6%0.0%0.9%14.3%n/a
17Greenwell Samuel0.1%0.3%0.1%1.0%16.1%n/a
18Consolidani Leonardo0.1%0.4%0.1%3.6%29.6%n/a
19Terrier Lucas0.1%0.4%0.1%3.3%34.3%n/a
20Dubois Yann0.1%0.4%0.0%3.6%28.0%n/a
21Quadriglia Davide0.1%0.4%0.0%0.7%12.4%n/a
22Slock Liam0.1%0.2%0.1%1.6%11.9%n/a
23van Gestel Dries0.1%0.1%0.1%1.5%10.5%n/a
24Vanicek Simon0.1%0.2%0.1%0.6%12.2%n/a
25Drakos Nikolaos0.1%0.1%0.1%1.3%19.1%n/a
26Novak Samuel0.1%0.1%0.1%0.9%19.7%n/a
27Kjeldsand Karl Emil0.1%0.1%0.0%0.4%9.6%n/a
28Kull Robin0.1%0.1%0.1%0.3%13.2%n/a
29Stravers Jarri0.1%0.2%0.0%0.4%16.9%n/a
30Ginter Nicolas0.0%0.1%0.0%0.5%7.2%n/a

After the stage

Results β€” won by Magnier Paul

PosRiderTeamHindsight (post-hoc) win p
1Magnier PaulSoudal Quick-Step75.0%
2Capra ThomasBahrain Victorious Development Team0.4%
3Vanicek SimonATT Investments0.1%
4Biermans JentheCofidis0.9%
5Neuman DominikATT Investments0.4%
6Ilski SzymonVoster Team0.1%
7Milan MatteoGroupama-FDJ United4.7%
8Verhoeff StefanUniverse Cycling Team0.0%
9Granberg SanderTeam Drali-Repsol0.0%
10Villa GiacomoBiesse-Carrera Premac0.2%

Scenario scoring β€” probability given to the actual winner

ScenarioBlend win pBook devig
Hindsight (post-hoc)74.98%–