Preseason Win Projection Model
A Runs Created-based win projection model for a 24-team league, validated at the season's midpoint against actual results.
Methodology
Starting from the salary sheets provided by WIS, I removed all players outside the 1975–2000 era window, then split hitters and pitchers into separate sheets within a workbook. I had a sheet for each team’s hitting and pitching where I copy/pasted the rosters from the league, plus two additional sheets that — using a script — pulled each player from the salary sheet data to get their # stats, secondary fielding, etc.
I then went through all the players and replaced their fielding ratings with actual FLD/RF for each position. From there, for each team:
Hitting: weighted a team’s top 5,000 PA by OPS#.
Pitching: weighted a team’s top 1,250 IP by ERC#.
Fielding: weighted by 600 PA/position. For positions that did not have 600 PA, I used my best guess for the most likely OOP option and calculated their OOP FLD/RF stats.
I also identified all AAA players and re-normalized them to 2024 to get # numbers for accurate inclusion in the above calculations. (Note: without trades I could not see AAA players, so the calculation is only on the drafted roster. With real names, the normalizing would not be needed.)
From there, I created a Runs Created estimate for the hitting, with an RC adjustment for the fielding using ZubinSums values for errors and +/- plays. I used jfranco’s formula for pitching RC to create a comparable value for pitching, putting all three components on the same metric. I then added a team’s fielding and pitching RC together and ran the hitting and the pitching+fielding into a Pythagorean expectation to generate the win predictions.
Fatigue adjustment: any team with less than 1,250 IP or 5,000 PA had their corresponding RC reduced — pitching quality by 35%, defense by 20%, and hitting by 15%. This likely over-applies to 1–2 teams and will be insufficient for some others, but was the best available adjustment without player-by-player fatigue calculators.
Known limitations
Fatigue, ballparks, OOP players, and AAA are all going to have bigger impacts than I was able to account for above. I did my best to account for each as best I could in these calculations, but I couldn’t add in full park effects, player-by-player fatigue calculators, etc. I still can’t see AAA players unless they’ve appeared in a game.
So, there could be some very large swings from these predictions — that said, I did my best to take this seriously and use a methodology that might produce some fascinating, and as accurate as possible, results.
One concrete example: knowing Bagwell was playing 3B, I plugged him in on the sheet — that alone cut The Genie’s Lamp’s predicted wins from 89 to 87, with Bagwell’s fielding impact going from a prediction of 9 runs allowed to over 40 runs allowed. That’s the scale of swing that unaccounted OOP usage can produce.
contrarian23 in the community thread noted: “I expect fatigue will be the #1 factor in determining final standings. If I could know one variable in order to predict final standings, I’d much rather know total PA/IP than OPS/WHIP, etc.” That’s almost certainly right, and it’s the hardest variable to model pre-season, though am hoping my estimates above are accurate on the impact thereof.
Preseason projected standings
| NL East | |||
|---|---|---|---|
| Team | Pythag | W | L |
| Beavis & Butthead Do Whatifsports | .653 | 106 | 56 |
| Festering Piles of Putresence | .548 | 89 | 73 |
| GPs Gift of no Nething | .544 | 88 | 74 |
| No rain delays under the dome | .409 | 66 | 96 |
| NL Central | |||
|---|---|---|---|
| Team | Pythag | W | L |
| Ask Me About My Beanie Baby Collection | .571 | 93 | 69 |
| NJ Turd Burglars | .472 | 77 | 85 |
| Expertise in Sucky P Shines Finally | .384 | 62 | 100 |
| Hitless in Seattle | .327 | 53 | 109 |
| NL West | |||
|---|---|---|---|
| Team | Pythag | W | L |
| The Genie’s Lamp | .550 | 89 | 73 |
| Ugly and Worse | .485 | 79 | 83 |
| Kingdon Schadenfraude | .483 | 78 | 84 |
| Hope Your Team Sucks 1975-2000 | .367 | 59 | 103 |
| AL East | |||
|---|---|---|---|
| Team | Pythag | W | L |
| You Can Unscrew A Lightbulb | .591 | 96 | 66 |
| Bad to the Bone | .523 | 85 | 77 |
| Winning Optional | .452 | 73 | 89 |
| Pride of the Shortbus | .389 | 63 | 99 |
| AL Central | |||
|---|---|---|---|
| Team | Pythag | W | L |
| The. Cuckolds | .699 | 113 | 49 |
| ROUSTABOUTS Take My Team Please | .602 | 97 | 65 |
| Nebbish Homeboys | .518 | 84 | 78 |
| Free Popsicles | .455 | 74 | 88 |
| AL West | |||
|---|---|---|---|
| Team | Pythag | W | L |
| Unintended Consequences | .583 | 95 | 67 |
| Bargain Basement Braves | .545 | 88 | 74 |
| I Love Lamp | .475 | 77 | 85 |
| The Mighty Cobra | .376 | 61 | 101 |
Projected playoffs
NL field: Ask Me About My Beanie Baby Collection, Beavis & Butthead Do Whatifsports, Festering Piles of Putresence, The Genie’s Lamp.
I think this will come down to Beanie Baby Collection and Beavis & Butthead… AAA players and fatigue will have the most impact and in short series, Pedro will be more important, so I think Beavis ends up representing the NL.
AL field: The. Cuckolds, ROUSTABOUTS Take My Team Please, You Can Unscrew A Lightbulb, Unintended Consequences.
The Cuckolds won’t have much fatigue to deal with, which I think will help them hold out in the AL. And ultimately take the title.
Award projections
| League | Award | Player / Team |
|---|---|---|
| NL | MVP | Frank Thomas — The Genie’s Lamp |
| NL | Cy Young | Pedro Martinez — Beavis & Butthead Do Whatifsports |
| AL | MVP | Larry Walker — You Can Unscrew A Lightbulb |
| AL | Cy Young | Pedro Martinez — Nebbish Homeboys |
Notable observations
| Best Offenses (projected 1,000+ runs each) | |
|---|---|
| You Can Unscrew A Lightbulb | |
| Beavis & Butthead Do Whatifsports | |
| The Genie’s Lamp |
| Worst Offenses (may struggle to score 300 runs) | |
|---|---|
| Hope Your Team Sucks 1975-2000 | |
| Expertise in Sucky P Shines Finally | |
| Hitless in Seattle |
| Best Pitching — without defense (sub-700 R allowed potential) | |
|---|---|
| ROUSTABOUTS Take My Team Please | |
| GPs Gift of no Nething | |
| The. Cuckolds |
| Best Pitching — with defense (sub-800 R allowed) | |
|---|---|
| ROUSTABOUTS Take My Team Please | |
| The. Cuckolds | |
| Expertise in Sucky P Shines Finally |
| Best Defenses | |
|---|---|
| ROUSTABOUTS Take My Team Please | |
| Kingdon Schadenfraude | |
| Expertise in Sucky P Shines Finally |
| Worst Defenses (potential 300+ extra runs allowed each) | |
|---|---|
| The Mighty Cobra | |
| Ask Me About My Beanie Baby Collection | |
| The Genie’s Lamp |
Most frequently drafted player seasons
Hitters
| Year | Last | First | # |
|---|---|---|---|
| 1981 | Ainge | Danny | 8 |
| 1985 | Wright | George | 6 |
| 1975 | Sundberg | Jim | 6 |
| 1987 | Biancalana | Buddy | 5 |
| 1981 | DeJesus | Ivan | 5 |
Pitchers
| Year | Last | First | # |
|---|---|---|---|
| 2000 | Lima | Jose | 7 |
| 1981 | Waits | Rick | 6 |
| 1980 | Lamp | Dennis | 5 |
| 1996 | Van Poppel | Todd | 5 |
| 1999 | Kile | Darryl | 5 |
Midseason check-in: game 81 tracking
At the halfway point I tracked actual wins and losses against the preseason projections. The table below shows the preseason projected W-L, the game-81 actual record, the implied full-season extrapolation, and the difference from the original projection (sorted by largest positive deviation to largest negative).
| Team | Pre W | Pre L | G81 W | G81 L | G81 % | Extrap W | Extrap L | W Diff | % Diff |
|---|---|---|---|---|---|---|---|---|---|
| Hitless in Seattle | 53 | 109 | 47 | 34 | .580 | 94 | 68 | +41 | +.252 |
| Hope Your Team Sucks 1975-2000 | 60 | 102 | 39 | 42 | .481 | 78 | 84 | +18 | +.114 |
| I Love Lamp | 77 | 85 | 47 | 34 | .580 | 94 | 68 | +17 | +.105 |
| GPs Gift of no Nething | 88 | 74 | 51 | 30 | .630 | 102 | 60 | +14 | +.084 |
| No rain delays under the dome | 66 | 96 | 40 | 41 | .494 | 80 | 82 | +14 | +.084 |
| Kingdon Schadenfraude | 78 | 84 | 46 | 35 | .568 | 92 | 70 | +14 | +.084 |
| NJ Turd Burglars | 77 | 85 | 44 | 37 | .543 | 88 | 74 | +11 | +.070 |
| Pride of the Shortbus | 63 | 99 | 37 | 44 | .457 | 74 | 88 | +11 | +.067 |
| You Can Unscrew A Lightbulb | 96 | 66 | 52 | 29 | .642 | 104 | 58 | +8 | +.050 |
| The Genie’s Lamp | 87 | 75 | 47 | 34 | .580 | 94 | 68 | +7 | +.043 |
| Winning Optional | 73 | 89 | 40 | 41 | .494 | 80 | 82 | +7 | +.041 |
| Free Popsicles | 74 | 88 | 39 | 42 | .481 | 78 | 84 | +4 | +.026 |
| ROUSTABOUTS Take My Team Please | 98 | 64 | 50 | 31 | .617 | 100 | 62 | +2 | +.015 |
| Bargain Basement Braves | 88 | 74 | 44 | 37 | .543 | 88 | 74 | 0 | −.003 |
| Unintended Consequences | 95 | 67 | 46 | 35 | .568 | 92 | 70 | −3 | −.016 |
| Ugly and Worse | 79 | 83 | 37 | 44 | .457 | 74 | 88 | −5 | −.029 |
| Nebbish Homeboys | 84 | 78 | 39 | 42 | .481 | 78 | 84 | −6 | −.038 |
| Expertise in Sucky P Shines Finally | 62 | 100 | 26 | 55 | .321 | 52 | 110 | −10 | −.064 |
| The. Cuckolds | 113 | 49 | 50 | 31 | .617 | 100 | 62 | −13 | −.082 |
| The Mighty Cobra | 61 | 101 | 22 | 59 | .272 | 44 | 118 | −17 | −.105 |
| Bad to the Bone | 85 | 77 | 33 | 48 | .407 | 66 | 96 | −19 | −.116 |
| Festering Piles of Putresence | 89 | 73 | 33 | 48 | .407 | 66 | 96 | −23 | −.141 |
| Beavis & Butthead Do Whatifsports | 106 | 56 | 37 | 44 | .457 | 74 | 88 | −32 | −.197 |
| Ask Me About My Beanie Baby Collection | 93 | 69 | 26 | 55 | .321 | 52 | 110 | −41 | −.251 |
Game 81 observations
The two largest overperformers at the halfway point — Hitless in Seattle (+41 projected wins) and Ask Me About My Beanie Baby Collection (−41) — are essentially mirror images of each other in magnitude, representing the outer bounds of what the unmodeled variables (fatigue, OOP, AAA) can produce.
Both of the two-team owners’ situations played out differently: one team projected to make the playoffs was on track as expected, while the other was tracking significantly below projection at the midpoint.
The model’s best calls at game 81 were ROUSTABOUTS Take My Team Please (only +2 projected wins difference), Bargain Basement Braves (essentially exactly on projection), and You Can Unscrew A Lightbulb (+8, within noise). The Cuckolds, projected at 113 wins and the league’s dominant preseason favorite, were tracking to 100 wins at game 81 — still an excellent season, but 13 wins below projection, consistent with fatigue and/or competitive variance in a small sample of games.