Monday, April 16, 2018

Sports: Baseball simulator efforts


This is my first post on sports wagering. It’s a bit out of sequence because I had planned on laying some groundwork for these posts with some background information. But there is an open discussion on a forum at https://www.sportsbookreview.com/. It’s in a sub-forum called “Handicapper Think Tank” (a good place to discuss handicapping ideas). One user opened a thread on “using video games to handicap sports”. This is a topic near and dear to my heart and one I’ve worked on for many years.
I’ve decided to discuss my history trying to simulate MLB games to generate the final score of many simulated MLB games that can be compared to today’s money lines. If the results are truly representative of the likely outcomes of the games, then they can be used to suggest potentially profitable wagers.

First, you must have a simulation engine that generates realistic results. I suspect video games put more effort into graphics than statistical accuracy. I tried 3 different statistical simulators. I replayed an entire season 500 times to generate 500 results for each game. I used the actual lineups and the final player stats for the year.

I then used the results against the betting lines for each game generating pseudo bets for those with a positive expected value based on the simulations. I accomplished two things by doing this. One was to verify that the simulation engine produced reasonable results. And the other was to see if this could be profitable. The answer to both was yes. The selection criteria for picking the simulator to use was more involved than simply picking the one with the best wagering results. Just as important were things like being able to enter and use player stats and speed of generating the results.

But these results were optimal because they used the actual season stats and lineups. To simulate a new season's games, you must decide what stats to use for the players and what lineups to use. To decide what stats to use I embarked on a major effort of generating player stats to the day of the games for the previous seasons. Thus, to simulate a game on May 2nd, I would only consider stats for players through May 1st. I automated this process as much as possible. It required running my PC's 24 hours a day for weeks. I tried using YTD stats, the last 2 weeks, and the last 3 years. I learned using more data was better than using less.

This then led to a project to build player stats files to forecast a player’s performance and as the year progressed, blended these with YTD stats. I used randomly selected lineups from recent games in the morning and simulated each game 5,000 times. When the actual lineups became available later in the day, I used these and ran another 5,000 simulations just before game time.
I used this simulator for several years and made real wagers on the results. As expected the results were less than the optimal ones using previous seasons tests. I did not find this to be profitable and so after several years abandoned the effort.
I’m not convinced that this type of approach is doomed to failure. Simply put, it’s a lot more work than one would expect, and I couldn’t get it to work. I actually dream about revisiting this project again in the future, but it’s unlikely in the time I have left.
I hope to get back to a more orderly sequence in my next sports blog post. Follow me on Twitter, @ole44bill, to know when these posts occur.

No comments:

Post a Comment

Run line analysis update

I looked back and had very slight profit on run line wagers in 2018. So, I decided to update my run line analysis from a year ago. I pos...