Automated horse betting: A profitable lay strategy, and one which should work backing horses too
March 1st, 2024 at 01:06pm
In fact it should be possible to back and lay the same horse and come out a winner no matter who wins the race.
It’s March and the autumn racing carnival is just starting to appear, so it’s a good time for me to demonstrate a strategy which I have been using to generate slow and steady profits, and a derivative of that strategy which I have put through its paces in a spreadsheet, have confidence in, and have launched into production today.
I am using two bots for this, both of which I’m really just scratching the surface of their capabilities by using them in very specific ways. First up the ANZ Horse Bot is running my laying strategy. The settings I’m using in it are remarkably simple but have been honed over some time to get them to the point where I consider them mature and reliable. The bot itself though has an incredibly powerful stats engine which I’m not currently using, but can be used to find the runners which meet almost any form indicator or bit of statistical criteria you could think of, and then place bets on them per your instructions.
The other is the Fav Money Staking bot, which I’m using for the backing strategy. Again, I’m using quite simple settings, but the abilities of the bot go far beyond how I’m using it and I will be interested in exploring those options further after I have bedded-in the backing strategy to the point where I’m comfortable that it works in reality as well as it does on paper.
I have a video up today running through the details of my strategies, a bit of the thought process behind them, how they’re set up in the bots, plus a quick look at some of the more advanced functions of the bots.
But it’s also important to document the strategies here, so here we go.
The laying strategy
I have been running this strategy for a while now and it has been a consistent performer. It’s not going to set the world on fire but it is consistent and should scale up a bit from where I have been using it.
The premise is simple. In the odds range of 2.00 to 2.99, lay the horse with the lowest odds. Often this is the favourite in the race, sometimes it’s the second favourite. In some races there are no horses in this odds range in which case the race is skipped. Favourites tend to win about a third of the time overall in horse racing, with their strike rate generally improving at lower odds. In the 2.00 to 2.99 range, I find the lowest priced runner wins about 40% of the time, so lay betting gets a strike rate of 60%.
This strategy works with a Stop At A Winner staking plan. That is, you have a set profit target to reach per winning race, and you increase your staking after each loss so that you can reach your target and recover the losses in a single win. Then you stop increasing staking and start again with a new series of bets aiming for a target. Lay betting with SAW staking at this odds range has fairly gentle stake increases and so works quite well.
I have been running the system at a very moderate target of 25c per win (I think I got mixed up and said 50c in the video) across thoroughbred racing and harness racing, and have been seeing an average return of a bit over $3 per day. Saturdays tend to outperform everything which a much higher strike rate and profit rate, which makes sense given the quality of racing on a Saturday is generally higher and thus it’s harder for the favourites to defeat their competition.
This is the results graph from the last three weeks of bets
$69.39 profit in three weeks. Doesn’t sound like much when put like that, but considering this is off a profit target of 25c per winning race, I consider it quite a tidy little sum.
Most importantly, it grows consistently. And while some days are slightly tougher than others, the system hasn’t come close to reaching a stop loss and rarely has more than a few losses in a row which makes it quite safe in performing its loss recovery as per the Stop At A Winner Principle.
These are the settings I have been using.
(click image to enlarge)
They are fairly open in terms of which races qualify as I don’t see much point in reducing the volume of races when there are already plenty of races which don’t have a runner in my odds range and thus don’t qualify. As long as there is some liquidity in the market and there’s a horse meeting the odds criteria, I’m happy. If you wanted to take steps to reduce the volume of races and/or possibly increase the strike rate, increasing the mimiumum amount matched in the market or adjusting the number of runners in the race may achieve this. But I haven’t seen the need to do so and thus haven’t tested it.
One important thing in these settings is the inplay action is set to Take SP. This means that if the bet isn’t matched by the time the race jumps, the volume of unmatched bets with the Take SP are put through a calculation and get matched together at whatever prices the weight of the market dictates. It’s similar to the TAB dividends process. The odds you get from this are usually better than TAB odds but might be worse than you had been trying to get matched at, meaning if the race goes your way, you might not win quite as much as you hoped. But I consider that a better outcome than getting only partially matched (which can happen in rapidly moving markets) and barely getting any return at all. You might prefer to not have this process and to cancel an unmatched or partially unmatched bet at the jump, but I don’t recommend it.
The Backing Strategy
As I mentioned, the horses in this odds range are winning about 40% of the time. A 40% strike rate on bets in horse racing is a good achievement, but when the odds on offer for them is as low as this ($2.00 to $2.99) it’s actually a bit of a challenge to make a profit out of it. I had tried using the SAW staking method on backing these runners but found it was far too easy and frequent to have a losing streak of 8, 9, 10 races in a row and hit a stop loss, and it happened regularly enough the wins could not overcome the losses.
Still, 40% strike rate. There had to be something that would work.
Well, Steve and Michael who produced the ANZ Bot I’m using for the laying strategy do quite a bit of work on staking strategies and often then produce bots which take advantage of the unique features of each staking strategy. One strategy I had been looking at and thinking it might be a good fit for my 40% strike rate on short price runners conundrum is called Fav Money Staking because it is designed with the odds range of favourites in mind. It uses a more gentle staking progression than Stop At A Winner and doesn’t expect to turn a profit out of one winning race but rather out of a few in a series.
They have a bot to go with it. The Fav Money Staking bot. My only concern with it was that even if it was suitable for my specific horse selection criteria, as far as I could see it didn’t have the same option as the ANZ bot to pick “any selection” within an odds range and instead required you to choose a favourite ranking (ie. first favourite, second favourite, etc). This concerned me because it would require me to split my selection criteria in to two parts:
1. 1st favourite between 2.00 and 2.99
2. 2nd favourite between 2.00 and 2.99 if the first favourite is under 2.00.
This would result in the staking running separately on these strategies and potentially result in significant differences in outcomes to what I had modeled. Thankfully, it turns out my fears were unfounded.
I discovered while preparing the video that the “any selection” option is available in Fav Money Staking Bot. Whether it was there the whole time and it just wasn’t clear to me from the available documentation, or it was added in to a version at some stage, I don’t know. But it is quite a relief because it means I can run exactly the selection criteria in Fav Money Staking as I can in ANZ Bot, and thus my modeling should be valid.
The selection criteria is one thing. Wrangling the options of the Fav Money Staking system is another. Ultimately it is a fairly straight forward system in that you give it a starting stake, and it works out the sequence from that starting point, continuing until either the profit target or stop loss are met.
To model this and figure out how best to set this up, I took my lay results from the last three weeks, plotted them in Excel as if they were Back bets, then figured out the staking based on a 50c starting stake and plotted the results with various profit and stop loss settings.
At first I had no real success. Any combination I tried with the same selections as ANZ Bot just didn’t want to turn a consistent profit.
$5 profit target / $50 stop loss
It turned a profit, but hit stop loss three times and spent most of the three weeks circulating around the same spot. The pattern showed clearly that it would probably only break even in the long run.
So I took my observations about Saturday racing being tougher for backing winners and pulled all of the Saturday races out. With the same profit target and stop loss, things improved.
$135.63 profit, in fact. There was a stop loss in there, but it didn’t seem to do much damage.
Still, it did take the better part of a week to undo a stop loss, and that would be a concern in a period with a worse strike rate, so I kept fiddling.
$25 profit target / $50 stop loss / no Saturdays
$263.58 profit. A much faster rate of increase along the way makes two stop losses look like blips. The faster rate of increase means that stop losses are minor inconveniences rather than generators of disappointing weekly results. Quite clearly by extending how long the staking progression has to run for, it resulted in the bigger stakes later on in the progression ultimately landing on enough winners to fly ahead.
I also tried a $20 target but it had very similar results to the $5 target
And at the other end of the scale, a 1c profit target, effectively meaning the staking progression should rarely ever need to go very far and thus limiting the risk of stop loss.
It avoided a stop loss even if one staking progression did go on for a bit and bring some drawdown briefly, but it also was quite slow compared to the $25 target and, if it had reached the stop loss, would probably have taken a couple weeks to dig out from it.
So after all of that modeling, I settled on a $25 profit target and set about setting up the bot accordingly.
These are the settings I am using.
(click image to enlarge)
Now, I set that up this morning and we haven’t quite reached today’s racing yet so I don’t have any real world results yet, and it is Friday today so while I anticipate a decent result today, tomorrow is Saturday and the system calls for no bets to be placed on Saturday racing, so I will have to stop the bot from placing bets tomorrow (either by pushing the stop button or deselecting the races…the stop button is the better idea, I just have to remember to start it again on Sunday morning). As such, I don’t expect to have useful results to show you until late next week at the earliest when a decent number of bets have gone through and I can see how the results compare to the modeling and, hopefully, be able to report it is all tickety-boo.
Combined strategies
I am continuing to run the lay strategy as it has proven itself to be a reliable workhorse for a while now. The upshot of running both the back and lay strategies simultaneously is that I will almost always be both backing and laying the same horse, meaning I will have a bet on for a specific horse to win and another bet for that same horse to lose. Sounds mad when you put it like that, but as the different strategies will be at different points in their staking plans and indeed are using different staking plans, they should both win in the long run across the multitude of races.
So effectively, it doesn’t matter who wins the race, the very fact that the race is being run is enough to generate a profit if these systems both work according to plan.
If you’re interested in trying something similar, or maybe entirely different strategies, the two bots I’m using and plenty of documentation about them are available at these links:
Fav Money Staking Bot
ANZ Both
I can’t wait to see how these strategies perform together. It’s going to be fascinating. I look forward to bringing you some results soon.
Samuel
Entry Filed under: Adventures In Betting
2 Comments
1. grahamm | March 22nd, 2024 at 4:07 pm
Hi Samuel, Thanks for your ideas and information on Steve & Michael BOTS. Just a bit of feedback on your Fav Money Bot settings above.. I’ve been trialling the same settings for the last week or so,(from 12th to 20th March 2024, and fluctuations have moved around a fair bit. Mostly it’s been in negative territory, having lost 186.34 A$. It’s so far a bit disappointing, but it’s only been a short period, and I’d be interested to know how your longer trial has been going, and whether it’s worth pursuing. On another point, I can’t seem to get my profit records to give an accurate cumulative figure, as I clicked on it one time and earlier results appear before the latest results. Do you know how to fix that?
Many thanks for your help.
graham Mclaine
2. Samuel | March 22nd, 2024 at 5:19 pm
Hi Graham,
My results have been similar to yours. It’s not performing quite the way I expected. Unfortunately one of those cases where testing on previous results didn’t match performance of future bets.
I think it would be less volatile with only one tab running rather than multiple tabs, but I’m not sure it would improve profitability. Some thoughts I’ve had on what might improve profitability include Increasing the minimum matched amount and being more selective about meetings, but I haven’t looked into it much as yet.
While I was scratching my head over the performance of this strategy, I noticed patterns which led me to trial a different strategy. Still testing but results have been good so far and if it holds, I’ll have something next week. After I get that out of the way, I can come back to trying to work out why this strategy is not meeting expectations.
I’m sorry this one hasn’t gone well so far. I’m actually really baffled by it as I can’t see what’s particularly different about the conditions of the test data compared to the live results. Definitely needs more investigation.
To your question about sorting the results within the bot. I assume you clicked on the heading of one of the columns? The simplest way to get it back in order is to sort by sequence number. Click the sequence number heading, and if it’s still backwards, click again to reverse the sorting order.
Regards,
Samuel