The method
Betting Optimization Simulator does not simulate football matches. It simulates you: the decisions you make about which bets to take and how much to stake. Here is what happens under the hood.
1. Micro-agents in parallel worlds
Each simulation creates thousands of virtual bettors. For every bet opportunity we draw a true probability, an imperfect estimate of it (your noise) and the bookmaker price with margin. Every agent sees its own random results, but all strategies are run on the same random numbers (common random numbers), so differences between strategies come from the strategy, not from luck.
2. Value and expected value
A bet at decimal odds with true win probability has expected value per unit staked:
You only have value when . Because you never know exactly, the value filter works on your estimate and the simulation measures how often the filter is right (its precision).
3. Removing the margin (Shin model)
Bookmaker odds imply probabilities that sum to more than 100% — the overround. The naive method divides each implied probability by the total; the Shin model assumes part of the market consists of insiders and corrects the favourite–longshot bias:
4. Kelly, fractional Kelly and robust Kelly
The Kelly criterion maximises the long-run growth of the bankroll. For a single bet with net odds :
Full Kelly is extremely sensitive to errors in . Fractional Kelly (½, ¼) gives up a little growth for much lower volatility. Robust Kelly maximises growth under the worst plausible probabilities (a CVaR constraint), which is the game-theoretic answer to "what if I'm wrong?".
5. The bettor-versus-nature game
For a bet slip we treat the uncertain probabilities as an opponent that picks the least favourable scenario. The maximin (Nash) mixed allocation spreads weight over bets — and over the option NO BET. When the worst-case value is not positive, the optimal weight on NO BET is 100%, and Betting Optimization Simulator says so.
6. Dynamic programming (Bellman)
Instead of a fixed rule, dynamic programming computes the best stake for every bankroll level and number of remaining bets, by working backwards from the end:
With this gives growth-optimal staking; with if target (and 0 below the ruin line) it maximises the probability of reaching a target before ruin.
7. Markov chains: calm and tilt
After a loss, a bettor in the calm state moves to tilt with probability ; from tilt they recover with probability . In tilt, stakes are multiplied. The long-run share of time spent in tilt is:
where is the probability of losing a bet.
So even modest tilt probabilities can inflate average stakes — and the risk of ruin — substantially.
8. Monte Carlo and confidence intervals
Each probability we report (profit, ruin) is a proportion over agents, so it carries sampling error. We report Wilson score intervals; with 1,000 agents a probability around 50% is known to within roughly ±3 percentage points.
Limits of the model
Results are only as good as the assumptions you enter. Real markets move, limits get cut, and your estimates may be worse than you think. Treat every output as a stress test of your decisions, not as a forecast.