#5353rd of 70 in Open models

nba-machine-learning-sports-betting

NBA game winner and over/under predictor using XGBoost and neural nets

Stars
1.8k
License
no license
Last commit
Nov 2026
Last release
Jan 2026
Language
Python
Stars, last 29 weeks+172
21 Apr 2026: 1,605 stars28 Apr 2026: 1,607 stars5 May 2026: 1,612 stars12 May 2026: 1,622 stars19 May 2026: 1,627 stars26 May 2026: 1,631 stars2 Jun 2026: 1,635 stars9 Jun 2026: 1,644 stars16 Jun 2026: 1,648 stars23 Jun 2026: 1,651 stars30 Jun 2026: 1,654 stars7 Jul 2026: 1,656 stars14 Jul 2026: 1,661 stars21 Jul 2026: 1,667 stars28 Jul 2026: 1,671 stars4 Aug 2026: 1,674 stars11 Aug 2026: 1,680 stars18 Aug 2026: 1,684 stars25 Aug 2026: 1,687 stars1 Sept 2026: 1,688 stars8 Sept 2026: 1,694 stars15 Sept 2026: 1,707 stars22 Sept 2026: 1,711 stars29 Sept 2026: 1,720 stars6 Oct 2026: 1,731 stars13 Oct 2026: 1,740 stars20 Oct 2026: 1,749 stars27 Oct 2026: 1,763 stars3 Nov 2026: 1,771 stars10 Nov 2026: 1,777 stars

1,605 on 21 Apr 20261,777 on 10 Nov 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Predicts NBA moneyline and totals outcomes from team stats (2007-08 onward) and sportsbook odds scraped from SBR, storing data in SQLite. It trains XGBoost, neural network and logistic regression models, then prints win probabilities, expected value and optional Kelly Criterion stake sizing for today's games. A small Flask app browses outputs.

Who it is for: Python users building NBA betting models and expected-value tools

Strengths

  • Full pipeline in one repo: data pull, feature build, training and daily prediction
  • Fetches live odds from seven named sportsbooks, with manual odds entry as fallback
  • Outputs expected value and Kelly Criterion fractions, not just win probabilities
  • Backfill flags fill missing stats and odds by date or season

Weaknesses

  • No license file, so reuse terms are unclear
  • NN training scripts use hard-coded dataset and model paths
  • Depends on scraped NBA endpoints and SBR odds, which can change or break
  • No Docker setup; requires Python 3.11 with TensorFlow installed manually

What it needs

  • Needs Python 3.11, TensorFlow, XGBoost, SQLite, Flask, NBA stats endpoints, SBR odds data
  • Models: XGBoost, TensorFlow neural network, Logistic regression

Quick answers

Is nba-machine-learning-sports-betting open source?

Its code is public on GitHub, but the repository has no license, so by default nobody may reuse it.

Also in Open models

See all 70
Also in Open models
RankProjectScore
1ruviewWiFi CSI sensing on ESP32 for presence, breathing, heart rate and pose104k starsMIT94 out of 100
2layaSingle-pass multilingual classifier for typed choice, score and yes/no decisions Live demo ↗ (opens in a new tab)35.4k stars+3,167 (+9.8%) in 30 daysApache-2.088 out of 100
3rf-detrReal-time transformer models for object detection, segmentation and keypoints Live demo ↗ (opens in a new tab)10k starsApache-2.079 out of 100
#4timesfmPretrained time-series foundation model for zero-shot forecasting from Google Research35.4k stars+1,231 (+3.6%) in 30 daysApache-2.078 out of 100
#5yolov5PyTorch YOLOv5 object detection, segmentation and classification models with training code58.3k starsAGPL-3.076 out of 100