Cycling race predictor · Tour of Istanbul

Stage 1 — 2026-09-03

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 103 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
sprint0.03
mountain0.08
hilly0.00
rolling0.68
break0.01
TT0.20
keyed: fast-finisher power day (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): Grisel Matys 15.3%; Jeannière Emilien 11.9%; Thierry Pierre 11.2%; Lonardi Giovanni 7.2%; Cuylits Mauro 5.7%

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) 99% — 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
Grisel MatysLOTTO INTERMARCHÉ15.3%n/a––
Jeannière EmilienTOTALENERGIES11.9%n/a––
Thierry PierreTOTALENERGIES11.2%n/a––
Lonardi GiovanniTEAM POLTI VISITMALTA7.2%n/a––
Cuylits MauroLOTTO - GROUPE WANTY5.7%n/a––
Slock LiamLOTTO INTERMARCHÉ4.9%n/a––
Le Berre MathisTOTALENERGIES4.4%n/a––
Fofonov ArtemXDS ASTANA DEVELOPMENT TEAM2.9%n/a––
Bagatin ChristianMBH BANK CSB TELECOM FORT2.9%n/a––
Vadic BaptisteTOTALENERGIES2.6%n/a––
Budzinski MarcinMBH BANK CSB TELECOM FORT2.4%n/a––
Serrano JavierTEAM POLTI VISITMALTA2.2%n/a––
Peñalver ManuelTEAM POLTI VISITMALTA2.2%n/a––
Balmer AlexandreSOLUTION TECH NIPPO RALI1.8%n/a––
Chesini CesareMBH BANK CSB TELECOM FORT1.4%n/a––
Regnanti MatteoSOLUTION TECH NIPPO RALI1.2%n/a––
Rysbay DiasXDS ASTANA DEVELOPMENT TEAM1.2%n/a––
Place MaxenceAARCO1.1%n/a––
Dauphin FlorianTOTALENERGIES1.0%n/a––
Hindsight (post-hoc) — oracle-matched references — top 30, all heads
#RiderBlendCascade LambdaRankPodiumTop 15 Book odds
1Grisel Matys15.3%8.8%17.0%27.9%70.0%n/a
2Jeannière Emilien11.9%11.7%12.0%34.1%69.1%n/a
3Thierry Pierre11.2%10.6%11.4%22.5%59.5%n/a
4Lonardi Giovanni7.2%9.2%6.7%25.5%64.9%n/a
5Cuylits Mauro5.7%7.7%5.2%18.7%47.7%n/a
6Slock Liam4.9%4.3%5.0%12.8%43.1%n/a
7Le Berre Mathis4.4%3.1%4.8%10.4%47.6%n/a
8Fofonov Artem2.9%2.9%3.0%9.6%44.4%n/a
9Bagatin Christian2.9%4.1%2.7%8.0%31.3%n/a
10Vadic Baptiste2.6%4.5%2.2%12.5%43.0%n/a
11Budzinski Marcin2.4%1.4%2.7%4.9%39.5%n/a
12Serrano Javier2.2%1.6%2.4%6.9%47.8%n/a
13Peñalver Manuel2.2%2.8%2.0%9.3%40.8%n/a
14Balmer Alexandre1.8%1.2%1.9%4.6%28.1%n/a
15Chesini Cesare1.4%1.6%1.4%5.3%34.1%n/a
16Regnanti Matteo1.2%0.9%1.3%4.0%33.8%n/a
17Rysbay Dias1.2%1.5%1.2%11.9%40.3%n/a
18Place Maxence1.1%1.5%1.0%3.6%22.6%n/a
19Dauphin Florian1.0%1.5%0.9%5.6%19.3%n/a
20Maestri Mirco0.9%2.4%0.6%4.0%24.7%n/a
21Shelton Noah0.9%2.0%0.6%13.7%43.9%n/a
22Wang Gustav0.8%1.2%0.7%2.8%30.7%n/a
23Nespoli Lorenzo0.7%0.8%0.6%2.0%16.4%n/a
24Doubey Fabien0.6%0.8%0.6%1.9%15.4%n/a
25Greenwell Samuel0.5%0.4%0.6%2.2%13.9%n/a
26Buratti Nicolò0.5%0.7%0.4%2.1%26.4%n/a
27Van Niekerk Emile0.4%0.3%0.5%1.3%13.1%n/a
28Girmay Mewael0.4%0.3%0.4%1.4%17.5%n/a
29Benito Adrián0.4%0.3%0.4%1.0%14.1%n/a
30Galbusera Pietro0.4%0.4%0.4%2.1%15.2%n/a

After the stage

Results — won by Vadic Baptiste

PosRiderTeamHindsight (post-hoc) win p
1Vadic BaptisteTOTALENERGIES2.6%
2Balmer AlexandreSOLUTION TECH NIPPO RALI1.8%
3Fofonov ArtemXDS ASTANA DEVELOPMENT TEAM2.9%
4Thierry PierreTOTALENERGIES11.2%
5Lonardi GiovanniTEAM POLTI VISITMALTA7.2%
6Dauphin FlorianTOTALENERGIES1.0%
7Negrente MattiaXDS ASTANA DEVELOPMENT TEAM0.2%
8Budzinski MarcinMBH BANK CSB TELECOM FORT2.4%
9Le Berre MathisTOTALENERGIES4.4%
10Serrano JavierTEAM POLTI VISITMALTA2.2%

Scenario scoring — probability given to the actual winner

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