sweep: match.total_fouls >= 23
β lab Β· AUC 0.600 (real signal) Β· ran 7/5/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? |
|---|
| match.ref_fouls_avg | 0.0195 | β +0.221 | β³ yes |
| market.p_draw | 0.0139 | β +0.142 | β³ yes |
| home__team.conversion_l5 | 0.0052 | β -0.035 | β³ yes |
| x__match.ref_cards_avg__match.tempo | 0.0046 | β -0.001 | no |
| ratio__team.blown_lead_rate_l20 | 0.0038 | β +0.003 | no |
| home__team.cards_avg_l5 | 0.0034 | β +0.059 | β³ yes |
| match.ref_cards_avg | 0.0033 | β +0.066 | β³ yes |
| match.stakes | 0.0030 | β -0.005 | no |
| market.disagreement_home | 0.0028 | β +0.004 | no |
| away__team.corners_volatility_l10 | 0.0027 | β -0.008 | no |
| ratio__team.rest_days | 0.0025 | β -0.011 | no |
| home__t3__team.cards_avg_l5 | 0.0020 | β +0.002 | no |
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.total_fouls >= 23",
"sport": "football",
"target": {
"op": ">=",
"value": 23,
"metric": "match.total_fouls"
},
"features": "all"
}