What is the NBA Data Competition?

The NBA Data Challenge gives you the chance to demonstrate your ability to use historic data-sets to predict basketball results. Create a model to accurately predict basketball scores using NBA data, and you’ll be in the running to win prizes each month, and a grand prize at the end of the season. Full terms and conditions apply, which can be found here.

Am I eligible to compete?

Anyone over the age of 18 is eligible to enter, with the exception of current or former G-Research staff, and their immediate family. We will not accept entries on behalf of another person, or joint submissions.

Can I compete as part of a team?

Yes you are welcome to compete as a team. 

What prizes can I win?

Each month we’ll be handing out 3 prizes to the top 3 closest predictors:

  • 1st place prize is a £1,500 cash prize
  • 2nd place prize is a £750 cash prize
  • 3rd place prize is a £250 cash prize

At the end of the season, during the play-off period we’ll be giving out 3 grand prizes to the top 3 closest predictors:

  • 1st place prize is a £15,000 cash prize
  • 2nd place prize is a £3,000 cash prize
  • 3rd place prize is a £2,000 cash prize

Can I submit multiple models?

No, each entrant may only set up one user account and one entry.

Can I use additional data sources to improve my model?

Yes, subject to pre-approval, see https://nbadatachallenge.com/forums/topic/external-data-rule-change/ for details. We will disqualify any submissions that use un-approved additional data sources.

How frequently can I edit my submission?

You can edit your model and update your GitHub repository at any time, and change the Primary commit hash you submit as frequently as you like. There is a cutoff time before each round of testing, which will be 09:00 UTC every Monday.

How will scores be determined?

For each game, we give your predictions a single-game score using the following formula:

your_error = abs(actual_diff - predicted_diff) + abs(actual_sum - predicted_sum)
baseline_error = abs(actual_diff) + abs(actual_sum - 200)
single_game_score = baseline_error - your_error

The baseline error represents a very simplistic model which predicts 0 points difference and 200 total points for each game. Subtracting your error from the baseline error means that the better your prediction is, the higher your score will be. Your total score is then the sum of all your single game scores.

When will prizes be given out?

Prizes will be handed out on a monthly basis at the end of each month, starting in January 2020, with a final prize for overall best predictor being given out at the end of the NBA season. 

Can’t find the answer to your question?

Feel free to drop us a line at [email protected]