TestParameterizedRater

This is just a slightly-edited email. I hope to replace it with something readable shortly.

I've sort of been dreading this — someone encountering my ratings and asking me to explain them — since they're more complicated than they really need to be. I started doing them one way, modified it a little, modified it a little more, and so forth. At some point I should refactor them completely, but I want to start by saying that I know this is convoluted.

Also, I tune the ratings for probabilities rather than for point spread. If you look at a team page, you'll see scores of games that have been played and probabilities for games that have not been played. This is the probability of a victory conditional on a non-tie. For the CFL, you can treat this as the probability of a victory — for soccer, where ties are more common, the distinction is important. So the computer says Hamilton has about a 1% chance of winning tomorrow night (I think it's a little bit overconfident in this prediction). For a neutral field, these probabilities can be calculated directly from the ratings — a team rated 10 points lower has 10:1 odds against winning, a team rated 20 points lower has 100:1 odds, a team rated 5 points lower has about 3.16:1 odds, 3.16 being roughly the square root of ten.

That said, you can impute a point-spread, but (as I said) it's convoluted. Margin of victory is a significant factor in my rating method, so what you want to do is to reverse-engineer the ratings. Here's how the ratings are calculated: each game that Hamilton has played gets a game rating. The game rating is the rating of Hamilton's opponent, plus the win bonus if Hamilton won (or minus the win bonus if Hamilton lost), plus or minus the margin of victory (depending, again, on who won; also, if the margin of victory is larger than the point limit, we treat it as if it were only the point limit), plus or minus the home field advantage (depending on which team is home). The ratings of Hamilton's games are averaged to produce Hamilton's rating. It's a weighted average, though, which is where the "expected result multiplier" and "decay" come in — games that are won (lost) that would lower (raise) a team's rating are reduced in weight, as are games played less recently. The probability factor scales the rating such that a ten-point rating difference gives ten-to-one odds. Lastly, there's "tolerance". Since a team's rating depends on their opponents' ratings, and its opponents' ratings depend on its rating, the computer iterates, calculating each team's rating again and again until they don't change very much with each iteration. That "not very much" is the tolerance.

So, reverse engineering the ratings to get a point spread: start by taking the difference between the two teams ratings (58.69-42.59=16.10) and divide by ten (1.61). Multiply by the probability factor (1.61*17.45=28.0945). Subtract the win bonus (28.1-1.3=26.8) and add the home-field advantage (26.8+5.4=32.2). BC is favored by roughly 32 points.

steven@stevenjens.com | Steven's home page | Ratings Home