v1 ship 2026-05-28 — empirical comparison of soccer pick Brier across
the 3-source xG fallback chain. Operator-flip of
SOCCER_NPXG_TRUE_PRIMARY_ENABLED=1 happened today; v2
cohort N will accumulate over the coming days.
Soccer xG cohort split
Each row = picks priced with that xG source as primary
(predictions.home_xg_source). Brier compares model
consensus_prob to the picked-side actual outcome; market Brier uses
square_prob (no-vig anchor). Lower Brier = better calibration. Lift =
model − market (negative = model beats market).
Soccer xG cohort calibration split.
Cohort
N picks
Model Brier
Market Brier
Lift
true_npxg
0
—
—
—
raw_npxg_team_page
0
—
—
—
raw
13
0.1867
0.1934
-0.0067
Cohort split is by home_xg_source. Picks pre-dating the
2026-05-26 audit-column ship have NULL source and are excluded.
Per-league calibration
Settled-pick Brier per league via predictions JOIN
game_outcomes. Lift = model − market; negative = model beats market.
Useful for spotting whether the soccer model's overall edge is
universal or driven by one league.