System thesis
Case study
NFL Sports Forecasting & Backtesting Lab
Historical sports forecasting lab that emphasizes baselines, calibration, ensembles, and backtesting discipline.
Primary evidence: 69.8% accuracy / 0.1986 Brier
At a glance
- Dataset
- 6,991 games, 1999-2024 cited in README
- Models
- Elo, XGBoost, logistic regression, ensemble
- Evaluation
- Accuracy, Brier score, backtesting
System problem
Why this system exists.
Forecasting systems are credible only when baselines, model comparisons, calibration, and historical backtests are visible.
Implementation surface
What was built.
- Feature-building workflow.
- Elo, logistic regression, XGBoost, and ensembles.
- Backtesting and allocation experiment framing.
Architecture
A system map for the project.
Historical games + team stats + odds/features -> feature builder -> Elo baseline -> ML models -> ensemble/calibration -> backtesting -> dashboard/results.
A model-evaluation architecture where baselines, supervised models, calibration, and historical backtests are visible.
Historical Data
Baselines
Model Stack
Evaluation
How it works
Input, transformation, model or agent logic, and reviewable output.
Historical feature base
Completed game data and team features establish the modeling substrate before any ML model is used.
Baseline first
Elo gives an interpretable reference point so complex models must earn their place.
Model comparison
XGBoost and logistic regression are compared against Elo and then combined through an ensemble.
Calibration and backtesting
Brier score and historical backtests keep the discussion focused on probability quality, not only headline accuracy.
Evidence
Screenshots, responses, diagrams, tests, and model tables from the source repos.
Artifacts are included only where the public repo has enough context to show them safely.
2024 model comparison
README-reported 2024 test set: Elo 68.4% / 0.2088 Brier, XGBoost 69.5% / 0.2013, Logistic Regression 70.2% / 0.2010, Ensemble 69.8% / 0.1986.
Backtesting evidence
{
"season": 2024,
"training_data": "1999-2023",
"models": {
"elo": { "accuracy": 0.684 },
"xgboost": { "accuracy": 0.695 },
"logistic": { "accuracy": 0.702 },
"ensemble": { "accuracy": 0.698 }
}
}Engineering Decisions
Historical scope
The project is positioned as completed forecasting research evidence, not an active betting product.
Keep the original domain honest
The site uses sports forecasting externally and preserves responsible-use language.
Show the table
The model comparison table is more credible than another generic AI card.
Validation / reliability
How the system is made reviewable.
- README reports held-out season metrics including accuracy and Brier score.
- Backtesting evaluates historical outcomes.
- Historical-use boundaries are explicit.
- Python modeling pipeline.
- Historical lab positioning.
- No live wagering or betting automation.
Limits / responsible use
Historical and educational sports analytics only. Not gambling advice, not betting advice, and not a betting product.
- The project foregrounds baselines, calibration, Brier score, and historical backtesting rather than only accuracy.
- Historical scope and non-betting boundaries are explicit.
- Reported tables are historical analytics evidence, not forward-looking wagering claims.
Repository
Open the source repo and inspect the implementation boundary.
All public examples are synthetic, sanitized, historical, or research/demo implementations. No PHI, PII, employer-confidential data, proprietary claims data, private keys, production credentials, or sensitive datasets are included.