True odds calculation

The sport of kings.
Post Reply
andy28
Posts: 589
Joined: Sat Jan 30, 2021 12:06 am

It's going to take me a few days to understand all that :D :D

Plus early start in Victoria today and at Flemington tomorrow
User avatar
firlandsfarm
Posts: 3384
Joined: Sat May 03, 2014 8:20 am

napshnap wrote:
Thu Dec 30, 2021 6:28 pm
Alright, I maybe misread it, it sounded like you can't calc (convert) odds from ratings, weights or other metrics at all.
I agree that you can't calc "true odds" (cause "true odds" is a controversial entity).
No I don't think you misread that bit. there are many stabs at converting ratings to odds I just don't see them able to stand up to mathematical theory. By calculating I mean put a set of ratings into a spreadsheet and have it calculate the respective odds with no interaction with the user.

I thought I had cracked it with what I will refer to as a calculated Monte Carlo algorithm based on creating random numbers related to each runner's rating and calculating the probability each runner's 'random number' was the highest. Obviously the runner with the highest rating would be most likely that it's random number would be the greatest (the winner) thus introducing big is best. But at the same time the random number of the runner with the smallest rating can sometimes be the largest albeit rarely but acknowledging that every donkey has it's day! The formula used calculates the outcome for an infinite number of Monte Carlo iterations (I found performing actual Monte Carlo simulations too time consuming when using a large number of iterations for greater accuracy) ...

LargestRandomNumberFormula.png
(yeah, I spent more time researching how to calculate the formula than I did finding it! I had three specimen calculations I could test my interpretation against so I was satisfied I had converted it into Excel correctly.)

I then compared the algorithm calculated probabilities/odds with market history race by race (it took my laptop 3.5 days to run the algorithm across my racing database) and found a clear bias towards the higher rated runners i.e. the calculated odds were consistently below market odds so I concluded the results were not accurate. It could of course be the ratings that are at error and not the algorithm. I'm not using my own ratings so can only back test against ratings in the market (Proform, Adrian Massey etc.) but the problem there is accessing a good history to test against.

I'm thinking of introducing what I am calling a 'tilt' to sets of ratings. By that I mean reduce the higher ratings and increase the lower rating just to see if it brings the results more in line with the market prices. I'm not trying to back fit the algorithm but when 90% of results on favourites trend in one direction it's clear it's not correct! :) I'm testing on favourites because of the neutrality of price over the long term.

I appreciate I have probably gone off-topic with this comment but I would like to see alternative ways people create odds from ratings.
You do not have the required permissions to view the files attached to this post.
User avatar
decomez6
Posts: 695
Joined: Mon Oct 07, 2019 5:26 pm

gazuty wrote:
Thu Dec 30, 2021 10:07 pm
And if you get 1,000,000 heads in a row, it doesn't change the fact the next flip is still 50/50.

Gaz
true ,
--other side of the coin = bellcurve distribution and time decay
bellcurve distribution.gif
You do not have the required permissions to view the files attached to this post.
User avatar
wearthefoxhat
Posts: 3588
Joined: Sun Feb 18, 2018 9:55 am

firlandsfarm wrote:
Fri Dec 31, 2021 3:52 am
napshnap wrote:
Thu Dec 30, 2021 6:28 pm
Alright, I maybe misread it, it sounded like you can't calc (convert) odds from ratings, weights or other metrics at all.
I agree that you can't calc "true odds" (cause "true odds" is a controversial entity).
No I don't think you misread that bit. there are many stabs at converting ratings to odds I just don't see them able to stand up to mathematical theory. By calculating I mean put a set of ratings into a spreadsheet and have it calculate the respective odds with no interaction with the user.

I thought I had cracked it with what I will refer to as a calculated Monte Carlo algorithm based on creating random numbers related to each runner's rating and calculating the probability each runner's 'random number' was the highest. Obviously the runner with the highest rating would be most likely that it's random number would be the greatest (the winner) thus introducing big is best. But at the same time the random number of the runner with the smallest rating can sometimes be the largest albeit rarely but acknowledging that every donkey has it's day! The formula used calculates the outcome for an infinite number of Monte Carlo iterations (I found performing actual Monte Carlo simulations too time consuming when using a large number of iterations for greater accuracy) ...


LargestRandomNumberFormula.png
(yeah, I spent more time researching how to calculate the formula than I did finding it! I had three specimen calculations I could test my interpretation against so I was satisfied I had converted it into Excel correctly.)

I then compared the algorithm calculated probabilities/odds with market history race by race (it took my laptop 3.5 days to run the algorithm across my racing database) and found a clear bias towards the higher rated runners i.e. the calculated odds were consistently below market odds so I concluded the results were not accurate. It could of course be the ratings that are at error and not the algorithm. I'm not using my own ratings so can only back test against ratings in the market (Proform, Adrian Massey etc.) but the problem there is accessing a good history to test against.

I'm thinking of introducing what I am calling a 'tilt' to sets of ratings. By that I mean reduce the higher ratings and increase the lower rating just to see if it brings the results more in line with the market prices. I'm not trying to back fit the algorithm but when 90% of results on favourites trend in one direction it's clear it's not correct! :) I'm testing on favourites because of the neutrality of price over the long term.

I appreciate I have probably gone off-topic with this comment but I would like to see alternative ways people create odds from ratings.
Good post.

I always look to simplify things where possible.

My view on producing a rating for each runner is based on my own experience(s) reading books/forums, testing my own data...etc This doesn't mean I've solved it, because horse racing is an imperfect sport where there is always an incomplete picture.

My approach is to take a set of attributes that I think affect/influence an outcome of a race, weight them and produce a rating. In some cases, combine certain attributes that strengthen the overall rating.

The one thing I found was that the top-rated was often the favourite and well backed. So this told me that the market makers seemed to be taking into account similar information into their algo. I also quickly learned, that sometimes, the bottom rated would win, but the price was a value one comparing the market price with my own tissue price. I also learned that if a favourite was poorly rated, they ran poorly too.

Taking all that into account, there are many ways I can utilise one set of ratings. This includes In-Play if the race is going the way I visualised it.

I also tend to avoid tweaking things as horses aren't machines and will have off days, be unlucky, or the jockey might make a mistake.

My early attempts were shite, but I learned from them. I also believe there are websites/resources that present the information better and would save a lot of time, but I enjoy the process.
User avatar
wearthefoxhat
Posts: 3588
Joined: Sun Feb 18, 2018 9:55 am

decomez6 wrote:
Fri Dec 31, 2021 5:41 am
gazuty wrote:
Thu Dec 30, 2021 10:07 pm
And if you get 1,000,000 heads in a row, it doesn't change the fact the next flip is still 50/50.

Gaz
true ,
--other side of the coin = bellcurve distribution and time decay

bellcurve distribution.gif
:D

As someone that plays poker (not so much recently) I understand variance, but I think if I lost a flip 1,000,000 times I'd be mighty suspicious that I was being set up in some way...(even if it was true odds)

Someone once said, if you were offered 5/4 tails, (happy days) and then they proceeded to spin 99 heads in row, what would you do on the 100th spin? Answer - get the f&*K out of dodge...
User avatar
azfyazfy
Posts: 77
Joined: Wed Aug 29, 2018 5:12 pm

Screenshot_2021-12-31-13-07-34-78_87869c5c71fa0655e350912352595c23.jpg
These are the 4 methods of true odds calculation
1.equal margin
2.margin proportional to odds
3.odds ratio
4.logarithmic functions (power method)
You do not have the required permissions to view the files attached to this post.
User avatar
napshnap
Posts: 1234
Joined: Thu Jan 12, 2017 6:21 am

firlandsfarm wrote:
Fri Dec 31, 2021 3:52 am
napshnap wrote:
Thu Dec 30, 2021 6:28 pm
Alright, I maybe misread it, it sounded like you can't calc (convert) odds from ratings, weights or other metrics at all.
I agree that you can't calc "true odds" (cause "true odds" is a controversial entity).
No I don't think you misread that bit. there are many stabs at converting ratings to odds I just don't see them able to stand up to mathematical theory. By calculating I mean put a set of ratings into a spreadsheet and have it calculate the respective odds with no interaction with the user.

...
So, if this (viewtopic.php?p=275183#p275183) doesnt fit your desire then I give up).
ps. AFAIR I overcomplicated it a lil bit and there is much simpler method in that thread.
Last edited by napshnap on Fri Dec 31, 2021 10:37 am, edited 2 times in total.
User avatar
napshnap
Posts: 1234
Joined: Thu Jan 12, 2017 6:21 am

wearthefoxhat wrote:
Fri Dec 31, 2021 7:19 am
decomez6 wrote:
Fri Dec 31, 2021 5:41 am
gazuty wrote:
Thu Dec 30, 2021 10:07 pm
And if you get 1,000,000 heads in a row, it doesn't change the fact the next flip is still 50/50.

Gaz
true ,
--other side of the coin = bellcurve distribution and time decay

bellcurve distribution.gif
:D

As someone that plays poker (not so much recently) I understand variance, but I think if I lost a flip 1,000,000 times I'd be mighty suspicious that I was being set up in some way...(even if it was true odds)

Someone once said, if you were offered 5/4 tails, (happy days) and then they proceeded to spin 99 heads in row, what would you do on the 100th spin? Answer - get the f&*K out of dodge...
Haha, a good one) :D
User avatar
decomez6
Posts: 695
Joined: Mon Oct 07, 2019 5:26 pm

wearthefoxhat wrote:
Fri Dec 31, 2021 7:19 am
decomez6 wrote:
Fri Dec 31, 2021 5:41 am
gazuty wrote:
Thu Dec 30, 2021 10:07 pm
And if you get 1,000,000 heads in a row, it doesn't change the fact the next flip is still 50/50.

Gaz
true ,
--other side of the coin = bellcurve distribution and time decay

bellcurve distribution.gif
:D

As someone that plays poker (not so much recently) I understand variance, but I think if I lost a flip 1,000,000 times I'd be mighty suspicious that I was being set up in some way...(even if it was true odds)

Someone once said, if you were offered 5/4 tails, (happy days) and then they proceeded to spin 99 heads in row, what would you do on the 100th spin? Answer - get the f&*K out of dodge...
:D
coin a reality check !
a coin for statistical blind spot..gif
You do not have the required permissions to view the files attached to this post.
User avatar
gazuty
Posts: 2557
Joined: Sun Jun 26, 2011 11:03 am

wearthefoxhat wrote:
Fri Dec 31, 2021 7:19 am
Someone once said, if you were offered 5/4 tails, (happy days) and then they proceeded to spin 99 heads in row, what would you do on the 100th spin? Answer - get the f&*K out of dodge...
😀 very good
User avatar
gazuty
Posts: 2557
Joined: Sun Jun 26, 2011 11:03 am

There is probably a very good example of what our friend wants to do coming up.

At present the Djoker is about 2.3 for the Australian open. If he doesn’t show up and pulls out the 43% of the book he currently constitutes will need to be distributed to the rest of the field. Clearly this won’t be equally distributed. Will it be by power law? I don’t think so.
User avatar
napshnap
Posts: 1234
Joined: Thu Jan 12, 2017 6:21 am

gazuty wrote:
Fri Dec 31, 2021 10:38 am
There is probably a very good example of what our friend wants to do coming up.

At present the Djoker is about 2.3 for the Australian open. If he doesn’t show up and pulls out the 43% of the book he currently constitutes will need to be distributed to the rest of the field. Clearly this won’t be equally distributed. Will it be by power law? I don’t think so.
More likely Djokers released "share" will be proportionally (not equally) distributed among the rest according to their current (before the withdrawal) "share" (so the 2nd strong fav will get a relatively bigger cut of it than others).
User avatar
firlandsfarm
Posts: 3384
Joined: Sat May 03, 2014 8:20 am

wearthefoxhat wrote:
Fri Dec 31, 2021 7:12 am
Good post.

I always look to simplify things where possible.

My view on producing a rating for each runner is based on my own experience(s) reading books/forums, testing my own data...etc This doesn't mean I've solved it, because horse racing is an imperfect sport where there is always an incomplete picture.

My approach is to take a set of attributes that I think affect/influence an outcome of a race, weight them and produce a rating. In some cases, combine certain attributes that strengthen the overall rating.

The one thing I found was that the top-rated was often the favourite and well backed. So this told me that the market makers seemed to be taking into account similar information into their algo. I also quickly learned, that sometimes, the bottom rated would win, but the price was a value one comparing the market price with my own tissue price. I also learned that if a favourite was poorly rated, they ran poorly too.

Taking all that into account, there are many ways I can utilise one set of ratings. This includes In-Play if the race is going the way I visualised it.

I also tend to avoid tweaking things as horses aren't machines and will have off days, be unlucky, or the jockey might make a mistake.

My early attempts were shite, but I learned from them. I also believe there are websites/resources that present the information better and would save a lot of time, but I enjoy the process.
Hi foxy, yes ... there are two stages, first gather and process your data and then second convert that data into odds. It's the second stage that I am seeking the holy grail for. :) All runners can win ... there has been 7 winners at BSP odds of 1,000! Your approach above is fine but I don't think you are describing a calculation of ratings to odds, it's more an opinion. I (think) I remember seeing a spreadsheet from you on the forum (and please accept my apologies if I'm wrong) where you basically apportioned each runner's rating against the sum of the ratings and used that as a form of probability. And that may well have worked and if it does, great, keep going but maybe it has benefitted from variance being in your favour as Peter explains in one of his videos. That method is covered on some punter websites but I don't see it as standing up to mathematical theory. And that's why I am still looking. :)
User avatar
firlandsfarm
Posts: 3384
Joined: Sat May 03, 2014 8:20 am

napshnap wrote:
Fri Dec 31, 2021 8:38 am
firlandsfarm wrote:
Fri Dec 31, 2021 3:52 am
napshnap wrote:
Thu Dec 30, 2021 6:28 pm
Alright, I maybe misread it, it sounded like you can't calc (convert) odds from ratings, weights or other metrics at all.
I agree that you can't calc "true odds" (cause "true odds" is a controversial entity).
No I don't think you misread that bit. there are many stabs at converting ratings to odds I just don't see them able to stand up to mathematical theory. By calculating I mean put a set of ratings into a spreadsheet and have it calculate the respective odds with no interaction with the user.

...
So, if this (viewtopic.php?p=275183#p275183) doesnt fit your desire then I give up).
ps. AFAIR I overcomplicated it a lil bit and there is much simpler method in that thread.
I'm afraid you are going to have to give up napshnap! :) That's the system that to me has no mathematical foundation. Why should adjusting your ratings by a random factor into an artificial structure and then pro-rata them give a reliable probability? Take a two runner race and give one runner a rating of 100 and the other a rating of 50. Using the sum and proportion approach would give odds of 1.50 and 3.00 respectively but I doubt you would find a bookmaker who would give you 1.50 on the favourite with such an ability advantage. I note that some contributors to that thread and the FlatStats thread referred to take a similar view as me.

The problem is being able to convert the odds compiler's judgement into an algorithm capable of being calculated. The human brain can think and reason, computers cannot until the analysts can tell the coders exactly how we think about and reason things in every combination of variables.
User avatar
wearthefoxhat
Posts: 3588
Joined: Sun Feb 18, 2018 9:55 am

firlandsfarm wrote:
Fri Dec 31, 2021 12:40 pm
wearthefoxhat wrote:
Fri Dec 31, 2021 7:12 am
Good post.

I always look to simplify things where possible.

My view on producing a rating for each runner is based on my own experience(s) reading books/forums, testing my own data...etc This doesn't mean I've solved it, because horse racing is an imperfect sport where there is always an incomplete picture.

My approach is to take a set of attributes that I think affect/influence an outcome of a race, weight them and produce a rating. In some cases, combine certain attributes that strengthen the overall rating.

The one thing I found was that the top-rated was often the favourite and well backed. So this told me that the market makers seemed to be taking into account similar information into their algo. I also quickly learned, that sometimes, the bottom rated would win, but the price was a value one comparing the market price with my own tissue price. I also learned that if a favourite was poorly rated, they ran poorly too.

Taking all that into account, there are many ways I can utilise one set of ratings. This includes In-Play if the race is going the way I visualised it.

I also tend to avoid tweaking things as horses aren't machines and will have off days, be unlucky, or the jockey might make a mistake.

My early attempts were shite, but I learned from them. I also believe there are websites/resources that present the information better and would save a lot of time, but I enjoy the process.
Hi foxy, yes ... there are two stages, first gather and process your data and then second convert that data into odds. It's the second stage that I am seeking the holy grail for. :) All runners can win ... there has been 7 winners at BSP odds of 1,000! Your approach above is fine but I don't think you are describing a calculation of ratings to odds, it's more an opinion. I (think) I remember seeing a spreadsheet from you on the forum (and please accept my apologies if I'm wrong) where you basically apportioned each runner's rating against the sum of the ratings and used that as a form of probability. And that may well have worked and if it does, great, keep going but maybe it has benefitted from variance being in your favour as Peter explains in one of his videos. That method is covered on some punter websites but I don't see it as standing up to mathematical theory. And that's why I am still looking. :)
Yep, fair enough.

The only thing I can add is;

1. Convert the rating to a base odds figure. (standard stuff)
2. Compress the top 4 (could divide by 2)
3. Spread the remaining 100% book (add and overround) with remaining runners.
4. Compare current market price / your tissue price (Any figure >1.00 is on the value short list, the higher the better)

Value betting/laying can be frustrating, but equally rewarding when it clicks into place.
Post Reply

Return to “Trading Horse racing”