Monday 26 May 2014

NERD Fight

In 2010 Fangraphs' Carson Cistulli, in response to a throwaway line on ESPN by Rob Neyer discussing Cistulli's own Fangraphs post on 'Why We Watch' baseball, developed a means of capturing the appeal of a given baseball game between major-league teams to a number on a 1 to 10 scale. Cistulli christened this 'NERD'.

I didn't find NERD myself until a couple of years ago, and I have used it from time to time to help me choose what baseball game to follow. Having studied its components, I came to realise that what I find 'watchable' about a baseball game is not at all the same things Cistulli enjoys. For me, a baseball game's enjoyment depends on the following:

a) Baserunners who score. Getting men on base who don't score is the sign of a mediocre offense and a lot of frustration for their fans. Solo home runs put the 'i' in team.

b) Batters who look for contact. Nothing is more dull than watching a succession of batters standing at the plate looking for their pitch, and winding up either called out on strikes or taking a walk. Give me eight or nine Vladimir Guerreros in my lineup any day.

c) Exciting fielding plays. Grabbing a ball at the edge of one's fielding zone either starts with an exciting run towards where the ball is going to land or ends with a bang-bang play on a throw to the base.

d) A bullpen that is likely to keep it close, even if that means not adding an eighth run. I don't want to see relievers giving up more and more runs if it just isn't the starter's day.

e) A starter who works fast and misses bats in the zone ensures steady action in the game.

f) However, a starter who induces swings at pitches out of the zone probably has a lot of deceptive movement, which is a joy for pitching aficionados.

And that's it. Everything else should be secondary to these elements. I don't care to put more emphasis on seeing younger, cheaper teams in preference to older, more expensive ones. There's a good chance that the latter have more star players building Hall of Fame cases. I'm not interested in whether the commentators are exceptionally good or exceptionally bad, because I've always been able to tune the bad ones out. I find home runs boring. Much better to watch two doubles than one dinger.

So, here's version 1 of my formula:

Team Score, step-by-step

Add together the following components.

1) Subtract a team's home runs from hits and runs. Divide remaining hits by remaining runs. Calculate a Z score. Multiply that times 4.

2) Find the hitters' Pitch F/X Swing percentage. Multiply that times a notional 100 pitches. (Eg, a 50% swing percentage would give you 50 pitches swung at.) Multiply that times the Pitch F/X Contact percentage. (Eg, a 50% contact percentage would give you 25 pitches actually struck.) Calculate another Z score and multiply that times 4.

3) Get the bullpen xFIPs for all teams. Calculate another Z score. Multiply that first by -1 so that the negative numbers become positive and vice versa, and then multiply that times 2.

4) Find the OOZ plays for each time in Revised Zone Rating on Fangraphs. Calculate a fourth Z score.

The sum of these four components will give a raw Team Score. One then needs to adjust it to scale from 1 to 30 by adding a constant. Take the lowest score and adjust it to equal 1. Adjust all other scores by the same amount. One has now arrived at the final Team Score.

Starter Score:

First, get the following scores (I use Fangraphs): the speed at which starters work (Pace at Fangraphs), their Pitch F/X O-swing, Z-Swing and Z-Contact percentages.

1) Calculate a Z-score for Pace.

2) For the Z-Swing and Z-Contact, use the '100 pitches' method used in calculating Team Score (2) above, first calculating the number of Z-Swings out of 100 and then the number of Z-Contact out of that. Calculate a Z-Score for that, but multiply it by minus 1 so that the pitchers who miss bats have positive numbers, and those whose pitches are hit have negative numbers.

3) Do the same for the O-Swing percentage, but don't multiply your Z-score by minus 1.

Add all these up to arrive at a raw Starter Score. One needs to adjust these as well, but this requires a little more art than was required by the Team Score. The objective here is again to avoid negative scores, but one also has to allow for the minimum number of innings one thinks is necessary to rate a pitcher. At the moment, I use 14, because that's the minimum needed to include Robbie Ray in the list. Since Robbie Ray's raw score is -3.5, I add 4.5 to everybody (even those with fewer than 14 innings pitched). If I chose, instead, to adopt a minimum of 20 innings pitched, the constant would become 4.1, and Robbie Ray would have a negative score.

Game Score:

For each game, add together the two Team Scores and divide by 4. Then, add together the Starter Scores and divide by 2, thus giving the Starters more weight than the Teams. Finally, divide that sum by 2. At theoretical extremes, you might get scores higher than ten or lower than one, but these can be capped at ten or one respectively. Everything else will scale out between 10 and 1.

I have only played around with this system a couple of days, but so far I like the results. However, it is somewhat time consuming, and unless someone starts paying me to supply the data, I'll only do it when I have time and am in the mood. Here are some scores for today's games:

NY Yankees vs St Louis Cardinals 8 (TOP GAME)

Colorado Rockies vs Philadelphia Phillies 7 (MLB.tv FREE GAME)

Detroit Tigers vs Oakland Athletics 7

San Diego Padres vs Arizona Diamondbacks 6

Miami Marlins vs Washington Nationals 4

No comments: