I track so many variables its hard to explain everything but I'll attempt to explain the basic breakdown using the Basketball Predictive Models as the example.
In addition to all the statistical tables involved, these are the basic Excel Data tables I'm using.
BET TRACKER
I have a table going back to May of 2023 starting with Baseball that has a record of every bet I have made on all the 3 sports I bet on. As of today I have 6950 bets logged. This includes the teams, spread, totals, odds and results.
Tables used in the NBA and College Basketball Predictive Models
HISTORICAL
This contains all the games, stats, and results for the sport.
TEAM ADJUST
This is a table that has all the teams and I'm using home and away offensive and defensive SRS Ratings of the team and their opponents they have played to try and adjust spread and game totals to the strength of schedule played.
BET ODDS TABLE
This is what my bet record is for every bet placed for each bet type and odds combination. Example Money Line Home and whatever the odds are, Money Line Visitor and whatever the odds are. Same for spreads and totals.
ODDS PREDICTABILITY
This table has all the Predictive Model results for each bet type at odds from -450 to +300. I have chose to limit the odds to that range.
TEAM PREDICTABILITY
This table has all the Predictive Model results for each team based on the 3 types of bets and if they were home or visitors. It also the results for each team on the 3 types of bets if they were home or visitors and also if they had the better or worse game rating. This is about how my model predicted they would do and if it was correct, not how the team actually did. So if my model predicted a team would lose on the spread and they won on the spread in that game, there predictability spread record for that game would be 0-1.
ODDS TABLE
This table pulls in the daily odds for each sport.
MODEL DATA PIVOT
This contains a complete record of the Predictive Models picks for each bet and the result. This is the historical record that appears on the web site.
MODEL BET PIVOT
This contains a complete record of the suggested bets I have put out and the result. This is the historical record that appears on the website.
I then created a Prediction History sheet that pulls the information from all these as well the Historical stats and records to make the game predictions.
This sheet is not a table.
Stats and records involved in the Money Line Prediction section include:
Predicted game spread
SOS Adjusted game spread
Bookmakers odds percentage minus the Vig, for each team to win the game.
Predictive models odds for each team to win the game
Team Home/Away money line predictability record
Models predictability record by Home/Away odds
Historical Home team and Visiting team records based on a combination of the odds and the game rating differential with the range of each expanded a bit.
At the top of the page I have additional Money Line information:
What the models Money Line record is based on what the bookmakers spread is.
What the bet predictability is as far as the team and odds predictability combined. I combine these to come up with a percentage total then query the data to get the model record for all games that had that percentage total for the win/loss record. I'm looking at a game at the moment and the team / odds predictability is 68%, and the models record in past games that were 68% on that is 33-12, so in those past games the model has been correct about who would win 73% of the time.
Another thing I look at is Implied Win Percentage Differential record. If I have the favorite with a 69% chance of winning and the sportsbook has the favorite with a 63% chance of winning, I will query the historical data record for all games that had a 6% difference between the sportsbooks percentage and my models.
I also have tables with ranges I look at. For instance, Model Visitor Predicted win % and the model result. This table has ranges such as , if the visitor predicted win % is between 40% and 45% percent, the model is correct 64% of the time, if it's between 30% and 35% the model is correct 80% time.
I have a table that has the model ML result based on the predicted visitor spread. If the visitor is a 1 to 2 point favorite, the model is correct 58% of the time. If the visitor is a 3 to 4 point favorite the model is correct 64% of the time.
The Spread section is set up very similar to the money line. There is a predicted spread win percentage for each team. Using the teams pace, the game spread and the spread odds, I filter the historical data for the win/loss records that meet this criteria. I also do the same based on the game rating differential and the game spread. Same thing as with the money line with predictability of the team and the odds being combined to get a percentage and querying the data for win/loss records. I also include my betting record based on the home/away sportsbook spread odds.
Additional for the spread I look at the model record in a range based on the spread win percentage of the visitor. For instance, if the visitors model win % is 51% and 55%, the model is correct 60% of the time. So its broken down into ranges like that. Then I have a similar table just based on the visitors predicted spread and the model result. For instance if the models predicted visitor spread has them as a 1 to 2 point favorite, the model is correct 59% of the time picking the spread winner.
OVER/UNDER
In the over under section I come up with a game total much the same way as the ML and spread. I also have my attempt at adjusting the total based on strength of schedule. do the same combining the predictability of the teams and the odds and querying the data for those records. I look at the records based on the Implied Win Percentage Differential. I have my bet record for the sportsbook over and under odds. I have what % of games are over based on the sportsbook spread. I have what % of games are over based on the SRS ratings, game rating differential, and spread combined. I also query the league average total based on the pace the two teams play at. I look at the models win % based on its game Over predicted percentage. For instance if its between 45% and 46%, the model is correct 61% of the time. I also query the data for model record based on the models predicted game total. For instance, if the predicted game total is 223 to 224, the model is correct 61% of the time.
One thing I do in the NBA workbook I don't do in any others is query the teams home/away records for ML, spread and O/U based on the day of the week. This sometimes yields some interesting results.
The NFL book is set up very similar to this.
College football is set up the same. The difference with College Football is that it is all based off of ratings. I'm not using any yardage stats, it's all based off of offensive and defensive ratings.
MLB is a different beast that I can elaborate on in the future.
College baseball I just started doing last season so there is much growth to be done there. That offers a lot of issues with getting stats and starting pitchers for games.
College basketball I started just doing the ACC a few years ago, then expanded to doing 5 conferences last year and this year made the jump to doing all of Division 1. It's much more time consuming than I would like logging all the data for historical querying but hopefully it is helping bettors reduce the Sportsbooks edge somewhat.