Soccer Dixon-Coles Match Predictor avatar

Soccer Dixon-Coles Match Predictor

Pricing

from $2.10 / 1,000 match predictions

Go to Apify Store
Soccer Dixon-Coles Match Predictor

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

ELIO LIBERATORE

Maintained by Community

Actor 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 dataQuality flag 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

FieldDescriptionDefault
leagueSlugESPN league slug (pick from the list or type your own)usa.1
seasonsBackYears of history to fit team ratings on3
xiDaily time-decay rate (higher = recent form matters more)0.0018 (~1 season half-life)
upcomingDaysHow many days ahead to predict14
maxGoalsHighest per-team scoreline modeled10

How it works

  1. Pulls finished matches for the selected league from ESPN's public scoreboard API, going back seasonsBack years.
  2. 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).
  3. Fits the Dixon-Coles rho correlation parameter for low-scoring games.
  4. Pulls scheduled (not yet played) fixtures for the next upcomingDays days.
  5. 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