#FixTheWin

A few years back Brian Kenney introduced the hashtag #KillTheWin, which still lives on. Baseball fans point out egregious cases of a pitcher getting a win in a game despite pitching poorly. While the win might have been a useful metric for pitchers in the dead-ball era, when starters completed more than half their starts in aggregate, as baseball has evolved and bullpens have risen in prominence, the definition certainly has its flaws.

But it also has its history. Baseball fans still marvel at Cy Young’s total of 511, a seemingly impossible goal. While it’s become less common in the 21st century, a 20-game winner was once a standard of excellence among pitchers. Killing the win loses touch with that history. So instead, perhaps, we should consider trying improve it instead. In 2014, Tom Tango proposed a complete redefinition, a simple points system that would usually determine the pitcher most deserving of a win (or loss) in a given game. I wrote about the idea, and created a page to compute wins and losses under that proposal. Recently Tango e-mailed me with a different idea: suppose we keep the basic structure of the current rule, but instead of giving the win to the pitcher who recorded the last out before a team takes its lead for the final time, we give it to the first pitcher whose line for the game closes in a position to win the game, so long as that pitcher’s team still wins.

Continue reading

Posted in Sabermetrics | Comments Off on #FixTheWin

Comparing Projected HR leaders to actual

Tom Tango asked an interesting question on Twitter yesterday:
TangoForecastHR

The odds of the projected HR leader actually leading the league is an interesting question. I’ve been doing projections since 2011, so I thought I’d sweep my database for the RotoValue projections and see what that history was. That gives me just five years, but it turns out my projection model did correctly name the MLB home run leader once in those five years, or 20% of the time. Chris Davis hit 47 HR in 2015, leading MLB, while my model projected him to hit 35 HR. Note that when you’re leading the league, you’re not only very likely beating your own projection, you’re also probably beating all the projections, because the projected totals can be considered a weighted average of all possible outcomes for that player, and the possibility of a bad year or injury will pull that average down from what a peak player will produce when healthy. Also it’s not unusual for the league leader to be a player having a breakout year, well above what his past performance suggested.

Last year, Mark Trumbo’s career-best 47 HR topped MLB, despite my model projecting him for just 21.3 HR, the 46th best total. My projected 2016 leader was Chris Davis again, now projected to hit 37.9, and he actually slightly edged that out, with 38 HR. But I was not projecting the overall home run surge, and Davis’s 38 HR ranked only 12th best.

The actual MLB HR leader has regularly surprised my projections model. Only one other year, 2012, when Miguel Cabrera’s 44 HR led, was the actual leader among my preseason projected leaders (my model projected 34.5 HR for Cabrera, the 5th best projection). In the other years, the leader was projected 36th (Nelson Cruz moving to Baltimore in 2014), 90th (Chris Davis in 2013) and 73rd (Jose Bautista in 2011) by my model.

Over the 6 years, of the 60 players projected to finish in the top 10, 22 of them did so. Also, 24 of the 60 equaled or bettered their projected total, while 36 failed to reach the projected value.

Below the jump I’ve put tables for each year showing players projected to be in the top 10 in HR in my model, along with any players who actually finished in the top 10, along with their projected values.

Continue reading

Posted in Major League Baseball, Projections, Sabermetrics | Comments Off on Comparing Projected HR leaders to actual

Count von Count Riddler

I periodically attempt the FiveThirtyEight Riddler, edited by Oliver Roeder. This week he’s actually presenting two, a shorter “Riddler Express”, and a more time consuming “Riddler Classic”.

The Sesame Street character Count von Count likes to, well, count, and he now has his own twitter feed! For those who don’t recall the character from the show, he’s a purple muppet dressed in black, as a sort of kindly Dracula, who would count up in an eastern European accent.

Well, the twitter feed is simply the Count counting, albeit in words written out describing the number. As I type this, his latest tweet is “Eight Hundred Seventy Nine!”

So the Riddler Express is to find out how high can Count von Count count on twitter in this way before hitting its 140 character limit. Because he is enthusiastic, all his tweets must end with an exclamation mark.

Continue reading

Posted in Riddler | Comments Off on Count von Count Riddler

Pirate Riddler

This week’s FiveThirtyEight Riddler is a logic puzzle. Assume 10 “Perfectly Rational Pirate Logicians”. The pirates have found 10 gold pieces, and the puzzle is to figure out how they will allocate the loot among themselves. There are several constraints.

First, the pirates themselves are ranked in a strict hierarchy, with the Captain at the top, and then the others ordered beneath them, so if for any reason the Captain is no longer able to fulfill his duties, the second in command becomes new Captain, and everyone else moves up one step on the hierarchy.

Second, the Pirates practice a form of democracy. While the Captain, due to rank, gets to propose an allocation, the whole crew, with one vote per pirate, votes on the proposal. If that proposal gets half or more of the vote, it carries, but if more than half of the pirates vote against it, they will mutiny, killing the old Captain, and leaving it to the new captain to propose an allocation.

So our perfectly rational pirate logicians have three constraints in determining how they will vote on a proposed allocation:

  1. They value life above all, so they will not vote in a way to put their own lives at risk of mutiny if they can at all avoid doing so.
  2. They are greedy, so as long as their life is not at stake, they will vote for something which maximizes their own personal share of the loot.
  3. They are bloodthirsty, so if they have two choices in which they’d remain alive but get the same booty, they will prefer to mutiny and kill the captain.

Given the above constraints, how will the 10 pirates allocate their 10 newly found gold pieces?

Continue reading

Posted in Riddler | Comments Off on Pirate Riddler

FiveThirtyEight Baseball Division Champs Puzzle

Update: I’ve added a link to the Perl progam I used to do these simulations.

Oliver Roeder presents a weekly puzzler on FiveThirtyEight, and this week it was a baseball-themed puzzle. Assume a sport (say, “baseball”) in which each team plays 162 games in a season. Also assume a “division” (e.g. the “AL East”) containing 5 teams, each of exactly equal skill. In other words, each team has exactly a 50% chance of winning any given game. The puzzle is to compute the expected value of wins for the division-winner.

Interestingly, the problem is open to interpretation, and the result I get depends on what assumptions I make. My initial assumption was to treat each game for each team as a simple coin-flip. I ran 100,000 simulated “seasons”, getting an average of 88.4 wins for the division leader. But games have two teams, and who the opponent is could matter to this problem. In an extreme situation, the “coin flip” model could result in winning the division with 0 wins, in the highly improbable event that each team lost every game.

Since I happened to have the 2016 MLB schedule available, I used it for each game. This adds the constraint that in games involving two teams in the same division, one team winning implies its opponent must lose. Doing this, I got an average of 88.8 wins for the division winner.

The third variant I tested produced the toughest constraint: I assumed the five teams only played games among themselves (at least 40 against each opponent). Thus every win for one team always means a loss for its opponent. This gave me an average of 89.3 wins for the division winner.

Continue reading

Posted in Major League Baseball, Riddler, Sabermetrics | Comments Off on FiveThirtyEight Baseball Division Champs Puzzle

Comparing 2014 Projections – ERA and WHIP

Yesterday I ran comparisons of several projections systems for an all-inclusive batting statistic, wOBA. Today I’m running the same tests, computing root mean square error (RMSE) and mean absolute error (MAE), for two commonly used fantasy statistics, ERA and WHIP. These tests are bias-adjusted, so what matters is a player’s ERA or WHIP relative to the overall average of that system, compared with the player’s actual statistic relative to the actual overall average. The lower the RMSE or MAE, the better a projection system predicted the actual data.

I have data for these projection models:

  • AggPro – A projection aggregation method from Ross J. Gore, Cameron T. Snapp, and Timothy Highley.
  • Bayesball – Projections from Jonathan Adams.
  • CAIRO – from S B of the Replacement Level Yankees Weblog.
  • CBS Projections from CBS Sportsline.
  • Davenport Clay Davenport’s projections.
  • ESPN Projections from ESPN.
  • Fans Fans’ projections from Fangraphs.com.
  • Larson Will Larson’s projections.
  • Marcel – the basic projection model from Tom Tango, coauthor of The Book. This year I’m using Marcel numbers generated by Jeff Zimmerman, using Jeff Sackmann’s Python code.
  • MORPS – A projection model by Tim Oberschlake.
  • Rosenheck Projections by Dan Rosenheck.
  • Oliver – Brian Cartwright’s projection model.
  • Steamer – Projections by Jared Cross, Dash Davidson, and Peter Rosenbloom.
  • Steamer/Razzball – Steamer rate projections, but playing time projections from Rudy Gamble of Razzball.com.
  • RotoValue – my current model, based largely on Marcel, but with adjustments forpitching decision stats and assuming no pitcher skill in BABIP.
  • RV Pre-Australia – The RotoValue projections taken just before the first Australia games last year. Before the rest of the regular season I continued to tweak projections slightly.
  • ZiPS – projections from Dan Szymborski of Baseball Think Factory and ESPN.

First up is ERA, comparing the 75 pitchers projected by all systems: Continue reading

Posted in Major League Baseball, Projections, Sabermetrics | Comments Off on Comparing 2014 Projections – ERA and WHIP

Comparing 2014 Projections – wOBA

In the past three years I’ve done reviews of baseball projections systems with actual data for those systems for which I could get data. Will Larson maintains a valuable site of projections from many different sources, and most of the sources I’m comparing are from that.

As in the past, I’m computing root mean square error (RMSE) and mean absolute error (MAE) for each source compared to actual data. For these tests, I am doing a bias adjustment, so the errors are relative to the average of a source. I care more about how a system projects players relative to its own projected averages than about how well it projlects the overall league average.

I have data from these systems:

  • AggPro – A projection aggregation method from Ross J. Gore, Cameron T. Snapp, and Timothy Highley.
  • Bayesball – Projections from Jonathan Adams.
  • CAIRO – from S B of the Replacement Level Yankees Weblog.
  • CBS Projections from CBS Sportsline.
  • Davenport Clay Davenport’s projections.
  • ESPN Projections from ESPN.
  • Fans Fans’ projections from Fangraphs.com.
  • Larson Will Larson’s projections.
  • Marcel – the basic projection model from Tom Tango, coauthor of The Book. This year I’m using Marcel numbers generated by Jeff Zimmerman, using Jeff Sackmann’s Python code.
  • MORPS – A projection model by Tim Oberschlake.
  • Rosenheck Projections by Dan Rosenheck.
  • Oliver – Brian Cartwright’s projection model.
  • Steamer – Projections by Jared Cross, Dash Davidson, and Peter Rosenbloom.
  • Steamer/Razzball – Steamer rate projections, but playing time projections from Rudy Gamble of Razzball.com.
  • RotoValue – my current model, based largely on Marcel, but with adjustments for pitching decision stats and assuming no pitcher skill in BABIP.
  • RV Pre-Australia – The RotoValue projections taken just before the first Australia games last year. Before the rest of the regular season I continued to tweak projections slightly.
  • ZiPS – projections from Dan Szymborski of Baseball Think Factory and ESPN.

In addition, I’ve computed a source “All Consensus”, which is  a simple average of each of the above (ignoring a source if it doesn’t project some particular category).

Not all the models had enough data to compute wOBA, so the tables (below the jump) only include those sources which do. The other sources do affect the All Consensus values for those stats where they do have data.

Continue reading

Posted in Major League Baseball, Projections, Sabermetrics | 2 Comments

RV Current for NBA

Similar to what I’ve done with baseball, I’m now running new projections daily for NBA players under the name RV Current. These projections add current year data into the model, increasing the weight given to the current season as more games are played.

This early in the season, the numbers aren’t much different from my preseason projections. But RV Current will continue to adjust to changing factors and on-court play, whereas the preseason projections just stay the same.

I should add that one other feature of player search pages: when showing projections for some mid-season future date range, they now automatically prorate projections based on known injuries. The site will try to determine a target return date from injury reports, and if a player isn’t expected back soon, his number of games will be reduced by the number he’s expected to miss. The injury reports page now also shows a Target Return? date, which, when present, will result in that players’s stats being scaled down when shown in a Search page. For a PlayerDetail page, the projections will simply show an expected full year projection for a player (which will be for much fewer than 82 games if a player has been especially injury prone in the past).

Projections are always fuzzy, but by incorporating newer data into daily projections, and taking known injuries into account when searching for player data, I’m trying to make them a little bit clearer.

 

 

Posted in NBA Basketball, Projections | Comments Off on RV Current for NBA

Points-based scoring in MLB?

Tom Tango proposed a points system for MLB, allowing for ties and not using extra innings. He proposed giving each team 5 points to start. Extra inning games stayed at 5 points, treating them as a tie. If you win by 1, you get 1 more point; winning by 2 gets 3 more points, and winning by 3 or more is 5 more points, while losing by 1, 2, or 3+ would result in earning 1, 3, or 5 fewer points.

He added in a 1 point bonus  if a home team won by 2 or less without batting in the bottom of the 9th, or if they won with either 0 out, 1 out with 1 on, or 2 out with 2 on (presumably giving value to their chances of scoring if they played the 9th to completion), with a corresponding penalty for a visiting team losing in such circumstances.

So each game would result in a total of 10 points allocated to the two teams. An equivalent framing would be:

  • 10 – win by 3+
  • 8 – win by 2
  • 6 – win by 1
  • 5 – tie/extra innings
  • 4 – lose by 1
  • 2 – lose by 2
  • 0 – lose by 3+

Add/subtract 1 point for handling the bottom of the 9th.

He asked someone to run the numbers for 2014, and I took a crack at it. My database keeps line scores, but not the base-out state when a walk-off game ends, so I couldn’t do the bonus for winning in the bottom of the 9th with extra outs left or runners on, but I handled the rest.

I started thinking about this model in more detail. If MLB actually played under this sort of points system, that would change incentives for teams and managers. Now winning by 3, or even 2, becomes a lot better than winning by just 1. Lots of saber-inclined people complain bitterly about how the current save rule distorts bullpen management, with managers often bringing in a closer to pick up an easy save rather than using him in a tie game which has a higher leverage index. But in this modified scoring system, it actually would make more sense to use the closer with a 3-run lead than to preserve a 1-run lead, or in a tie game. You gain just 2 points relative to your opponent if you go from a tie to a 1-run lead, but if your 3-run lead drops to 2, you drop 4 points. So a leverage index under that scoring system would actually be higher when you have a 2-3 run lead than in a tie game!

That doesn’t fit well with me intuitively, so I thought about tinkering with his model. My first thought was rather than 10-8-6-5-4-2-0, trying 10-9-7-5-3-1-0. That gives the first marginal run more than your opponents more weight than any other, but it also makes that first insurance run worth exactly the same. To keep symmetry, but to have diminishing returns as your margin of victory increases, I switched to a 12-point, rather than 10-point, scale: 12-11-8-5-2-1-0. This preserves higher importance for getting a win than for winning by more, which is good. The main downside I see is that under a 10-point scale per game, points per game provides a nice, easy comparison with winning percentage under the old model, whereas with a 12-point scale, the average, rather than being 5.00, is now 6.00.

Still, I suppose one could just look at points per potential points as a proxy for winning percentage if one were so inclined. Hockey or soccer standings don’t typically bother with that, so maybe there wouldn’t be much interest.

I’ve created a page that can show both the original proposal from Tango or whatever other ranking you’d like. The original Tango proposal is here, and this page shows standings using my 12-point scale proposal. The page has data going back to 2010, and you can enter your own point values for the various win conditions if you’d like to try something else!

Update: Tango agreed that the original weights were off, but he views a 10-point system as a constraint. He came up with the same alternate 10-point scale I did, so I’ll change the page to default to using that. This link implements the modified proposal.

Posted in Major League Baseball, Sabermetrics | Comments Off on Points-based scoring in MLB?

Tracking Injuries…

I’ve just rolled out some enhancements to RotoValue’s handling of injury reports.

Now in addition to displaying reports, and highlighting the injury on player searches, I’ve added a new field, called Target Return:

NBA Injury Report Continue reading

Posted in NBA Basketball, Projections, RotoValue | Comments Off on Tracking Injuries…