sweep: match.btts (bool)
β lab Β· AUC 0.518 (no real pattern β honest result) Β· ran 7/4/2026
What this is: Asks which pre-match factors drive one specific outcome, using a walk-forward model and permutation importance.
| Factor | Importance | Direction | Survives all eras? |
|---|
| market.p_draw | 0.0057 | β +0.032 | no |
| match.tempo | 0.0054 | β +0.025 | β³ yes |
| away__team.shot_diff_avg_l5 | 0.0049 | β +0.014 | no |
| away__team.goals_volatility_l10 | 0.0046 | β +0.025 | β³ yes |
| home__team.dominance_l5 | 0.0043 | β -0.021 | β³ yes |
| market.p_over25 | 0.0033 | β +0.050 | β³ yes |
| away__team.dominance_l5 | 0.0033 | β +0.012 | no |
| away__team.congestion_21d | 0.0032 | β -0.008 | no |
| away__team.corner_diff_avg_l5 | 0.0027 | β +0.015 | no |
| home__team.venue_ppg_l5 | 0.0027 | β -0.014 | no |
| match.stakes | 0.0026 | β -0.013 | no |
| market.p_away | 0.0025 | β +0.025 | β³ yes |
Reading the columnswhat each number actually means
| AUC | predictability: 0.50 = coin flip, ~0.70 = ceiling for sports |
| Importance | how much the model leans on this factor (permutation importance) |
| Direction | sign of the raw correlation with the outcome |
| Survives all eras | effect points the same way in every historical era |
Spec Β· the reproducible recipe
{
"name": "sweep: match.btts (bool)",
"sport": "football",
"target": {
"metric": "match.btts"
},
"features": "all"
}