Subject: 08 | A Different Perspective...

Hey everyone


It’s been a funny month. Although having just read Ryan’s latest newsletter, I know he’s not laughing! Actually that’s why I decided to write one too, to give my perspective.


March wasn’t a great month for one of the strategies we selected to get Ryan’s bot up and running. I’m trading it too (only fair, really!) so I felt it too, although I’ve got 9 other strategies on the go to balance things out.


He’s not quite ready to jump in that hard yet, and rightly so, but I will say that a bit of diversification does help in the long run. Of course there’s a risk that they all have a bad month together at some point, so you need to plan your portfolio appropriately and manage your bank effectively. Maybe we can talk about that later in this series; let’s get back to the here and now and see if we can find some lessons to help anyone trying to get started. I guess if we help Ryan at the same time, that won’t be so bad either!


Sh*t happens, as they say. But I like to know how and why sh*t happens. I was the kid that started disassembling the radio as soon as his parents’ backs were turned. At some point I even learned how to put things back together again. That reminds me, I think I might owe my Mum a new washing machine…


Let’s take a look at what happened last month. I’m going to focus on one of the two strategies Ryan’s running, the one that did the worst. We both dropped about 40pts each on this strategy last month.


It’s worth talking about some mindset stuff here. How would you feel about that loss in one month?


I was actually quite surprised that it hit Ryan so hard, having seen his Zen-like disposition when manually trading tennis in the past. I was always the opposite. Learning to scalp horses was a long and incredibly frustrating process for me - it goes well for a while, then you make a mistake that ruins it all. Or you don’t even feel like you DID make a mistake but it goes wrong anyway; you feel like the market **should** have done x, y or z, but it didn’t. You end up personifying it, like it’s this singular being that should give a crap what YOU think should have happened! And then you get angry, at which point you stand no chance at all of making a profit.


My neighbour actually stuck his head out of the window one day and said “scalping again Ad?”, after hearing a stream of newly-invented swear words emanating from my apartment at maximum volume. Probably should have soundproofed my office really.


Anyway, that was one of the reasons I decided to automate as much of my trading as I could, because it completely took the emotion out of it. It’s impossible to let that gamblers mentality encroach on you - cutting your wins short, chasing your losses, letting it go in-play unintentionally. A bot solves all that.


I’d never really considered that someone could get emotional in the same way over a bot, but it does make sense from Ryan’s perspective. He has no control whatsoever now of his bets, which is probably difficult. And despite knowing that I’ve been running bots since 2009, it’s new to him. It doesn’t really matter if other people are making something work; until you experience and execute it for yourself, you’ll always have some doubts and “what-ifs”. This is why two people trading seemingly contradictory strategies can both make money, or vice versa.


Bots do solve a lot of problems, but one mistake people make is to think that they’re automatic cash-generating machines. There absolutely ARE golden goose strategies out there, but they’re few and far between and not realistic for most people to aim for. You don’t just automatically make money because you’re using a bot. The bot will just do what you tell it to do. You need to know what you want it to do!


And just because you’re using a bot, it doesn’t mean you have no more work to do. The great thing about automation is that when you do have a strategy nailed down, you can let it do its thing and, instead of sitting there trading it yourself, you can start developing the next idea. But because you’re not the one placing the trades, your responsibility shifts to reviewing what the bot did and making sure it’s working optimally.


Which brings us back to today. Why did we get our arses kicked last month?


Have you turned it off and on again?


My first thought with automation is always: Check for tech issues. Well I am “just the IT guy” after all 😉 But seriously, there’s no point having the best strategy in the world if the bot isn’t executing the trades properly.


I needed to know the right bets were being placed, so I compared mine to his and compared those to the backtesting results in our software.


Proper record keeping is essential. You need to be able to know exactly what happened and when. Our bots download an account statement regularly from Betfair and save it to an SQL database. If that sounds a bit outside your skillset, don’t worry, because any commercially available betting bot software (BFBotManager for example) will have its own way of logging the bets you’ve placed.


If you ARE developing your own, like us, then make sure you make use of the “customerStrategyRef” field on Betfair’s API. That will allow you split your bets by strategy. You used to need multiple Betfair accounts to segregate your bets like this, so this is one of the best things they’ve ever added IMO. Betfair were fine with linked accounts at that time btw, despite the claims of certain evidently inexperienced people.

Anyway, there were a couple of different bets here and there, but I expected that, because this strategy relies on placing bets on one of the favourites shortly before the race, and as we know, the favourites can change as the prices move around. It would be good if Betfair allowed you to place bets in advance on whichever horse turns out to be the nth favourite to BSP, but for now we can’t.


If I had found any discrepancies, I’d be digging into the code to figure out why they happened. Most issues for our members, when their live bets don’t match up with what they see in the backtesting or qualifiers in our software, boil down to not configuring their betting rules the same way in both places.


A couple of other technical things you could think about are:


  1.  If you’re running your bot on your PC and you restart your PC or have a power cut or something, you’re screwed. Or if your PC is a bit under-powered. Seriously, get yourself a VPS (virtual private server) - it’s not as scary as it sounds and it will mean that computer is ALWAYS on. Just give me a shout on [info@betfairtradingcommunity.com](mailto:info@betfairtradingcommunity.com) if you want some advice on this

  2. Network issues. This is basically the same issue as number 1. A good VPS will have at least a gigabit connection, which is a lot better than most people’s home connections. Plus this is the only thing that VPS is doing, unlike your home broadband which is running your bot while simultaneously downloading dank memes and streaming the latest season of The Crown on Netflix. Or if, like me, you have a 6-year old, streaming noisy idiots playing Minecraft on YouTube

  3. Synchronise your computer’s time servers with Betfair’s: https://support.developer.betfair.com/hc/en-us/articles/115003887811--Which-NTP-servers-do-Betfair-use. Our servers are synced with those, which means if you’re backtesting in our software and using time constraints, your live bets will match up as much as possible


So we’ve ruled out technical issues in this case, which is great because the reason I originally liked this strategy was because I wanted to test some ways of integrating a strategy that depends on up-to-the-second prices with our software. This paves the way for some kind of official API in the future. This post isn’t really about that, but I’ll come back to it another time.


Let’s fix Ryan’s bank first, otherwise I’ll be buying the party hats for the Christmas party.


So what next?


Variance is a bitch


Well first of all, this is a straight laying system, so it is going to have some variance. Everyone makes losses. Don’t believe anyone who doesn’t admit that.


It may be that nothing’s wrong at all and that we’re due a correction. But how can we tell?


If only there was some way we could look at past results for this strategy, even before we started trading it, and do some comparisons? Oh wait!


Let’s take a look at the backtesting results in our software. I like to start with a relatively “zoomed out” view and then zero in on points of interest. Here’s the yearly breakdown for the last couple of years:

Well, we’re off to a bad start this year, but in previous years the strategy has made a steady (if slightly underwhelming) profit. This doesn’t tell us a lot really as we haven’t yet seen WHEN during each year any losses occurred. Maybe it made a loss up to April last year too 🤷‍♂️


It’s worth mentioning here that taking an annualised view of your strategies is perfectly reasonable. In other words, if you finish each year in profit then why care about shorter term fluctuations? It can definitely harm you more than help you if you take too much of a granular view and panic whenever you finish a day or even a month with a loss, because you get twitchy and start tweaking things unnecessarily and end up in a complete mess, with a strategy that has departed wildly from the original rationale.


That being said, I personally am more impatient and generally like to see a profit on strategies at the end of every month. There are strategies that produce that and I would rather commit funds to those.


So let’s look at the monthly breakdown:

We can see that there are some big swings in P&L in this strategy. One encouraging thing is that last month wasn’t the worst losing month that’s happened in the last couple of years, so that’s one vote in favour of natural variance. If this was the worst month ever, I’d probably be more concerned and wondering what had changed.


March 2022 experienced a similar loss, however March last year was pretty decent. In all honesty, it’s a bit all over the place and this is way more variance than I would usually be happy with.


We recently added A/E index and archie score to the software. A/E index tells you how many winners your strategy is producing compared to how many the odds you’re taking would expect. Archie score is a measure of how statistically robust a strategy is (basically “how likely is it that my strategy results are down the rules I’ve put in place rather than pure chance”).


These are the overall value-related figures for the strategy:

Firstly notice that we need just over 82% strike rate to break even on this strategy, and we’re at 84%. So it’s very tight and this is going to add up to as many months down as up. I’d like to see at least a 5% margin here.


The A/E index is below 1 which, although it’s red in the screenshot, is actually good for a lay strategy because obviously we want fewer winners. This suggests we’re getting some value from the odds.


The overall archie score is also a healthy 11 (you want to see at least 5 here).


If we go back to the monthly breakdown though, the archie score is all over the place. It will be lower for each category anyway once you start chopping up the data, as the sample size gets smaller and smaller. But the sample size each month should be big enough to produce a healthier score here IMO.


The fact that it swings so much might suggest one of two things:


  1. The strategy performs well under certain conditions and underperforms in others - basically some conditions that we haven’t identified in the strategy rules

  2. Overfitting. I’m not sure who created this strategy (it’s just one of our example presets in the software), but there’s always a danger when backtesting that you artificially “fit” the data. This means starting with the results and working backwards to remove anything that looks unprofitable, without considering whether those changes are truly meaningful. For example if you see that a specific course has made a loss, you might be tempted to filter it out, but if there’s no good reason for that then you’re just removing something that was experiencing some natural variance, and you’ve chopped it out before it had a chance to correct itself!


Both of these suggest that we need to take a good look at the rules for this strategy and make some improvements to the selection process.


Uncharted Territory


It’s usually much easier to see trends by looking at charts. One thing jumped out at me when looking at the cashflow chart in the software:

The gains seem to have flattened out around July last year which, according to the created date for this strategy in our database, was around the time we added this one to our presets.


I’d need to double-check that as the date may not be accurate if it’s a copy of a previous strategy, but if it’s true then perhaps it’s got a bit too popular and the value has dropped out of it. We always say those presets are just examples and people shouldn’t blindly trade them, but we know lots of people do anyway. It was certainly a popular strategy for a while on our forum, which was the other reason we decided to track it in the bot. There was always the risk that the value would diminish.


This is why we’re not tipsters - strategies come and go and you need the tools required to find your own strategies for long-term success, not just spoon-fed tips!


Still, the fact that there’s some potential for tweaking the strategy to get it back on track means I think it’s worth pursuing a bit longer.


The Cheltenham Factor


It’s worth noting that last month was Cheltenham. Now, Cheltenham is a dream in many ways, mostly for scalping, in my experience. Other people’s experience may be different, but I’ve always found it adds an element of unpredictability where automated strategies are concerned. It’s a special event and things can sometimes perform differently.


This particular strategy already excludes Cheltenham, however the fact that Cheltenham is on can definitely also affect the other races that week, so let’s have a look at how we did during Cheltenham week the last few years:

It shows a loss, but we’re hardly losing our shirt and the sample size wouldn’t have been big enough really to make any clear decision about this. Something to bear in mind, nevertheless.


Next Steps


This post is already too long, so I’ll bring it to a close here, but Ryan and I will sit down and see if we can do something to revive this strategy. Being completely honest, if it was just me, I’d be close to thinking of binning this strategy off if we can’t stabilise it a bit, but I do think it has potential and it would be good to see that through for the purpose of this newsletter, rather than taking the easy way out and completely pivoting to a new one!


We’ll update you next time on any changes we make. Changing strategies is a risky business, so we’ll talk about the process we use as much as the changes themselves.


I may try and persuade him to add a solid back strategy into the mix too!


Have a good weekend


Adam





P.S. Let me know what you thought of this post. What should I say more or less about next time?


Powered by:
GetResponse