u/iph0ngaa

Image 1 — Built a profitable live in-game probability engine for football across 25 european leagues
Image 2 — Built a profitable live in-game probability engine for football across 25 european leagues
Image 3 — Built a profitable live in-game probability engine for football across 25 european leagues
Image 4 — Built a profitable live in-game probability engine for football across 25 european leagues
Image 5 — Built a profitable live in-game probability engine for football across 25 european leagues

Built a profitable live in-game probability engine for football across 25 european leagues

Been lurking for a while and finally ready to share my results.
I've always bet live on football matches. If you understand football and you're actually watching, you can read things in real time, whether momentum is shifting, whether the team in possession is actually doing anything with it, whether the other side is dangerous on the counter. But the watching is the catch. You can only really watch one or two games at a time on any given matchday, most of the in-play market is happening without you. That's the gap I wanted to close so i build a live in-game probability engine that runs across 25 European football leagues, updates every 15 seconds, and compares its number to the live book. Bottom-up, built on top of a third-party live stats feed.

Pre-match first. You can't build a live model without a pre-match prior. Otherwise every in-play probability is just whatever the last 90-300 seconds of stats say, with no anchor. So I started with: pre-match WDL(1X2), BTTS, and Over/Under 2.5. Those probabilities become the prior the in-play engine starts each match with.

My Live engine, updated every 15 seconds. The live engine wakes up every fifteen seconds for every fixture in play and recomputes the probability using current match state, score, minute, attacking pressure, shot quality, dangerous events, ball coordinates, ball posession etc. All of those combines gives a probablity for each market. The prior (prematch prob.) fades as in-play evidence accumulates. Architecturally: one upstream poller pulls the stats feed (a single third-party provider)

How i deal with the actual betting. Betting on every positive edge from a live in-game model is very difficult. Odds change every minute of the game, and even after calibrating a million times, not every edge that shows up is an honest one compare to the bookmaker. So I ran audits on when the edge actually was honest, and tuned my way to the sweet spot. That sweet spot is what fires a "Featured Signal" and that's what I bet on.

Results:
And to be honest I dont get why more people aren't doing this. I know it takes time, but im sure I founds some honest holes.

My main in-game comparison is bet365 - meaning you're probably looking at an even more profitable version of this if you're doing in-game line shopping across multiple sharper books. I'm open to discussing models as long as it doesn't directly expose the live engine because there is a lot to cover and I dont want to turn this into a long read.

There was a thread in this sub a while back asking why people don't share their winning models. I didn't fully get it at the time. I do now. It takes a ton of months & hours building, adjusting, backtesting, forward-testing, re-adjusting again and again. It never stops.

Anyways - here are the results last 54 days: 2026-03-20 → 2026-05-12 inclusive.
40 distinct match-days with at least one featured signal (the other 14 days had no qualifying signals)

326 total signals
Won - Lost: 172 - 77
Hit rate - 69%
P&L:+75.75u
ROI:+30.42%
Avg odds: 1.91
Longest win streak: 15
Longest loss streak: 8

By market:

Market n Hit ROI Avg odds
HOME WIN 108 80.6% +15.1% 1.22
OVER 2.5 84 64.3% +23.7% 1.92
OVER 1.5 22 86.4% +136.9% 1.45
UNDER 1.5 20 30.0% +34.9% 5.24
UNDER 2.5 15 40.0% +16.5% 3.06

Happy to share much more, but not sure what is allowed and how to share the underlying data without exposing my models to much. Let me know.

u/iph0ngaa — 8 days ago