What is Sports Club Stats?

3 things:

  • A team’s odds of making the playoffs, or winning the title for sports without playoffs.
  • How today’s games impact those odds.
  • How well they need to finish the season to have a shot.

It knows the season schedule and scores for past games. Each night it grabs any new scores from the internet and simulates the rest of the season by randomly picking scores for each remaining game. The weighted method takes the opponents record and home field advantage into account when randomly picking scores, so the better team is more likely to win. The 50/50 method gives each opponent an equal chance of winning (or tying if the sport allows it) each game. When it’s finished "playing" all the remaining games it applies the league’s tie breaking rules to see where everyone finished. It repeats this random playing out of the season million of times, keeping track of how many "seasons" each team finishes where. Finally it updates the site with the new results for you to read with your morning coffee.

For example, this is how the tally progressed for the NHL Eastern Conference (partway through the 06-07 season). The Conference has 15 teams, 8 of which make the playoffs. The 3 division winners get the top 3 seeds.

********* ********* ********* ********* ********* ********* ********* ********* ********* ********* ********* ********* ********* ********* *********
Number of times teams finish at each position after 1 simulation run.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Sabres
Devils
Senators
Penguins
Thrashers
Lightning
Islanders
Maple Leafs
Hurricanes
Rangers
Canadiens
Bruins
Panthers
Capitals
Flyers
Simulate season: 1 2 3 4 5 10 100 1,000 10,000 100,000 1,000,000 10,000,000 times.
Show: total average

There are an infinite number of ways the season could play out, but by randomly picking a bunch we get a good approximation. This way of estimating is called the Monte Carlo method.

How do I know the impact of upcoming games?

First I get a baseline by running the simulation with the current standings. Then, for each upcoming game I:

  • Pretend the home team wins 1-0 and run the simulation on the remaining games.
  • Pretend the away team wins 1-0 and run the simulation on the remaining games.
  • For football (soccer), pretend the teams draw 0-0 and run the simulation on the remaining games.
  • For hockey, pretend each team loses in overtime 0-1 and run the simulation on the remaining games.
  • Compare each team’s new pretend chance of making the playoffs with the actual baseline chance to see how much it goes up or down.

Three Caveats

  • The algorithm does not know about things like trades, injuries, and matchups. It does not know that a team has started believing in themselves.
  • "Out" does not necessarily mean mathematically eliminated. It just means in the millions of times I played out the season the team never made the playoffs. Likewise for "In".
  • The code could have bugs. The nice thing is the numbers are broken down such that bugs don’t stay hidden long. If you find a new one I'll buy you a beer. Domestic. Milwaukee's Best, Schaefer, something like that.