1. #1
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Help with Hockey Model

    I'm working on a Pythagorean theorem based model - goals for versus goals against.

    I have goals for, goals against, and goal difference for every team.

    So for the Bruins its 2.67 goals for per game and 2.50 goals against per game for a 0.17 goal differential.

    When you add up the goal differentials for all of Boston opponents it comes out to -2.14 which seems really high to combine into Bostons goals for and goals against numbers.

    How should I combine a teams opponents into their goals for and goals against numbers.

    Should I average them instead? The final numbers make a lot more sense like that.
    Last edited by Stocks; 11-01-14 at 06:20 PM.

  2. #2
    Axis
    3minutedrill.com
    Axis's Avatar Become A Pro!
    Join Date: 01-08-09
    Posts: 1,255
    Betpoints: 918

    Goal scoring is such a random event in a hockey game...I'd probably focus a model on something different.

    If you're going this route, I'd use the averages.

  3. #3
    a4u2fear
    TEASE IT
    a4u2fear's Avatar Become A Pro!
    Join Date: 01-29-10
    Posts: 8,147
    Betpoints: 35459

    I don't know a lot about pythagorean models but I hope you've at least considered the following:

    Splitting out goals for and against for home/away.

    Compare the team averages to the league average and then adjust accordingly.

    In my own personal research I've found that moving averages are VERY GOOD when modeling the NHL. There are lots of games and EVERY TEAM goes on many game losing streaks (while scoring very few goals). So a team that scored a lot in the beginning, it may not make a ton of sense to include those numbers in your current average.

  4. #4
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Thanks fellas

    I plan to split home/away once a few more games are played and the numbers are more accurate. For now I'm going use .30 goal difference for home/away and adjust that up or down slightly for say a team like the Minnesota Wild are probably better then home on average and worst on the road then average compared to their overall record.

    I'm also going to use exponential smoothing for goals for and against so it will adjust to hot and cold streaks more then just using averages.

    That's going to be the basics of the model and I do plan to track some other stuff and then just use good old handicapping for the final numbers.

  5. #5
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    Honestly, I would use medians as opposed to averages. Just my 2 cents.

  6. #6
    a4u2fear
    TEASE IT
    a4u2fear's Avatar Become A Pro!
    Join Date: 01-29-10
    Posts: 8,147
    Betpoints: 35459

    Quote Originally Posted by James Marques View Post
    Honestly, I would use medians as opposed to averages. Just my 2 cents.
    In hockey? Crazy? In a game where where 2 or 3 goals are almost always scored, it would be useless to use 2 or 3 as a standard. It's different in the nfl where there are many more points scored and it is drastic from week to week, but in the nhl you have tons of games and very little change to goals scored

  7. #7
    Miz
    Miz's Avatar Become A Pro!
    Join Date: 08-30-09
    Posts: 695
    Betpoints: 3162

    db cooper

  8. #8
    Miz
    Miz's Avatar Become A Pro!
    Join Date: 08-30-09
    Posts: 695
    Betpoints: 3162

    db cooper

  9. #9
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    What do you guys think about capping blowout losses? And when I say capping I don't mean handicapping I mean taking a 9-0 win and readjusting it down to say 6-0 or 7-0.

    This is obviously a bigger deal in football with so few games one blowout win or loss will skew the numbers too much and in hockey it will skew the numbers but I wonder how much of a difference it will make.

  10. #10
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    Quote Originally Posted by a4u2fear View Post
    In hockey? Crazy? In a game where where 2 or 3 goals are almost always scored, it would be useless to use 2 or 3 as a standard. It's different in the nfl where there are many more points scored and it is drastic from week to week, but in the nhl you have tons of games and very little change to goals scored
    Well, in just a 2 second glance of last year's stats:

    Team Goals Against Average (League Avg): 2.690
    Team Goals Against Average (League Median: 2.699

    Probably not enough of a difference to be significant. But again, I know nothing about hockey. But I'd be willing to bet if you used the league median rather than the league average for all the relevant stats (penalty/penalty kill, home/away, etc), your standard error would be reduced significantly.

  11. #11
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    I just finished up my model and here are the first results

    St Louis Blues 2.67 (-172)
    NY Rangers 2.03

    The numbers after each team are expected goals.

    Well I do like the fact it's telling me to bet St Louis but -172 is a bit high I would have like to see between -140 and -150.

  12. #12
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    How did you arrive at those numbers? I know you said Pythagorean, but did you use a Log5 formula (or some variation of it) to compare the offensive stats for each team vs the defensive stats for each team? Just curious.

  13. #13
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Quote Originally Posted by James Marques View Post
    How did you arrive at those numbers? I know you said Pythagorean, but did you use a Log5 formula (or some variation of it) to compare the offensive stats for each team vs the defensive stats for each team? Just curious.
    For my final numbers I had

    St Louis 2.53 goals for and 1.98 goals against
    Rangers 2.58 goals for and 3.03 goals against

    So I divided St Louis goals for (2.53) in league average (2.72) = 0.93 then multiply that by Rangers goals against (3.03) = (2.82)

    I did the same with New York and got 1.88.

    Once I got those numbers I added 0.15 to New York and subtracted 0.15 from St Louis for home ice advantage.

    So then that gives me

    St Louis 2.67
    New York 2.03

    Would this method be correct?

  14. #14
    yak merchant
    yak merchant's Avatar Become A Pro!
    Join Date: 11-04-10
    Posts: 109
    Betpoints: 6170

    Correct? I don't know, I'm not smart of enough to figure it out close form, and from some limited testing I think it is close but no cigar. When I first used Bill James log5 years ago in a baseball model, I did some half ass backtesting to validate it worked for strikeout percentages or some other baseball stat other than batting average (that was plastered all over the internet) and it seemed to hold. I would love to hear if anyone has ever done any validation for "non-percentages" (i.e. hockey goals, YPC, Soccer goals etc). When I first tried, I tried converting everything to "percentage" of league average and plugging it into log5. Fail. I've used the exact same formula as Stocks above but in my limited testing it seems that near the league average it underestimates and overestimates when you get too far from league average. i.e. if league average is 2.72 and team A offense is 2.9 and team B defense is 2.9 it predicts 3.09 (which from some football stats testing seems to be a tad low). However if league average is 2.72 and Team A offense is 5 and team B defense is 6 the formula works out to 11.02. Which might work for hockey (I doubt it), but from some YPC testing seems a bit too exaggerated. So I too, would love to hear any experiences with "log5" for whole numbers.

  15. #15
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    Quote Originally Posted by Stocks View Post
    For my final numbers I had

    St Louis 2.53 goals for and 1.98 goals against
    Rangers 2.58 goals for and 3.03 goals against

    So I divided St Louis goals for (2.53) in league average (2.72) = 0.93 then multiply that by Rangers goals against (3.03) = (2.82)

    I did the same with New York and got 1.88.

    Once I got those numbers I added 0.15 to New York and subtracted 0.15 from St Louis for home ice advantage.

    So then that gives me

    St Louis 2.67
    New York 2.03

    Would this method be correct?
    I think so, except I would use the league average (again I prefer median, but average is probably fine) goals against, not goals for. However, I doubt a model could be that simple and be profitable long-term. For instance, what if the Rangers goals against average is so high because of the high degree of competition they have faced (and vice versa for St. Louis)? You need some way to account for that. When I do college football modeling, not only to I look at each team's stats - I also create a power rating system to use as a weighting structure for those stats. I don't exactly know how you would go about doing that for hockey (I don't really do much modeling for pro sports outside of the NBA), but I would strongly advise you to look into it.

    By the way, I did tail your St. Louis pick last night for solidarity's sake. Thanks for the winner!

  16. #16
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Quote Originally Posted by James Marques View Post
    I think so, except I would use the league average (again I prefer median, but average is probably fine) goals against, not goals for. However, I doubt a model could be that simple and be profitable long-term. For instance, what if the Rangers goals against average is so high because of the high degree of competition they have faced (and vice versa for St. Louis)? You need some way to account for that. When I do college football modeling, not only to I look at each team's stats - I also create a power rating system to use as a weighting structure for those stats. I don't exactly know how you would go about doing that for hockey (I don't really do much modeling for pro sports outside of the NBA), but I would strongly advise you to look into it.

    By the way, I did tail your St. Louis pick last night for solidarity's sake. Thanks for the winner!
    lol thanks the Blues were a pick for me even before I did the model.

    By the way I do account for competition and some other things I put those into my numbers before I divide and multiple them with opponents. I am thinking about doing something a little different with my competition numbers I'm just not sure how I'm going implement it yet. After I run the numbers for today I might make that change and compare it seeing there's a lot of games today.

  17. #17
    charris0528
    charris0528's Avatar Become A Pro!
    Join Date: 11-04-14
    Posts: 1

    3 solid plays tonight using this model

    St Louis (2.71) @ New Jersey (2.29) ***Blues -105***Toronto (3.84) @ Arizona (2.54)*** Leafs -105***Nashville (1.80) @ Winnipeg (1.38) ***Under 5.5***

  18. #18
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    Quote Originally Posted by Stocks View Post
    lol thanks the Blues were a pick for me even before I did the model.

    By the way I do account for competition and some other things I put those into my numbers before I divide and multiple them with opponents. I am thinking about doing something a little different with my competition numbers I'm just not sure how I'm going implement it yet. After I run the numbers for today I might make that change and compare it seeing there's a lot of games today.
    Best of luck. Someone will no doubt come into this thread and beat you over the head about back-testing. I won't be foolish enough to say ignore them, but don't focus too heavily on it. Track all the games, all of your picks, totals, etc on a spreadsheet. Compare it to the Vegas line every week. If you want to use it to bet right now, sure go for it. Be very careful early on though. I didn't make a single college football bet for almost 3 years when I built my model (well, I'm lying... I did bet, just not solely based on what my model said); instead, I simply tracked everything. My numbers vs Vegas numbers, means, medians, mode, standard deviation, mean square error, bias.... everything. I learned that my model is not as good as Vegas's numbers, not by any stretch. But I found that some of the biases my model had could be used to my advantage. For instance, my model has a heavy bias towards favorites covering. After a few years of tracking that, I realized that when it does pick a dog to win outright (usually about 8 or so a week), it was hitting almost exactly 50% on those bets. Any gambler will tell you if you're only picking dogs ML and getting close to a 50% hit rate, you're making money. Now, those are pretty much the only sides bets I make. If your model is any good, you'll really see the pay off in betting totals.

    Again, you're not gonna find an easy score modeling sports. But over time, you'll start to see where your model succeeds and where it fails. The most important aspect isn't so much the back-testing... it's the testing and tracking as you go along. Even if you don't have a nickel on the Bruins game, you should feel like you do because your model said they would win. The second most important thing: while you're tracking, don't lie to yourself. You pick a day/time to measure your numbers against the line at that moment. You can use opening lines, closing lines, mid-day, whatever... but they all need to be the same. You can't ignore the line in one game moving against you while at the same time taking another number that's moving in your favor. It'll make you think your model is radically successful, when in reality it actually is not.

  19. #19
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Thanks for the advise James.

    Here's todays lines with no extra handicapping put into it just by the numbers.

    Edmonton 2.81
    Philadelphia 4.04 (-207) I do like Philly tonight pre model

    Carolina 2.32
    Columbus 3.28 (-199)
    Columbus has some major injury problems line not adjusted for that.

    St Louis 3.12 (-167) I also like St Louis tonight pre model
    New Jersey 2.41

    Detroit 2.74 (-131) Pretty close to actual line.
    Ottawa 2.40

    Nashville 1.82 (-169) Nashville was one of my plays of the night pre model
    Winnipeg 1.40

    Vancouver 2.69
    Colorado 3.03 (-127) close to actual line

    Calgary 3.37 (-154) This one is interesting to me.
    Washington 2.71

    Florida 1.15
    Boston 2.34 (-415) I like the Bruins but -415 is a bit much (not counting injurys)

    Chicago 1.87
    Montreal 1.94 (-107) Probably what the actual line should be.

    Pittsburgh 2.72
    Minnesota 2.97 (-118) With a little extra home ice line would be very close.

    Los Angeles 2.57
    Dallas 2.95 (-131) I like this line.

    Toronto 3.47 (-190) Leafs deserves to be favored but -190 a bit high
    Arizona 2.52

  20. #20
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    So it seems like using Pythagorean on each team to get winning % for each side then use log5 gets much more accurate results.

    For the Toronto at Arizona game I had

    Toronto 2.58 goals for and 2.55 goals against
    Arizona 2.67 goals for and 3.63 goals against

    Using Pythagorean

    Toronto 50.6%
    Arizona 35.1%

    Then use log5

    Toronto 57.4% or -134

    For the Bruins game I still got a high number -379 but it was lower then before. Did they deserve to be that big a favorite? probably not I could have adjusted the goals for and against slightly for some key injuries on offense and defense which would have brought it down some and that may have been a pretty good line. The Panthers do suck and I had them as having the easiest schedule in the league by far.

    The Calgary and Washington game I actually got the exact same number -154.

    I do like this method better for getting the final line its a lot more accurate.



  21. #21
    James Marques
    James Marques's Avatar Become A Pro!
    Join Date: 03-04-14
    Posts: 1,605
    Betpoints: 3692

    I think you're onto something here. Nice work.

  22. #22
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Here are the results for today

    Montreal -186
    Buffalo

    NY Islanders
    Anaheim -410

    Detroit -163
    NY Rangers

    And here are the results after I changed my strength of schedule format.

    Montreal -176
    Buffalo

    NY Islanders
    Anaheim -376

    Detroit -146
    NY Rangers

    1. I think the Montreal line is pretty dead on.

    2. Anaheim line is obviously high even without the Ducks injury problems.

    3. I actually like New York to win tonight but that has nothing to do with numbers just my gut. As for the line seems high for Detroit. I'm guessing Bookmakers are using some of last years stats for the Rangers especially on defense where my lines are 100% based on this season.

    Any thoughts or feedback is definitely welcome.

  23. #23
    Axis
    3minutedrill.com
    Axis's Avatar Become A Pro!
    Join Date: 01-08-09
    Posts: 1,255
    Betpoints: 918

    Are you accounting for backup goalies starting? Like tonight Gus is starting for Detroit and Montreal is trotting their backup out there as well.

  24. #24
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Quote Originally Posted by Axis View Post
    Are you accounting for backup goalies starting? Like tonight Gus is starting for Detroit and Montreal is trotting their backup out there as well.
    No these are just base numbers using goals for and goals against. To account for goalies or injuries or whatever else I would adjust the goals for or goals against like say if Montreal's goals against were 3.15 and Price wasn't starting I would probably adjust it up to like 3.20 or something like that depending on the situation.

    As for injuries and what not is there any advice on how much to account for certain players? Say if Crosby was out for the Penguins how much would you adjust the Penguins offensive numbers?

  25. #25
    DrunkHorseplayer
    Redskins forever
    DrunkHorseplayer's Avatar Become A Pro!
    Join Date: 05-15-10
    Posts: 7,208
    Betpoints: 19669

    Quote Originally Posted by Stocks View Post
    What do you guys think about capping blowout losses? And when I say capping I don't mean handicapping I mean taking a 9-0 win and readjusting it down to say 6-0 or 7-0.

    This is obviously a bigger deal in football with so few games one blowout win or loss will skew the numbers too much and in hockey it will skew the numbers but I wonder how much of a difference it will make.
    If you're going to try and formulate a hard-core system, you should completely eliminate all blowouts, win or lose.

  26. #26
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Quote Originally Posted by DrunkHorseplayer View Post
    If you're going to try and formulate a hard-core system, you should completely eliminate all blowouts, win or lose.
    Why completely eliminate blowouts? Would'd it be better to cap it instead.

    Say if the Penguins won 9-0 why take away all credit for that game they still played really good. I figured it would be better to somehow cap the amount of goals at say 6 or 7.

  27. #27
    trytrytry
    All I do is trytrytry
    trytrytry's Avatar SBR PRO
    Join Date: 03-13-06
    Posts: 23,506
    Betpoints: 273683

    Quote Originally Posted by a4u2fear View Post
    I don't know a lot about pythagorean models but I hope you've at least considered the following:

    Splitting out goals for and against for home/away.

    Compare the team averages to the league average and then adjust accordingly.

    In my own personal research I've found that moving averages are VERY GOOD when modeling the NHL. There are lots of games and EVERY TEAM goes on many game losing streaks (while scoring very few goals). So a team that scored a lot in the beginning, it may not make a ton of sense to include those numbers in your current average.

    Whoa move this person to the "Read everything and go back and read every past post category"..

    ok note made

  28. #28
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Here are todays results. Still a lot of really big favorites and dogs. I don't mind if it gives me opinionated results makes it easier to bet if it picks the right side but I still think I'm missing something to make things a little more evened out. Maybe it's still too early in the season to be 100% using this regular season results.

    Edmonton
    Boston -256

    Minnesota
    Ottawa +132

    New Jersey
    St Louis -273

    Nashville
    Dallas +182

    NY Islanders
    LA Kings -151

    Florida
    Philadelphia -320

    Calgary
    Tampa Bay -114

    Pittsburgh
    Winnipeg +286

    Toronto
    Colorado +102

    Vancouver
    San Jose -121

  29. #29
    flsaders85
    flsaders85's Avatar Become A Pro!
    Join Date: 11-06-11
    Posts: 68
    Betpoints: 5253

    As pointed out in earlier posts, factoring for player injuries, minor leaguers, etc NEEDS to be accounted for. This is something that is also applicable for basketball and baseball. Using team based stats won't give you an edge IMO.

    With this said, here's my take on a player based model for NHL that I use:

    1. Learn to make your own player projections or acquire from another source. The important player stats for skaters IMO are projected shots, goals, missed shots, blocked shots. For goales, projected shots against and save %.
    2. You must make some sort of prediction of a team's forwards, defense, and goalie for a given game.
    3. Learn what Corsi and Fenwick are....and how those translate to actual Shots on Goal and Goals. Basically, this is what I am predicting when I simulate a game using my projected lineups and projected player stats.
    4. Learn how to develop a Monte Carlo simulation or use regression analysis to develop this sort of model.

    Again, this is all opinion and what I use. You'll realize when you can actually predict a game using a method similar to this, your lines will be more accurate to closing lines. Not poking fun here, but Anaheim won't be -410 over the Islanders...I actually had Anaheim as a -130 fave after Perry and Getzalf illnesses were announced.

  30. #30
    Stocks
    Stocks's Avatar Become A Pro!
    Join Date: 11-01-10
    Posts: 569
    Betpoints: 2984

    Quote Originally Posted by flsaders85 View Post
    As pointed out in earlier posts, factoring for player injuries, minor leaguers, etc NEEDS to be accounted for. This is something that is also applicable for basketball and baseball. Using team based stats won't give you an edge IMO.

    With this said, here's my take on a player based model for NHL that I use:

    1. Learn to make your own player projections or acquire from another source. The important player stats for skaters IMO are projected shots, goals, missed shots, blocked shots. For goales, projected shots against and save %.
    2. You must make some sort of prediction of a team's forwards, defense, and goalie for a given game.
    3. Learn what Corsi and Fenwick are....and how those translate to actual Shots on Goal and Goals. Basically, this is what I am predicting when I simulate a game using my projected lineups and projected player stats.
    4. Learn how to develop a Monte Carlo simulation or use regression analysis to develop this sort of model.

    Again, this is all opinion and what I use. You'll realize when you can actually predict a game using a method similar to this, your lines will be more accurate to closing lines. Not poking fun here, but Anaheim won't be -410 over the Islanders...I actually had Anaheim as a -130 fave after Perry and Getzalf illnesses were announced.
    Thanks bud I'll look into everything you mentioned.

  31. #31
    DrunkHorseplayer
    Redskins forever
    DrunkHorseplayer's Avatar Become A Pro!
    Join Date: 05-15-10
    Posts: 7,208
    Betpoints: 19669

    Quote Originally Posted by Stocks View Post
    Why completely eliminate blowouts? Would'd it be better to cap it instead.

    Say if the Penguins won 9-0 why take away all credit for that game they still played really good. I figured it would be better to somehow cap the amount of goals at say 6 or 7.
    Because blowouts usually happen in circumstances that you simply can't predict; one team phones it in, lucky breaks, etc.

Top