Skip to content

A python module to calculate and maintain Elo values for teams/players as they play multiple games

Notifications You must be signed in to change notification settings

mcbarlowe/elopy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Elopy

This is a module to allow you to maintain state for teams as you progress them through games played against opponents. This uses the the constants set out from 538's NBA Elo. But you could inherit and overload the functions to work for any sport you wanted.

To Install:

pip install elopy

Code Examples:

from elopy.elo import Elo

team_a = Elo(start_elo=1600, k=20, hca = 100)
team_b = Elo(start_elo=1400, k=20, hca = 100)

#To get the win probability of team_a beating team_b at home

team_a_probs = team_a.win_probs(team_b, is_home=True)

#To get the win probability of team_b beating team_a at home

team_b_probs = team_b.win_probs(team_a, is_home=True)

#If you want to get away probabilities then set is_home to False

#To get the point spread of team_a vs. team_b. Positive represents an underdog
#negative represents a favorite

#at home
point_spread_home = team_a.point_spread(team_b, is_home=True)

#not at home. Will return a value
point_spread_away = team_a.point_spread(team_b, is_home=False)

#update elo's after a team has played the other. Let's say team a beat team b
#by 15 points as a visitor

team_a.play_game(team_b, 15, is_home=False)

#This will update both team a and team b's Elo ratings. If you run the same line
as above again it will be as if both teams are playing a second game

team_a.play_game(team_b, 15, is_home=False)

#This means that team a played team b again and beat them by 15 points again as
the visitor

#Then to get each team's Elo rating just access the elo attribute
print(team_a.elo)
print(team_b.elo)

About

A python module to calculate and maintain Elo values for teams/players as they play multiple games

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages