Soccer Dixon-Coles Match Predictor
Pricing
from $2.10 / 1,000 match predictions
Soccer Dixon-Coles Match Predictor
Get win/draw/loss, Over/Under 2.5, BTTS and correct-score probabilities for upcoming soccer matches, computed from a Dixon-Coles bivariate Poisson model fitted on each team's real ESPN match history. Covers MLS, Liga MX, and 6 other leagues with per-match prediction markets.
Pricing
from $2.10 / 1,000 match predictions
Rating
0.0
(0)
Developer
ELIO LIBERATORE
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Per-match soccer probabilities computed from a real statistical model — not a scrape of someone else's picks.
This Actor fits a Dixon-Coles bivariate Poisson model (Dixon & Coles, 1997) to each team's recent results, then uses it to price every upcoming fixture in the league: 1X2 (home/draw/away), Over/Under 2.5 goals, Both Teams To Score, and the 5 most likely exact scorelines — all derived from the same attack/defense ratings and expected goals (λ), so the numbers are internally consistent (they always sum to 1) instead of independently-guessed percentages.
Why Dixon-Coles instead of a raw Poisson model?
A plain Poisson model assumes a team's home and away goals are independent, which overstates how often 0-0, 1-0, 0-1 and 1-1 actually happen. Dixon-Coles adds a low-score correlation correction (rho) fitted from the league's own history, plus exponential time-decay so recent form matters more than a result from three years ago. The result is a model built for exactly the markets that sportsbooks and prediction-market platforms (Kalshi, Robinhood Prediction Markets) price on a per-match basis.
What you get
For every scheduled fixture in the chosen league and time window, one dataset row with:
- 1X2:
prob1(home win),probX(draw),prob2(away win) - Over/Under 2.5 goals:
probOver25,probUnder25 - Both Teams To Score:
probBttsYes,probBttsNo - Top 5 scorelines with their individual probabilities
- The fitted expected goals (
lambdaHome,lambdaAway) and league rho - Metadata: how much history was used, when the prediction was computed, and a
dataQualityflag for fixtures involving a team with no historical matches (e.g. newly promoted)
Supported leagues
Verified end-to-end against live ESPN data: MLS (usa.1), Liga MX (mex.1), Liga de Expansión MX (mex.2), Brasileirão Série B (bra.2), USL Championship (usa.usl.1), Primera División Uruguay (uru.1), Categoría Primera A Colombia (col.1), and Eliteserien Norway (nor.1) — the leagues that also have per-match event contracts on Kalshi and Robinhood Prediction Markets. You can also type in any other ESPN soccer league slug; the model will work as long as ESPN has enough historical results for that league.
Input
| Field | Description | Default |
|---|---|---|
leagueSlug | ESPN league slug (pick from the list or type your own) | usa.1 |
seasonsBack | Years of history to fit team ratings on | 3 |
xi | Daily time-decay rate (higher = recent form matters more) | 0.0018 (~1 season half-life) |
upcomingDays | How many days ahead to predict | 14 |
maxGoals | Highest per-team scoreline modeled | 10 |
How it works
- Pulls finished matches for the selected league from ESPN's public scoreboard API, going back
seasonsBackyears. - Fits each team's attack and defense strength plus a league-wide home-advantage and baseline via maximum likelihood (weighted so older matches count less).
- Fits the Dixon-Coles
rhocorrelation parameter for low-scoring games. - Pulls scheduled (not yet played) fixtures for the next
upcomingDaysdays. - Builds a full score-grid per fixture (0-0 through
maxGoals-maxGoals) with the Dixon-Coles correction applied, normalizes it to 1, and derives every market from that single grid.
A note on newly promoted or newly added teams
If a team has no historical matches in the lookback window (typically a side newly promoted from a lower division), it's treated as league-average strength until it plays enough games to build a real rating. Those fixtures are flagged dataQuality: "partial-new-team" so you can decide how much weight to give them.
Use cases
- Comparing model-implied probabilities against live prices on Kalshi/Robinhood per-match soccer contracts
- Building your own value-betting or trading workflow on top of consistent, per-match probabilities
- Research and analysis of goal-scoring patterns across leagues