Cycling race predictor · one-day race

Kamp. van Vlaanderen (no prediction made) settled

One day, one result: the production stack priced the whole field under 1 course reading, against the market's line where one was captured. A one-day race is its own best reference — the main reading is built from this race's own recent editions.

Raced 18 September 2026 1 reading 161 riders priced models retrained 75c6e7af51 market snapshot no capture

The fork

1 reading of the same road

Course profile is an input the model cannot see from a map — it is set from reference races. The main reading averages this race's own last editions, so the terrain and the kind of rider it selects come from the race's own history; any alternate reading swaps in an archetype set to ask what a different day would do to the same field.

Hindsight (post-hoc)

Hindsight (post-hoc) — oracle-matched references
sprint0.22
mountain0.01
hilly0.75
rolling0.01
break0.01
TT0.00
References: GP d'Isbergues (2021); Clasica de Almeria (2026); Gooikse Pijl (2022); GP d'Isbergues (2022); Elfstedenronde (2025)
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): Philipsen Jasper 34.4%; Merlier Tim 30.5%; Groenewegen Dylan 6.9%; Wærenskjold Søren 6.2%; de Kleijn Arvid 5.7%

The board

Win probabilities across the heads

Blend is the production price (cascade × LambdaRank, DNF-adjusted at the pricing layer); Cascade and LambdaRank are the two underlying heads shown for the main reading. The market columns are the devigged win line, present as the information benchmark the model is scored against.

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 130% — while the devigged market column sums to exactly 100%. Putting the two side by side flatters the model, and Max edge is inflated by about that factor. Of our heads only the LambdaRank one is natively book-preserving.

RiderTeamBlendCascadeLambdaRankMarket oddsMarket devigMax edge
Philipsen JasperALPECIN-PREMIER TECH34.4%31.2%27.2%n/a––
Merlier TimSOUDAL QUICK-STEP30.5%37.7%21.6%n/a––
Groenewegen DylanUNIBET ROSE ROCKETS6.9%8.9%4.8%n/a––
Wærenskjold SørenUNO-X MOBILITY6.2%6.8%4.6%n/a––
de Kleijn ArvidTUDOR PRO CYCLING TEAM5.7%6.6%4.1%n/a––
van Poppel DannyRED BULL - BORA - HANSGROHE4.3%2.5%3.8%n/a––
Teutenberg Tim TornLIDL-TREK3.8%2.4%3.3%n/a––
Lamperti LukeEF EDUCATION - EASYPOST3.7%2.4%3.2%n/a––
Kogut OdedNSN CYCLING TEAM3.2%2.1%2.7%n/a––
De Schuyteneer SteffenLOTTO INTERMARCHÉ3.0%2.5%2.4%n/a––
Ackermann PascalTEAM JAYCO ALULA2.4%1.8%2.0%n/a––
Marit ArneRED BULL - BORA - HANSGROHE2.1%1.0%1.9%n/a––
Aniolkowski StanislawCOFIDIS1.9%1.6%1.6%n/a––
Tesson JasonTOTALENERGIES1.8%3.0%1.1%n/a––
Moschetti MatteoPINARELLO-Q36.5 PRO CYCLING TEAM1.7%1.5%1.4%n/a––
Donati DavideRED BULL - BORA - HANSGROHE ROOKIES1.7%2.1%1.2%n/a––
Biesterbos FritsTEAM PICNIC POSTNL1.5%0.9%1.3%n/a––
Hobbs NoahEF EDUCATION - EASYPOST1.4%2.0%0.9%n/a––
Bauhaus PhilBAHRAIN VICTORIOUS1.2%1.6%0.8%n/a––
Bennett SamPINARELLO-Q36.5 PRO CYCLING TEAM1.1%1.8%0.7%n/a––
Plowright JensenALPECIN-PREMIER TECH1.0%0.6%0.9%n/a––
Mihkels MadisEF EDUCATION - EASYPOST1.0%0.8%0.8%n/a––
Hindsight (post-hoc) — oracle-matched references — top 30, all heads
#RiderBlendCascade LambdaRankPodiumTop 15 Market odds
1Philipsen Jasper34.4%31.2%27.2%53.6%79.2%n/a
2Merlier Tim30.5%37.7%21.6%58.1%80.0%n/a
3Groenewegen Dylan6.9%8.9%4.8%23.7%61.0%n/a
4Wærenskjold Søren6.2%6.8%4.6%19.8%55.8%n/a
5de Kleijn Arvid5.7%6.6%4.1%21.6%58.2%n/a
6van Poppel Danny4.3%2.5%3.8%10.8%53.4%n/a
7Teutenberg Tim Torn3.8%2.4%3.3%10.4%43.4%n/a
8Lamperti Luke3.7%2.4%3.2%8.5%41.9%n/a
9Kogut Oded3.2%2.1%2.7%10.5%43.0%n/a
10De Schuyteneer Steffen3.0%2.5%2.4%10.0%44.6%n/a
11Ackermann Pascal2.4%1.8%2.0%7.7%39.4%n/a
12Marit Arne2.1%1.0%1.9%6.9%48.5%n/a
13Aniolkowski Stanislaw1.9%1.6%1.6%8.6%53.5%n/a
14Tesson Jason1.8%3.0%1.1%6.5%56.9%n/a
15Moschetti Matteo1.7%1.5%1.4%7.8%51.7%n/a
16Donati Davide1.7%2.1%1.2%8.5%38.6%n/a
17Biesterbos Frits1.5%0.9%1.3%4.8%52.2%n/a
18Hobbs Noah1.4%2.0%0.9%9.2%43.2%n/a
19Bauhaus Phil1.2%1.6%0.8%6.4%35.4%n/a
20Bennett Sam1.1%1.8%0.7%5.4%26.2%n/a
21Plowright Jensen1.0%0.6%0.9%5.3%29.6%n/a
22Mihkels Madis1.0%0.8%0.8%6.3%36.2%n/a
23Dekker David0.9%0.4%0.8%4.3%43.8%n/a
24Magagnotti Alessio0.8%1.6%0.4%6.3%27.9%n/a
25Donaldson Robert0.6%0.3%0.5%2.4%17.9%n/a
26Foldager Anders0.6%0.5%0.5%4.8%31.3%n/a
27Müller Tobias0.5%0.4%0.4%3.7%26.0%n/a
28Dupont Timothy0.5%0.2%0.4%3.8%30.7%n/a
29Bevort Carl-Frederik0.4%0.3%0.3%3.8%28.8%n/a
30Taminiaux Lionel0.3%0.1%0.3%2.0%13.4%n/a

After the race

Result — won by Merlier Tim

PosRiderTeamHindsight (post-hoc) win p
1Merlier TimSOUDAL QUICK-STEP30.5%
2Groenewegen DylanUNIBET ROSE ROCKETS6.9%
3Wærenskjold SørenUNO-X MOBILITY6.2%
4de Kleijn ArvidTUDOR PRO CYCLING TEAM5.7%
5Philipsen JasperALPECIN-PREMIER TECH34.4%
6Allegaert PietCOFIDIS0.0%
7Biesterbos FritsTEAM PICNIC POSTNL1.5%
8Einhorn ItamarNSN CYCLING TEAM0.3%
9Hobbs NoahEF EDUCATION - EASYPOST1.4%
10Tesson JasonTOTALENERGIES1.8%

Scoring — probability given to the actual winner

ReadingBlendCascade LambdaRankMarket devig
Hindsight (post-hoc)30.50%37.73%21.63%–

Result rows are joined to the boards by FirstCycling rider id through the riders table. 0 row(s) needed the normalised-name fallback; 2 finisher(s) could not be matched at all.