Horse Racing Forum - PaceAdvantage.Com - Horse Racing Message Board

Go Back   Horse Racing Forum - PaceAdvantage.Com - Horse Racing Message Board > Thoroughbred Horse Racing Discussion > Handicapper's Corner


Reply
 
Thread Tools Rate Thread
Old 06-04-2022, 07:46 AM   #1
zerosky
Registered User
 
Join Date: Feb 2004
Location: uk
Posts: 369
Ratings to Odds (using ELO)

I came across this interesting application, in the chess world they use ratings to distribute points between players depending on the strength of the opposition as opposed to sports teams which usually allocate fixed points.

As a by-product it also produces probabilities of winning for each player and has been extended for multi-player competitions. The calculation is a bit fearsome so I have attached a spreadsheet with an example race (Belmont R2 4th of June) using Prime Power ratings.

The benefits of this system is that it seems to hold for any kind of ratings, as it calculates the differences in ratings between each horse and all the other horses in the field. The outputs are probabilities for each horse and always sums to 1.

The general principles race laid out in the following two links, for the second link scroll to page 31 for the ELO bit.

http://sradack.blogspot.com/2008/06/...e-players.html

https://docplayer.net/49047524-Predi...ensorflow.html
Attached Files
File Type: xlsx ELO Rating.xlsx (29.2 KB, 104 views)
zerosky is offline   Reply With Quote Reply
Old 06-04-2022, 08:32 AM   #2
ranchwest
Registered User
 
Join Date: Oct 2001
Location: near Lone Star Park
Posts: 5,147
Have you seen Tom's Ultimate Odds Line? It includes BRIS Prime Power.
__________________
Ranch West
Equine Performance Analyst, Quick Grid Software
ranchwest is offline   Reply With Quote Reply
Old 06-04-2022, 10:42 AM   #3
Michael
Registered User
 
Michael's Avatar
 
Join Date: Jun 2007
Location: Long Island, NY
Posts: 753
This is a lot of fun to play around with while drinking my morning coffee

Solid work Zerosky The one issue I see is that for some reason it's under-stating the lowest / slowest figure horse. (ie. your spreadsheet has fotius at 15,444.90? (an easy fix is to make a reasonable plug to populate Si & Pi)

All the cells seem to be correct as I put in the prime power figures for this past Kentucky Derby. I took the liberty to exclude the Japanese horses as there's no Bris prime numbers to use. I just included rattle and roll and ethereal road in replacement. Then, to normalize the under-statement of the slowest horse.. I made rich strike the same power as Ethereal road and at best Rich Strike should have been $126.86 / 1 according to this chess elo spreadsheet.

I also plugged the numbers for the top 7 chess players... and apparently you would need over 6/1 on Fabiano Caruana to beat Magnus Carlsen if they played in a tournament. (Fabiano - put up a fantastic fight in the world championships - I would assume Caruana is underrated currently for elo purposes)
Michael is offline   Reply With Quote Reply
Old 06-05-2022, 02:08 AM   #4
zerosky
Registered User
 
Join Date: Feb 2004
Location: uk
Posts: 369
I tried normalizing the data which does bring in the odds on the outlier quite substantially but decided to keep the data untransformed. I see the line as a starting point not an end point. Lets hope those Chess boys don't turn their hand to the horses.
zerosky is offline   Reply With Quote Reply
Old 06-07-2022, 04:35 AM   #5
proximity
Registered User
 
proximity's Avatar
 
Join Date: Jan 2008
Location: pen
Posts: 4,570
Quote:
Originally Posted by zerosky View Post
Lets hope those Chess boys don't turn their hand to the horses.
they get their kicks above the waistline, sunshine!

seriously i'm a little out of practice but i wonder how these lines made from ratings in kilograms would compare to lines using older school methods like don scott's table of advantages to chances??
proximity is offline   Reply With Quote Reply
Old 06-07-2022, 01:43 PM   #6
Gorrex
Registered User
 
Join Date: Apr 2008
Location: Louisville
Posts: 278
I wrote an ELO rating system into AmWager a couple years ago but never fully published/finished it.

It is/was similar to ELO systems used in multiplayer-games that compares entrants to each other based on finish. 1st wins vs 2nd. 2nd wins vs 3rd but loses vs 1st and so on down the line.

Ran it on the runners, jockeys and trainers.

The problem I ran into was being and to reliably and programmatically get the full order of finish instead of top X (4-5). Ended up making it so anyone finishing past top X was considered as a loser to the last known finisher.

May have to revisit it and get the last little bit of work done on it.
__________________

Jason Martin
IT Director
AmWest Entertainment - AmWager
Gorrex is offline   Reply With Quote Reply
Old 06-07-2022, 03:28 PM   #7
Dave Schwartz
 
Dave Schwartz's Avatar
 
Join Date: Mar 2001
Location: Reno, NV
Posts: 16,873
Quote:
Originally Posted by Gorrex View Post
I wrote an ELO rating system into AmWager a couple years ago but never fully published/finished it.

It is/was similar to ELO systems used in multiplayer-games that compares entrants to each other based on finish. 1st wins vs 2nd. 2nd wins vs 3rd but loses vs 1st and so on down the line.

Ran it on the runners, jockeys and trainers.

The problem I ran into was being and to reliably and programmatically get the full order of finish instead of top X (4-5). Ended up making it so anyone finishing past top X was considered as a loser to the last known finisher.

May have to revisit it and get the last little bit of work done on it.
That's wonderful.
Dave Schwartz is online now   Reply With Quote Reply
Old 06-07-2022, 04:17 PM   #8
classhandicapper
Registered User
 
classhandicapper's Avatar
 
Join Date: Mar 2005
Location: Queens, NY
Posts: 20,527
Quote:
Originally Posted by Gorrex View Post
The problem I ran into was being and to reliably and programmatically get the full order of finish instead of top X (4-5). Ended up making it so anyone finishing past top X was considered as a loser to the last known finisher.

May have to revisit it and get the last little bit of work done on it.

I'm not sure I understand exactly what you are saying here, but I may have had a similar problem with regression analysis using Excel (I was a beginner).

I tried to use Excel to weigh several factors and produce more winners, but I was struggling with finish position. It was producing results that maximized the order of finish from 1st to last, but I wasn't interested in getting 7th, 8th, and 9th more accurate. I was only interested in getting more winners and maybe in the money finishes. Eventually I dropped the project because I was getting better results using trial and error than I was able to get from Excel. Someone with more experience probably could have figured it out.
__________________
"Unlearning is the highest form of learning"

Last edited by classhandicapper; 06-07-2022 at 04:20 PM.
classhandicapper is online now   Reply With Quote Reply
Old 06-07-2022, 04:47 PM   #9
zerosky
Registered User
 
Join Date: Feb 2004
Location: uk
Posts: 369
It's an interesting seam to mine, I was thinking along the lines of a class rating. In chess the calculated points ae awarded to the winning player He will gain more points from a higher ranked player than a lower ranked player.

Taking the example in the spreadsheet with the vet scratch of the five horse (Scorpion Dynasty) leaves the following available points.

Irish Giant - 2
Brunate - 2.9
London Gold - 0.9
Alfie Solomons - 4.7
Road to Success - 4.2
Fotis - 0

The winner was Alfie Solomons so he would get the points from each of the other horses a total of 10.2 added to his rating, each horse would only lose their allotted points from their rating. Obviously as these particular numbers are a power rating none of these calculations are applicable.

The class rating would have to start from scratch with the entire database of all horses so it will have to remain theoretical, a bit like poor old Fotis's chance of winning a race. Since breaking his maiden in July 2019 he has raced 37 times without success in fact its 32 races since he was in the money. If I was rich I would buy him and turn him out into a nice big field.
zerosky is offline   Reply With Quote Reply
Old 06-09-2022, 01:30 AM   #10
ARAZI91
Registered User
 
Join Date: May 2016
Posts: 89
Quote:
Originally Posted by classhandicapper View Post
I'm not sure I understand exactly what you are saying here, but I may have had a similar problem with regression analysis using Excel (I was a beginner).

I tried to use Excel to weigh several factors and produce more winners, but I was struggling with finish position. It was producing results that maximized the order of finish from 1st to last, but I wasn't interested in getting 7th, 8th, and 9th more accurate. I was only interested in getting more winners and maybe in the money finishes. Eventually I dropped the project because I was getting better results using trial and error than I was able to get from Excel. Someone with more experience probably could have figured it out.
Converting actual FinPos to a FinPos metric may help here- here's a couple of relatively simple ones although there are more sophisticated ones but they usually all correlate to some degree when run over large datasets - PRB (Percentage of Rivals Beaten) and PRB^2 (Percentage of Rivals Beaten Squared) - the squared version may suit your needs as squaring acts as an exponent and a tuning parameter with ^2 being a reasonable generic, in most analysis the 4th place carries more information than say 9th or 10th. "Par" (averaged over datasets) for both is ~ 50.00% for PRB and ~ 35.00% for PRB^2. At the core of these metrics is basic Head2Head type analysis. See attached-

Attached Images
File Type: png Screenshot 2022-06-09 05.43.53.png (39.2 KB, 52 views)
ARAZI91 is offline   Reply With Quote Reply
Old 06-09-2022, 02:00 AM   #11
ARAZI91
Registered User
 
Join Date: May 2016
Posts: 89
Quote:
Originally Posted by ARAZI91 View Post
Converting actual FinPos to a FinPos metric may help here- here's a couple of relatively simple ones although there are more sophisticated ones but they usually all correlate to some degree when run over large datasets - PRB (Percentage of Rivals Beaten) and PRB^2 (Percentage of Rivals Beaten Squared) - the squared version may suit your needs as squaring acts as an exponent and a tuning parameter with ^2 being a reasonable generic, in most analysis the 4th place carries more information than say 9th or 10th. "Par" (averaged over datasets) for both is ~ 50.00% for PRB and ~ 35.00% for PRB^2. At the core of these metrics is basic Head2Head type analysis. See attached-
One slight downfall of both these metrics are that winners receive the same value no matter the FS - a winner beating 4 rivals receives 100% , the same as a winner beating 12 rivals - to rectify this you could just use the H2H counts and incorporate (1-(1/FS)*100 as an additional component - see attached again

Attached Images
File Type: png Screenshot 2022-06-09 06.56.54.png (53.6 KB, 42 views)
ARAZI91 is offline   Reply With Quote Reply
Old 06-09-2022, 02:04 AM   #12
ranchwest
Registered User
 
Join Date: Oct 2001
Location: near Lone Star Park
Posts: 5,147
Quote:
Originally Posted by zerosky View Post
It's an interesting seam to mine, I was thinking along the lines of a class rating. In chess the calculated points ae awarded to the winning player He will gain more points from a higher ranked player than a lower ranked player.

Taking the example in the spreadsheet with the vet scratch of the five horse (Scorpion Dynasty) leaves the following available points.

Irish Giant - 2
Brunate - 2.9
London Gold - 0.9
Alfie Solomons - 4.7
Road to Success - 4.2
Fotis - 0

The winner was Alfie Solomons so he would get the points from each of the other horses a total of 10.2 added to his rating, each horse would only lose their allotted points from their rating. Obviously as these particular numbers are a power rating none of these calculations are applicable.

The class rating would have to start from scratch with the entire database of all horses so it will have to remain theoretical, a bit like poor old Fotis's chance of winning a race. Since breaking his maiden in July 2019 he has raced 37 times without success in fact its 32 races since he was in the money. If I was rich I would buy him and turn him out into a nice big field.
Thanks. After I finally caught on to what you are doing, I find it very interesting.
__________________
Ranch West
Equine Performance Analyst, Quick Grid Software
ranchwest is offline   Reply With Quote Reply
Old 06-09-2022, 03:23 AM   #13
ARAZI91
Registered User
 
Join Date: May 2016
Posts: 89
You can also use those H2H Counts by adding in a losses column and creating an "odds ratio" using a horses Cumulative H2H Win/Loss Ratio over a dataset whilst adding a form of competitiveness or "race strength" by measuring a races geometric mean of each horses odds ratio.The end result is a rating consisting of (5+Rivals Beaten)/(5+Rivals Beaten by)*Race Strength. The additional 5 wins and 5 losses added is a Laplacian prior (Rule of Succession) and results in best predictions. An algorithm called Minorisation-Maximisation(MM) - David Hunter(2004) is used which optimises and exploits convexity and through a process of iteration allows for all Ratings to emerge to a final solution.

The MM algo is an iterative process
1) Start with calculating every horses H2H Win/Loss Ratio to some arbitrary precision(~ 3 dec.points) in the dataset - *note add 1 win and 1 loss to every horse's record at the start. This accounts for non winners etc.
then repeat these steps
2) A Horses revised rating is it's win/loss ratio(including the Laplacian prior above) multiplied by the geometric mean of every horse faced.
3) If ANY horse's ratings have changed(they will have !!),use this new rating in place of Step 1 and return to Step 2. If not go to 4)
4) STOP! this is a horse's final rating.

This set of final ratings maximises the likelihood of the results over the dataset.
This process also works with Impact Values although there is a higher signal using Place Impact Values (including Wins) as that metric is more granular.
ARAZI91 is offline   Reply With Quote Reply
Old 06-09-2022, 03:33 AM   #14
ARAZI91
Registered User
 
Join Date: May 2016
Posts: 89
Quote:
Originally Posted by ARAZI91 View Post
You can also use those H2H Counts by adding in a losses column and creating an "odds ratio" using a horses Cumulative H2H Win/Loss Ratio over a dataset whilst adding a form of competitiveness or "race strength" by measuring a races geometric mean of each horses odds ratio.The end result is a rating consisting of (5+Rivals Beaten)/(5+Rivals Beaten by)*Race Strength. The additional 5 wins and 5 losses added is a Laplacian prior (Rule of Succession) and results in best predictions. An algorithm called Minorisation-Maximisation(MM) - David Hunter(2004) is used which optimises and exploits convexity and through a process of iteration allows for all Ratings to emerge to a final solution.

The MM algo is an iterative process
1) Start with calculating every horses H2H Win/Loss Ratio to some arbitrary precision(~ 3 dec.points) in the dataset - *note add 1 win and 1 loss to every horse's record at the start. This accounts for non winners etc.
then repeat these steps
2) A Horses revised rating is it's win/loss ratio(including the Laplacian prior above) multiplied by the geometric mean of every horse faced.
3) If ANY horse's ratings have changed(they will have !!),use this new rating in place of Step 1 and return to Step 2. If not go to 4)
4) STOP! this is a horse's final rating.

This set of final ratings maximises the likelihood of the results over the dataset.
This process also works with Impact Values although there is a higher signal using Place Impact Values (including Wins) as that metric is more granular.
And if using Impact Values make sure it accounts for FS( ie: in Win Impact Values = Actual Wins/Cumulative addition of 1/FS which is just xWins by Random Chance)
ARAZI91 is offline   Reply With Quote Reply
Old 06-09-2022, 02:10 PM   #15
ranchwest
Registered User
 
Join Date: Oct 2001
Location: near Lone Star Park
Posts: 5,147
The downside is that every race is subject to pace. As long as pace fits a normal pattern, power ratings will frequently prevail. But when horses get out of their pace comfort zone, the power ratings become meaningless.
__________________
Ranch West
Equine Performance Analyst, Quick Grid Software
ranchwest is offline   Reply With Quote Reply
Reply




Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

» Advertisement
Powered by vBadvanced CMPS v3.2.3

All times are GMT -4. The time now is 11:41 AM.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Copyright 1999 - 2023 -- PaceAdvantage.Com -- All Rights Reserved
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program
designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.