Melvin's 2021-22 NHL Team Projections | Page 7 | HFBoards - NHL Message Board and Forum for National Hockey League

Melvin's 2021-22 NHL Team Projections

This is a completely different team than was iced last season and with a training camp the team will be significantly better. I see a top 10 finish in the league a) as they are in a weak division and b) the team is overall better. I have said it before and I will say it again, the entire season is on Green and how he coaches. He needs to be on a very tight leash if he cannot design a 200' game where the forwards support the D then many of you will get your wish because JB and TG will both be gone by seasons end.
 
I don’t necessarily agree that this team is better than the 2019-2020 team. On the backend it’s easily worse and it would be incredibly difficult for Demko to replicate Markstrom’s season that year. Adding Garland and Hoglander are big additions, but some may forget that both Virtanen and Gaudette put up some good numbers that year from the bottom 6. Plus I have a hard time thinking Miller or Pearson will replicate their seasons.

I just don’t believe we really are improved enough up front to offset the decline on the backend and are basically expecting perfection out of Demko.
 
I don't think so. I think this is inevitable since I am simulating the season 1000+ times and taking an average. Even if a team finishes with 62 points, that doesn't necessarily mean that they would average 62 points if you ran the season 1,000 time. Most likely that represents a low water mark where if you somehow got to re-do the season they'd do a bit better. In real life we don't get to play the season 1,000 times. We play it once and we get what we get. I had some simulations where Colorado had 126 points, I had some where Buffalo had 56 points. Hell, I had a couple where Vancouver had 115 points. That's the thing. To hit 110+ points or to hit 60- points you need a lot of things to go right/wrong. In real life, that just happens sometimes but if you are replaying the season 1,000 times it's not going to happen every time and all I can really do is take the average and report it as the most likely outcome.

To some extent, there is also an effect where teams that start the season really badly sort of give up, sell players at the deadline, etc, and finish even lower than they might have if they try-harded it all year, and that's not something that I project.

Fair enough, thanks dude.

Then my thought is that having the high/low included might be helpful as far as really demonstrating that what you're simulating in the table is an average. While inevitably the usual freaks suspects would just focus on the downside case of the Canucks with 67 points or whatever vs the 115 point upside, it'd be interesting to see the variation in your results on a team by team basis. For example, I'd expect a team like Edmonton to have a wider range than say, the Islanders. A couple stars with likely dog shit goaltending vs a deep, depth driven team. But maybe that's not true at all?

Don't want to ask you for extra work haha, but if you already have the numbers available I'd be interested.
 
First attempt at Sims:

ConferenceDivisionTeamPTSD1%D2%D3%WC1%WC2%Playoff%MissPlayoffPctLastPlace%
EastAtlanticTOR10048%25%11%4%4%92%8%0%
EastAtlanticT.B9317%22%17%9%7%72%29%1%
EastAtlanticBOS9013%13%16%9%10%61%39%2%
EastAtlanticFLA887%12%17%6%9%51%49%4%
EastAtlanticMTL866%11%12%8%7%45%55%7%
EastAtlanticDET854%7%10%8%8%36%64%8%
EastAtlanticOTT853%6%12%7%8%36%64%8%
EastAtlanticBUF812%4%7%4%4%21%79%14%
EastMetroCAR9226%18%15%6%7%72%28%1%
EastMetroNYI9223%19%16%6%6%70%30%1%
EastMetroNYR8915%16%14%7%5%57%44%3%
EastMetroPIT8914%17%15%7%6%59%42%3%
EastMetroN.J8811%12%16%6%6%51%49%4%
EastMetroWSH868%11%10%6%6%41%59%6%
EastMetroPHI813%3%8%4%5%23%77%17%
EastMetroCBJ801%4%5%2%4%16%84%21%
WestCentralCOL10159%19%10%3%2%93%7%0%
WestCentralNSH9010%18%17%7%5%57%43%2%
WestCentralDAL8911%16%16%6%7%55%45%5%
WestCentralWPG898%15%16%7%6%51%49%5%
WestCentralCHI866%9%12%6%8%39%61%8%
WestCentralSTL864%14%12%5%6%40%60%6%
WestCentralMIN832%7%10%5%6%31%69%12%
WestCentralARI801%3%6%4%4%18%82%19%
WestPacificVGK10045%22%15%4%5%90%10%1%
WestPacificSEA9627%24%17%7%6%80%20%1%
WestPacificEDM897%12%13%9%9%49%51%4%
WestPacificVAN886%12%13%9%8%48%52%4%
WestPacificS.J884%11%14%9%9%47%53%6%
WestPacificL.A875%8%14%7%8%42%58%5%
WestPacificCGY875%9%11%9%8%41%59%5%
WestPacificANA811%3%5%5%5%18%82%19%
[TBODY] [/TBODY]
As I think most expected, Van at about 50/50 to make the playoffs.

Let me know if anything looks wrong or you want more details!

not a criticism, but my editorial comment is the % chance of playoffs does not seem to match the point totals.

the % chance suggests the canucks are in a a five way fight with the stars, jets, oilers and sharks for the last four playoff spots, with a big tier drop off in the chances of teams after that.

but it is hard to believe hawks only have a 39% chance while the stars, with 3 more projected points, are at 55%

the projected point totals suggests the canucks, stars, jets, oilers, sharks, flames, kings, hawks, and blues all end the season within three points of each other fighting over four spots.
 
Fair enough, thanks dude.

Then my thought is that having the high/low included might be helpful as far as really demonstrating that what you're simulating in the table is an average. While inevitably the usual freaks suspects would just focus on the downside case of the Canucks with 67 points or whatever vs the 115 point upside, it'd be interesting to see the variation in your results on a team by team basis. For example, I'd expect a team like Edmonton to have a wider range than say, the Islanders. A couple stars with likely dog shit goaltending vs a deep, depth driven team. But maybe that's not true at all?

Don't want to ask you for extra work haha, but if you already have the numbers available I'd be interested.

not a criticism, but my editorial comment is the % chance of playoffs does not seem to match the point totals.

the % chance suggests the canucks are in a a five way fight with the stars, jets, oilers and sharks for the last four playoff spots, with a big tier drop off in the chances of teams after that.

but it is hard to believe hawks only have a 39% chance while the stars, with 3 more projected points, are at 55%

the projected point totals suggests the canucks, stars, jets, oilers, sharks, flames, kings, hawks, and blues all end the season within three points of each other fighting over four spots.

This kind of goes in with what I was saying to VCL. Remember that I am simulating the season 1,000 times so 3 points is actually significant. Finishing 3 points ahead of a team doesn't really mean a whole lot (basically nothing actually,) but, if in 1,000 runs of the season you average 3 more points than another team, that's actually a lot.

It's like if you and I do a race and you beat me by 1 second. It would be reasonable to think that you and I are pretty similar in quality, maybe exactly equal, or maybe I am actually faster than you but had a bit of a stumble. One second means nothing in a 1-race sample. But if we did 1,000 races and you beat me 75% of the time, and your average over the 1,000 races was 1 second faster than my average, then it would be obvious that you're the better runner, no real argument otherwise. That 1 second is suddenly more meaningful over 1,000 races.

I can provide the floor and the ceiling in future updates, that's not any extra work. Maybe that will make it more clear. In general, I don't pay a lot of attention to the point totals as I find the percentages are more meaningful. I think the Stars making the playoffs 55% of the time and Chicago only 39% of the time is more meaningful (and intuitive) than interpreting the difference in their average point totals.
 
This kind of goes in with what I was saying to VCL. Remember that I am simulating the season 1,000 times so 3 points is actually significant. Finishing 3 points ahead of a team doesn't really mean a whole lot (basically nothing actually,) but, if in 1,000 runs of the season you average 3 more points than another team, that's actually a lot.

It's like if you and I do a race and you beat me by 1 second. It would be reasonable to think that you and I are pretty similar in quality, maybe exactly equal, or maybe I am actually faster than you but had a bit of a stumble. One second means nothing in a 1-race sample. But if we did 1,000 races and you beat me 75% of the time, and your average over the 1,000 races was 1 second faster than my average, then it would be obvious that you're the better runner, no real argument otherwise. That 1 second is suddenly more meaningful over 1,000 races.

I can provide the floor and the ceiling in future updates, that's not any extra work. Maybe that will make it more clear. In general, I don't pay a lot of attention to the point totals as I find the percentages are more meaningful. I think the Stars making the playoffs 55% of the time and Chicago only 39% of the time is more meaningful (and intuitive) than interpreting the difference in their average point totals.

i think floor, ceiling and mode average makes sense, and then yes, rank the teams by percentage.

i have no doubt your model reliably predicts a certain result with a certain confidence, but that confidence reduced to a point projection is not justified based on the inherent frailty of the model. the range seems more reasonably reflective.
 
  • Like
Reactions: vancityluongo
If you're going to do floor and ceiling for each team it might help to graph them on a bell curve so we get an idea of how often a team is expected to hit those highs and lows. I know that's a ton of work so it's also cool if you're just not willing or able to do that.
 
I think the forward group is much improved over previous years, that's for certain. The team is pretty deep upfront and it would not surprise me if we had a top 5 offence next season. There's a lot of talent there and they have good young players on the third line now too.

The thing I see with this team is that a lot is going to fall on Green's shoulders. This is a new group, a completely new defense corps and they might take all season to figure it out (and perhaps never will, remaining a defensive tire-fire all year). Still I think a proper training camp should help the Canucks more than the average team.

The defense could surprise and be competent defensively. Offensively they'll be fine with both OEL and Rathbone being able to contribute. A lot 0f the Canuck's success could boil down to what OEL can do (or not). Goaltending should be solid.

I think we could be in the 95-100 points range. This team will outscore a lot of its problems and I see a weaker division as well.
It's going to be a fun year for Canucks fans, there's a lot of mystery and uncertainty, but a lot can go right and we should have one of the more exciting teams.
 
  • Like
Reactions: Jimnastic
i think floor, ceiling and mode average makes sense, and then yes, rank the teams by percentage.

i have no doubt your model reliably predicts a certain result with a certain confidence, but that confidence reduced to a point projection is not justified based on the inherent frailty of the model. the range seems more reasonably reflective.

To be fair, I was careful to not call it a point projection. But I can see that I wasn't clear about what it actually was, and can see the confusion since this is the projections thread. But there is a subtle difference between a projection and an average of simulations.

But yes, I think it's far more reasonable to present a range, and I can give more data on the shape of the curve for each team. I'll do that with the next run, whenever the Kotkaniemi thing is finalized.
 
To be fair, I was careful to not call it a point projection. But I can see that I wasn't clear about what it actually was, and can see the confusion since this is the projections thread. But there is a subtle difference between a projection and an average of simulations.

But yes, I think it's far more reasonable to present a range, and I can give more data on the shape of the curve for each team. I'll do that with the next run, whenever the Kotkaniemi thing is finalized.

thanks. i had not intended it as a criticism, but as constructive feedback. whether it is an average of simulations or a point projection, my thought is that a range is more reflective of the strength of the underlying model and thus a more useful way to communicate the model results.

i also wonder how sensitive this model is. for example, if you assume a team is 5% better than projected, how big a swing does that produce?
 
If OEL wilts under the pressure of playing in an actual hockey market (and he only has two 31 year olds backing him up) it could get really ugly unless Demko puts in a Vezina calibre season.
It is going to be very interesting. I recognise this could be a complete clusterf*ck if OEL does a Louie for us. But, EP is going to have more room with three strong lines, OEL and Garland sound motivated, and we are going to have a very mobile defence who will have forwards to pass to, not a bunch of tired journeymen who look like they are skating through concrete. This team could really gel.
 
  • Like
Reactions: ChilliBilly
Melvin, thanks so much for this BTW.

You haven't included intangibles, well, because you can't. And you obviously wouldn't want to. But OEL, EP, Podz, Hogs, Garland, Green, and Shaw. So many variables. The Blues changed coaches and went from a tire fire to winning the cup.

The Canucks have mortgaged their future to put up a possible contender now. If you look at them based on last years player stats they are in trouble. As a fellow Canuck lover, I imagine you are hoping that away from the modeling there is a Canuck team waiting to break out.

I suspect that the Canucks will struggle with their brutal season opening. I am looking for a team to blossom mid season when they have traditionally collapsed.

At least it probably wont't be boring.

After an in depth analysis, a bottle of 15 yr old scotch, and throwing several darts at the dart board, I am predicting the Canucks wind up around 10th.
 
  • Like
Reactions: ChilliBilly
Thanks a lot Melvin, this is very interesting.

I agree with the above and think ranking by percentage may be more useful. I'm also on board for high, low and average point projections.

Keep up the interesting analysis.

(The distance travelled is a interesting idea too. I wonder if it would affect leagues that are less used to travel (say EPL) more than those that are used to it (NHL, NBA))
 
Last edited:
A few roster updates, some small fixes to the simulation code, and running more sims. Presenting results with the point range as discussed. This point range is essentially the range in which the majority of simulations falls for that team.

Roster changes:

Riley Sheahan -> SEA
Kyle Palmieri -> NYI
Louis Domingue -> PIT
Jesperi Kotkaniemi -> CAR
Christian Dvorak -> MTL

ATLANTIC DIVISION

DivisionTeamMinPtsProjPointRangeMaxPtsAvgGFMinGFMaxGFAvgGAMinGAMaxGAD1%D2%D3%WC1%WC2%Playoff%
AtlanticTOR7394 - 10613026721632223117229049%22%12%5%3%91%
AtlanticT.B5688 - 9912525120131023717929318%21%18%8%7%72%
AtlanticBOS6284 - 9612824819630124419230910%16%15%9%7%57%
AtlanticFLA5683 - 941202582063162581953268%11%14%8%8%49%
AtlanticMTL5380 - 921182471893032541953155%9%12%7%7%40%
AtlanticOTT5680 - 921172511983142591953175%9%12%7%7%40%
AtlanticDET5580 - 911192371862942471983124%8%11%7%8%38%
AtlanticBUF5276 - 881162421893012642123332%4%7%5%5%22%
[TBODY] [/TBODY]


METROPOLITAN DIVISION

TeamMinPtsPoint RangeMaxPtsAvgGFMinGFMaxGFAvgGAMinGAMaxGAD1%D2%D3%WC1%WC2%Playoff%
NYI6488 - 9912024920130423718429024%22%15%6%7%73%
CAR5787 - 9812027521233726220731623%19%16%6%6%69%
NYR6084 - 9612025820531225420531215%15%14%7%6%59%
N.J5983 - 9512225619831925520531914%13%14%6%6%53%
PIT5983 - 9411525920030926020831112%12%14%5%8%51%
WSH5781 - 931182481993032532033108%11%14%6%6%45%
PHI5276 - 881102471893192682163233%5%7%4%5%23%
CBJ5174 - 861102391932872662063192%3%6%3%4%18%
[TBODY] [/TBODY]

CENTRAL DIVISION

TeamMinPtsPoint RangeMaxPtsAvgGFMinGFMaxGFAvgGAMinGAMaxGAD1%D2%D3%WC1%WC2%Playoff%
COL7296 - 10712727522233423418128759%20%10%3%2%94%
NSH6184 - 9612024819330124319129611%18%17%7%6%58%
DAL5784 - 951192421953052401852969%16%16%7%7%55%
WPG6084 - 951202481983102461933019%15%16%6%7%53%
STL5781 - 931162431912942502013155%10%14%6%6%41%
CHI5880 - 921162451793002542063124%10%12%6%6%38%
MIN5378 - 901132421882972572043193%7%9%4%6%29%
ARI5475 - 861122391912932662133251%4%6%3%3%17%
[TBODY] [/TBODY]

PACIFIC DIVISION

TeamMinPtsProjPointRangeMaxPtsAvgGFMinGFMaxGFAvgGAMinGAMaxGAD1%D2%D3%WC1%WC2%Playoff%
VGK7195 - 10613127321033623418329148%22%13%5%4%92%
SEA6690 - 10212325220330923017628123%23%18%9%6%79%
EDM6084 - 951172642053282622083267%13%15%8%8%52%
VAN5382 - 941242532033112552043186%10%13%9%8%46%
S.J5882 - 941192562043182582083235%9%12%8%9%44%
L.A5582 - 931142502003162541973125%10%12%8%9%44%
CGY5782 - 931142512003082561993155%9%11%8%8%41%
ANA5175 - 871102401812962632123221%3%5%4%5%18%
[TBODY] [/TBODY]



 
Nice work.

This table passes the commonsense test for me in that nothing really leaps out at me as being unreasonable. The only quibble is Seattle, but they're essentially unknowable at this stage and after how Vegas came into the league it's reasonable to assume that Seattle could also come out of the gate swinging.
 
What happens if we simulate the season as if Pettersson and Hughes hold out past December 1st? I'm just curious to see how your model predicts the impact of these two players on our team.
 
What happens if we simulate the season as if Pettersson and Hughes hold out past December 1st? I'm just curious to see how your model predicts the impact of these two players on our team.

I don't have a mechanism for doing partial seasons at the moment. That would require a bit of a re-write as the model assumes the same roster for the entire season, which is obviously unrealistic but at the same time I cannot foresee what kind of injuries and trades are going to take place during the season so this will always be a limitation.

Having said that I can say that without these players the Canucks are basically 2nd-worst in their division, still finishing ahead of Anaheim. I would have them about ~25th in the NHL in differential compared to the ~17th I now have them with the two players.
 
  • Like
Reactions: timw33 and Lindgren
I don't have a mechanism for doing partial seasons at the moment. That would require a bit of a re-write as the model assumes the same roster for the entire season, which is obviously unrealistic but at the same time I cannot foresee what kind of injuries and trades are going to take place during the season so this will always be a limitation.
I shouldn't have tried to be so cute with what I was asking. I picked December 1st because after that date even if we signed Pettersson and Hughes they couldn't play for us.

Having said that I can say that without these players the Canucks are basically 2nd-worst in their division, still finishing ahead of Anaheim. I would have them about ~25th in the NHL in differential compared to the ~17th I now have them with the two players.
That's a huge drop for only two players. It really illustrates that losing your two best players for an entire season has dire consequences in the NHL.
 
Briefly glanced through the rankings. Definitely surprised by Winnipeg's rankings. I would definitely have them ahead of Calgary.
 
My apologies, there is a lot of work done.

One stat that seems to stand out year after year that correlates with the standings is the goals for/against. For a quick glance it is pretty accurate.
 
that is a solid effort. tough to put much weight on projections based on extrapolating divisional play in a shortened season but nice to see how it looks.

Overall the results are pretty accurate except that I think the Kraken are way too high and the Jets too low.

Of course injuries and other stuff will happen (or not happen like an Eichel trade) so it will be very interesting to see how it all pans out.
 
This is very interesting Melvin. I'm assuming you've run a number of sims, the projected point ranges seem very conservative. How did you account for random factor, I wonder?
 
This is very interesting Melvin. I'm assuming you've run a number of sims, the projected point ranges seem very conservative. How did you account for random factor, I wonder?

Fundamentally it is based on the scoring rates and allowing rates of the teams.

Suppose a team scores 2.55 goals per game and is facing a team that allows 3.15 goals per game. The adjusted scoring rate of our 2.55-scoring team can be calculated as NHL Average * (GF / NHLAverage) * (Opponent GA / NHL Average)

So plugging in an NHL average of 2.9 goals per game, we get 2.9 * 2.55 / 2.9 * 3.15/2.9 = 2.76.

You do this for each team and you get the expected number of goals for each side for the given game.

From there, you can use Poisson to basically calculate the chances that the team scores a certain number of goals.

For example, our team which is expected to score 2.76 goals has a (2.76^0 * e^-2.76 )/0! ~= 6% chance of scoring 0 goals.
2.76^1 * e^-2.76 )/1! ~= 17% chance of scoring 1 goals
2.76^2 * e^-2.76 )/2! ~= 23% chance of scoring 2 goals

... and so forth. So we generate a random number between 0 and 1 and if that number is below 0.06 then our team scores 0 goals, if it's below .17 they score 1 goal and so on. So then it's just a simple matter of running through the schedule, calculating the expected scoring rate of each side for each team for each game, and generating random numbers. The randomness plays a very large factor because teams are not really that far apart in reality. Most teams are pretty close to the average of 2.9 goals/game and so there is going to be a lot of fluctuation. If the league were wider in terms of its talent, i.e. if there were teams scoring 5 goals/game and teams scoring 1 goal/game then you would see far more certainty, but also we wouldn't need math since it would be obvious.

In reality the difference between a bad NHL team and a good NHL team is not really as wide as people think, which is why 1-game upsets are relatively common. If you simulate the season 10,000 times, you're going to have weird results where Anaheim somehow got insanely lucky and won the division in some of them.

The fun thing about this is that in real life we only run the season once. So if our season happens to be the 1 in 10,000 where Anaheim won the division then I would be "wrong" even though that happened in a few of my sims as well! And it cuts both ways. I could be completely incorrect about all these rankings and still we happen to get the season that lines up perfectly with my most-common sims.

Anyway, that was a ramble but I hope it answers some of your question.

EDIT: Also I found a bug in my code that doesn't really affect the rankings but does affect the point ranges at the extremes. I think this is why the ranges seemed so conservative. In reality Colorado should have been 108-118 range and Arizona should be 65-77 range. Will post new numbers closer to season opening.

EDIT2: I forgot to mention I also factor in a small home-ice advantage of about 5%.
 
Last edited:

Users who are viewing this thread

Ad

Ad