The Final Chapter

The Final Chapter

The Final Chapter

If you read my previous article, it was one that took a sharp left to Spain and offered up a quick sample of La Liga data. However, as you should know, this current series is one steeped in Bundesliga based data driven excellence.

Now admittedly, the action has come thick and fast in Germany’s top division and being layed low with a virus this week (not that virus), I have missed the gameweek in which Bayern Munich recorded an eighth straight league title.

Which means by missing out a gameweek, it means I’m a step out and instead of trying to get back to speed (which without a time machine, I can’t) it may make sense to look back at last weekend and end this German project here.

Yes folding early was not necessarily the plan, but at the same time the Premier League is now back and underway and therefore, it is the perfect time in which to transition back to the ‘best league in the world’


The Final Chapter

It was always going to be a difficult week to guage any real success, espeically as the accumulator was a rather hefty 6,875/1 and as we’ve guaged, the higher the odds, the less likely a match by match return.

Which proved to be the case last weekend and even with Bayern Munich vs Borussia Monchengladbach going against the grain in terms of a data driven football prediction, the rest of the gameweek did me no favours.

It was off to a very impressive start as both RB Leipzig and Werder Bremen got themselves over the line and perhaps this offered a false promise, as after that the only other correct predcition was Borussia Dortmund.

Their late winner in Dusseldorf was one that spared theirs and my blushes, but even with that it was a paltry three correct data driven football predictions, not a good return to end these German proceedings it must be said.

Which means the totals per week, have been as follows:

Week 0 (Control Week): 7/9
Week 1: 4/9
Week 2: 2/9
Week 3: 7/9
Week 4: 4/9
Week 5: 3/9

Out of 54 predicted matches, ‘BundesBot’ returned 27 correct picks, which neatly equates to 50% – after all that, it has boiled down to almost a flip of a coin, as to what is right and what ended up being wrong.

Of course, it is as not as simple as a flip of a coin, because there are three elements in the 1X2 markets, but when you consider heavy favourites in matches and them being absolute bankers, a 1 in 2 hit rate does feel somewhat par for the course.


Which means, that the performance of ‘BundesBot’ has been nothing short of straight down the line and although it has not been an absolute failure, to only return half in terms of success, suggests there is definitely scope for improvement.

Still, its very much lesson learned and none of the time over the past six weeks of operation is wasted, as all this knowledge feeds into builds that will take place next season and from this point, I can run week on week operations across multiple leagues.

Taking a deeper look at the results themselves in terms of week on week, there was a lot of volatility in terms of performance and although much has been made of the fact that home advantage was nullified, I think having a very static framework didn’t help either.

Because if something is really successful one week, it stands to reason that it won’t be all that successful the next and the refusal to make week to week changes, will explain very good weeks turning into very bad ones.

Therefore, any model that is built next season will have to be a little more dynamic than it currently is – although what element of dynamism actually turns out to be, I’m not quite sure (still waiting for the Eureka moment)


After looking at the data driven football predictions that ‘BundesBot’ served up, I also decided to look at seven of the nine matches and drop the two that I felt that the lowest chance of returning the correct outcome.

This was a case of using what had been presented to me and adding to that through gut instinct – which meant I had a seven fold that looked like this:

Bayern Munich
RB Leipzig
Borussia Dortmund
Bayer Leverkusen
Werder Bremen
Hertha Berlin/Eintracht Frankfurt – Draw
FC Koln/Union Berlin – Draw

From these, Bayer Leverkusen were held by Schalke and neither of the draw predictions resulted in honours even. Which meant that a seven-fold at 100/1 fell short by three legs and this was not necessarily a great test of gut-instinct.


Of course, I’ve also been looking at the double chance market over the past few weeks and this is something that offers far greater insurance as far data driven football predictions go, although the sacrifice is far less in terms of odds.

RB Leipzig and Draw
Borussia Dortmund and Draw
Draw and FC Koln
Draw and Hertha Berlin
Werder Bremen and Draw
Freiburg and Draw
Draw and Bayern Munich
Draw and Mainz
Bayer Leverkusen and Draw

Incorrect picks in italics

6 out of 9 correct and this meant that from a total of 45 matches, 32 of them were correct in terms of double chance. This means that 71.1% of all double chance predictions were right, although if you bet on these line by line, it would have been unlikely to return a profit.

However, a bet of 5 or 6 per weekend, would return something and again looking at least likely options, this could also be a way to go in terms of accumulators next time around – certainly food for thought if nothing else.

In summary: There were two gameweeks in which I got close to the promised land and it certainly shows that this experiment was not a complete bust. With that said, there is still a lot of work to be done before this is a lean mean data driven betting machine.

Happy punting and thanks for reading.


If this has grabbed your interest and you would like to discuss/feedback then please feel free to drop me a message at While I am always looking for new football/data projects to work on and if you feel that my skills would be of use, I can be contacted at the same address.

Follow me on Facebook at Dan The Stat Man
You can also check out my Premier League Podcast on Soundcloud

Leave a Reply

Your email address will not be published. Required fields are marked *