This is a machine learning-based project aimed at optimizing football betting strategies. The project uses football data from football-data.co.uk and incorporates advanced statistical strategies like Elo, GAP, and Pi ratings to generate features for machine learning models. It applies different machine learning models to predict match outcomes and utilizes strategies like the Kelly Criterion and its variations to decide on the best betting approach.
The project also provides a flexible framework for testing and comparing different betting strategies, allowing for easy extension and experimentation. It includes a comprehensive historical record of bets placed, their outcomes, and the progression of the gambler's bankroll.
This project serves as a comprehensive guide for anyone interested in the intersection of machine learning, sports statistics, and strategic betting.
The conf.yml may be configured as shown below:
...
data:
path: /Users/charaka/Desktop/University/Msc Machine Learning & Data Science/Masters Project/football-data
division_names:
- E0
- E1
years:
- 2019-2018
- 2020-2019
- 2021-2022
- 2022-2023
...
path
: Path to load the football dataset from
division_names
: List of division names to load the data from, e.g. E0
for the English Premier League, E1
for the English Championship, etc.
years
: List of years to load the data from
Clone the project
git clone https://github.com/cabeywic/football-ml-betting
After cloning the repo run the below command, to install dependencies and create a logs folder.
cd football-ml-betting
pip install -r requirements.txt
Start the stream, check your configuration & environment and run below command
python src/main.py