One model reads every match.
Behind every Momus Modal read is a single quant engine — a self-fitted Dixon-Coles latent-strength model, blended with xG. Not a tipster's gut: a probabilistic model of every scoreline, run the same cold way on every fixture.
What the model does
Latent team strengths
It fits every team's attack and defence from results and xG — recency-weighted, so form is captured and finishing luck is stripped out. No hand-picked ratings.
A full scoreline distribution
Those strengths become expected goals for each side, then a Dixon-Coles bivariate-Poisson grid — a probability for every exact score, with the low-score correction real football needs.
Every market, derived
From that one grid it reads 1X2, over/under, both-teams-to-score, correct score and expected goals — all internally consistent, because they come from the same object.
Checked and calibrated
Each line sits next to ~33 bookmakers as a reference, and the model grades its own probabilities against real results — so a stated 60% actually means 60%.
Strengths → goals → grid → markets
Fit
Team attack/defence strengths + home edge, fitted from the league's results and xG.
Expected goals
The two sides' strengths → expected goals (λ) for this fixture.
Scoreline grid
A Dixon-Coles bivariate-Poisson grid — the probability of every exact score.
Derived markets
1X2, O/U, BTTS, correct score, xG — all read off the grid.
Calibrate
Graded against real results; the probabilities are corrected as evidence builds.
Graded against reality
A model is only worth its calibration: when it says 60%, does it happen 60% of the time? Every settled match is scored against what the model predicted — publicly.