This explores the implied home-ice advantage for the model in use by Daily FaceOff for their Daily Betting Numbers
The first thing to look at is the ‘normal’ rankings of a team. We’ll use the win/loss submodel but this
attack <- mean(HockeyModel::iterativeRankings$rankings_wl$Attack)
defence <- mean(HockeyModel::iterativeRankings$rankings_wl$Defence)
So, the average team’s attack ranking is -0.32 and their defence rating is 0.35.
We’ll feed this back into some of the code that calculates wins/losses before we start to tune things.
Note that the model’s built-in (tuned) intercept
is
1.714 and home_adv
is 0.075. These are unitless at this
point.
Note that, since we’re using equally well opposed teams for this first investigation, the attack & defence terms are shared. In reality, home_attack and away_attack are separately used.
# Calculate poisson expected goals
mu_h <- exp(intercept + attack - defence + home_adv)
mu_a <- exp(intercept + attack - defence)
pm <- HockeyModel:::prob_matrix(mu_h, mu_a, params=NULL, maxgoal=10)
# This is home and away win
h<-sum(pm[lower.tri(pm)])
a<-sum(pm[upper.tri(pm)])
normalized <- HockeyModel::normalizeOdds(c(h,a))
So, the home team win percent is 41.1 % and the away team 34.5 %. The remainder of the percentage is assigned to a draw. Thus the home ice advantage for two equally-opposed average teams is 6.5 %. If not accounting for draws, the home win percent is 54.3 % and the home-ice advantage is 8.6 %.
Say, for example, we have a home & home for Toronto and Ottawa. What’s the difference in win percent for those two teams?
toronto_attack <- HockeyModel:::getTeamRankings("Toronto Maple Leafs", HockeyModel::iterativeRankings$rankings_wl)$attack
toronto_defence <- HockeyModel:::getTeamRankings("Toronto Maple Leafs", HockeyModel::iterativeRankings$rankings_wl)$defence
ottawa_attack <- HockeyModel:::getTeamRankings("Ottawa Senators", HockeyModel::iterativeRankings$rankings_wl)$attack
ottawa_defence <- HockeyModel:::getTeamRankings("Ottawa Senators", HockeyModel::iterativeRankings$rankings_wl)$defence
The Leafs have attack and defend rankings of -0.23 and 0.39. Ottawa’s rankings are -0.34 and 0.33.
# Calculate poisson expected goals
mu_h <- exp(intercept + ottawa_attack - toronto_defence + home_adv)
mu_a <- exp(intercept + toronto_attack - ottawa_defence)
pm <- HockeyModel:::prob_matrix(mu_h, mu_a, params=NULL, maxgoal=10)
# This is home, draw, away win
h<-sum(pm[lower.tri(pm)])
a<-sum(pm[upper.tri(pm)])
ottawa_odds <- HockeyModel:::normalizeOdds(c(h,a))
For the game at Ottawa, the Senators’ win percentage (normalized) is 44 %.
# Calculate poisson expected goals
mu_h <- exp(intercept + toronto_attack - ottawa_defence + home_adv)
mu_a <- exp(intercept + ottawa_attack - toronto_defence)
pm <- HockeyModel:::prob_matrix(mu_h, mu_a, params=NULL, maxgoal=10)
# This is home, draw, away win
h<-sum(pm[lower.tri(pm)])
a<-sum(pm[upper.tri(pm)])
toronto_odds <- HockeyModel:::normalizeOdds(c(h,a))
For the game at Toronto, the Senators’ win percentage (normalized) is 35.6 %.
Thus, the Senators at home have an advantage of 8.4 %. Similarly calculated, the Leafs’ home advantage is 8.4 %.
Let’s go for a huge difference in team strength and look at a Boston/Arizona back-to-back. Arizona has amongst the worst of both attack and defend skills, there are teams lower in each category but they are better on the other. In contrast, Boston is apparently good?
I’ll hide the code and just get to the end: Boston has a at home win odds of 82.1 % and away odds of 76.1 %. This results in a home ice advantage of 5.9 % for a game between these two teams.
This makes sense. The prevailing metric for a first pass of a model
is ‘does it beat a basic model that just always says
home win percentage = 55%
’. That implies the naive model
has a home-ice advantage of 10 %. Of course, the more different two
teams are from each other, the more that where the game is played
doesn’t matter - if Boston plays Arizona and only has 5.9 % home ice
advantage makes sense. If Boston plays the local Junior A team - it
doesn’t matter where they play - Boston will win. In contrast, when two
teams are equally matched, any advantage that one team has over
the other will make a big difference.