How the Model Works
A bottom-up Monte Carlo simulation, plate appearance by plate appearance.
Monte Carlo Simulation
Every game is simulated 10,000 times, plate appearance by plate appearance. Each PA outcome (strikeout, walk, single, homer, etc.) is sampled from probabilities built by blending the specific batter and pitcher matchup.
Player Profiles
Each player's rates are built from:
- Marcel projections — 3-year weighted (5/4/3) with regression to league average
- Baseball HQ skills metrics — contact rate, barrel rate, speed scores blended 50/50 with Marcel
- In-season cumulative stats — updated daily from box scores, gradually replacing preseason projections
Matchup Blending
Batter and pitcher outcome rates are combined using the multiplicative odds-ratio method (b×p/l). This produces more accurate probabilities than the commonly-used log5 method for outcomes far from 50%.
Game Features
- Park factors (HR, singles, doubles, triples, walks, strikeouts) from Baseball HQ
- Stolen bases — speed-adjusted attempt and success rates
- Wild pitches, errors, productive outs, sacrifice flies
- Starter pulled after ~21 batters faced, then team-specific bullpen profile
- Times-through-order penalty (hitters improve 10-20% on later ABs)
Team Strength (Elo)
An Elo rating system (K=20, home field +24 pts) captures team-level quality that individual PA outcomes don't. Elo probabilities are blended 50/50 with simulation output for the final win probability.
Edge Detection & Bet Sizing
- Confidence gating — model probabilities are shrunk toward market based on data quality
- Minimum 7% edge to trigger a bet (filters noise)
- Maximum 15% edge cap (very large edges are usually the market being right)
- Quarter-Kelly sizing with 5% bankroll hard cap per bet
2025 Backtest Results (Out-of-Sample)
The model was trained on 2021-2024 data and validated on the full 2025 season:
- Moneyline: +16.2% ROI on 247 bets ($20K → $45,224)
- 50.2% win rate at average +102 odds
- Brier score: 0.2428 (better than training set)
Disclaimer
This model is for educational and entertainment purposes. Past backtest performance does not guarantee future results. Sports betting involves risk. Only bet what you can afford to lose.