Gids

Hoe je een AI voor sportweddenschappen bouwt, stap voor stap

De zes echte stappen, waar bijna iedereen breekt, en waarom het model het makkelijke deel is.

Een AI voor sportweddenschappen bouwen kost zes stappen: schone historische data verzamelen, variabelen kiezen die vóór de wedstrijd bestaan, een probabilistisch model trainen, het kalibreren, het out-of-sample testen tegen echte odds en elk resultaat publiceren. Het model is het makkelijke deel. Wat een speeltje van een gereedschap scheidt, is discipline met de data en een eerlijke test.

Stap 1: de data, 70% van het werk

Je hebt meerdere seizoenen aan wedstrijden nodig met eindstand, opstellingen, speelschema en vooral de slotodds van elke wedstrijd. Zonder historische odds kun je niet weten of je model de markt verslaat, de enige vraag die telt.

Schoon dubbele teamnamen, gestaakte wedstrijden en datums in verschillende tijdzones op. Bij Gambeta waren de meeste fouten van de eerste maanden datafouten, geen modelfouten.

Twee voetballers strijden om de bal in een universiteitswedstrijd

Elk duel om de bal is een datapunt. Het model ziet de wedstrijd nooit: het ziet de rijen die jij vooraf besloot op te slaan.

Stap 2: variabelen die vóór de wedstrijd bestaan

De klassieke valkuil is lekkage: een gegeven gebruiken dat pas na de wedstrijd bekend is, zoals de schoten op doel van die wedstrijd zelf. In training lijkt het model perfect; in productie stort het in.

Geldige variabelen: recente vorm, expected goals uit eerdere wedstrijden, rust tussen wedstrijden, thuisvoordeel, bevestigde afwezigen en de openingsodds zelf. In machine learning voor sportweddenschappen beschrijven we die van ons model.

Stap 3: het model

Je hebt geen neuraal netwerk nodig om te beginnen. Een logistische regressie of een goed geregulariseerde gradient boosting voorspelt 1X2- of over/under-kansen solide. Belangrijk is dat de output een kans is, geen label "wint of verliest".

Train één model per sport. Voetbal, tennis, honkbal en basketbal hebben verschillende structuren: in tennis tellen servicepunten, in honkbal de startende pitcher, in basketbal de afwezigen. Eén model voor alles leert alle vier slecht.

Stap 4: kalibratie

Een gekalibreerd model is een model dat, als het 60% zegt, ongeveer 6 van de 10 keer gelijk heeft. Je meet het door voorspellingen per bereik te groeperen en te vergelijken met wat gebeurde. Zonder kalibratie betekent de vergelijking met de odds niets en is de inzet verkeerd bemeten.

Basketbal valt door de ring tijdens een wedstrijd

Erin of niet. Een gekalibreerd model leert van duizenden van zulke worpen; van een paar honderd leert het alleen ruis.

Stap 5: de eerlijke test

Houd het laatste seizoen apart en kijk er pas op het einde naar. Simuleer wedden alleen wanneer jouw kans die van de slotodds overtreft, met vaste inzet. Is het resultaat niet positief, dan werkt het model niet, hoe hoog de nauwkeurigheid ook lijkt.

Die logica van alleen wedden met een voordeel is value betting, en dat maakt van een voorspeller een wedgereedschap.

Stap 6: alles publiceren

Een model dat zijn track record niet publiceert, is niet te onderscheiden van een tipster. Log elke pick met kans, odds en resultaat en laat het open staan. Het is ongemakkelijk als het verliest en het is de enige manier waarop iemand vertrouwt als het wint.

Als dit veel werk lijkt, klopt dat: het is wat we elke dag bij Gambeta doen, en we publiceren het gratis zodat jij het niet vanaf nul hoeft te bouwen.

Zie de AI vandaag aan het werk →

Veelgestelde vragen

Kun je een AI voor sportweddenschappen trainen zonder programmeren?

Met spreadsheets kom je tot een simpele regressie. Om te kalibreren en te testen tegen historische odds heb je Python of R nodig.

Hoeveel wedstrijden heb je nodig om te trainen?

Meerdere seizoenen van dezelfde competitie. Met een paar honderd wedstrijden leert het model ruis, geen patronen.

Welke data zijn onmisbaar?

Uitslagen, opstellingen, speelschema en historische slotodds. Zonder odds weet je niet of je de markt verslaat.

Kan een generieke AI als ChatGPT dit?

Ze kan de code schrijven en het ontwerp bespreken, niet als model dienen: ze heeft geen data en geen kalibratie.