A few weeks ago I began dabbling with a stat that combined extremely well hit balls and walks plus extremely poorly hit balls and strike outs. In other words, automatic successful at bats versus automatic failed at bats. The aim here is to blend the line between Defense Independent Pitching, which largely ignores BABIP, and the newer, more nuanced approach towards judging batted ball quality.
When I announced this plan on twitter, Tom Tango pointed me towards an article he had written all the way back in 2010, which accomplished something very similar. Tom used line drives, ground balls, infield fly balls and outfield fly ball designations to create two separate categories of plate appearance value, which he called bigs and smalls.
The Bigs were given a weight of 11, and the smalls a weight of 3. Sum the two and add a constant (whatever number is required to bring the league average figure up to the league average ERA).
After reading this, I set out to create my own up to date version of bbFIP using Statcast derived numbers.
In the following weeks I have gone through many iterations of this stat, using many different starting points. I tried using hit probabilities, and while the results were okay, they weren't on par with what I was expecting. I have since moved to xOBA values, which has helped quite a bit. I toyed with including or excluding walks, hit by pitch, strike outs, home runs, medium hit balls, and many other factors. In the end, I came up with the following formula.
where W = weak contact (xOBA ≤ .245), S = strong contact (xOBA ≥ .634), and sHR = strong home runs (xHR% ≥ .55).
This gives you what I call "OUTs". You can then convert this to bbFIP by multiplying by -11 and adding a constant, which is roughly 5.4.
Strikeouts have an xOBA value of 0, that means the strikeout is double counted in this formula. The first time it is given a value of .77, and the second time it is given a value of .17, so together it has a total value of .94.
The same is true for walks, hit by pitch, and home runs. They have a total value of 2.50, 2.21, and 4.04, respectively.
I will continue to test and iterate, so I may stumble upon superior combinations of stats over time. However, I've already ran through nearly 400 combinations and these have generated the best results.
Why use bbFIP?
I've looked at every pitcher over the past 2+ seasons who threw at least 20 innings in one season. Of these 1380 pitchers (many are double or triple counted), FIP had an MSE of 1.027, and bbFIP .968. In other words, for roughly two thirds of pitchers, bbFIP was within .968 runs of their ERA, while FIP was within 1.027 runs.
You can consult the table below for the in season results.
And the Year to Year results.
In all but one case, bbFIP is superior. The case where it isn't? Comparing this season to last. That is an odd one, I'm not sure I can explain it. Maybe you can? Either way, bbFIP appears to have less error over time, and the error is, for the most part, less than a run. In the past two seasons, it has hovered around .93 of a run, although the first half of this season is up towards 1.08. The 2015 to 2016 numbers and 2015 to 2017 numbers are both promising, and perhaps by the end of the season the 2016-2017 numbers will fall into place as well.
In my original post, I made an error in the numbers. This error was caused by sloppiness, in which I accidentally combined two groups of data that should not have been combined. I was able to recreate the error, so I know exactly what I did wrong. I have reran the numbers, this time without that sloppiness, and I have updated this post with those results. I have also included walks minus strikeouts FIP. Which follows a simple formula.
In terms of predictive ability, bbFIP might be somewhere between w-kFIP and FIP. Simplicity still wins the day.
However, I still believe this stat is a worthy of your attention, and I am curious how it fares as time goes on.
I know that FIP was originally developed to be easy to calculate. You just take a few numbers multiply by integers, add them up, and divide by innings pitched. You just needed a sheet of paper to do the long division, or a simple calculator. This version of bbFIP is not as easy. That is unfortunate. In principle it isn't very difficult, just multiplication, addition, and a bit of division. However, calculating the xOBA and xHR values cannot be done by hand. And they aren't available publicly, although you could use the xwOBA which might give similar results.
In my spreadsheets I have supplied bbFIP for all pitchers, and OUTs for all batters. You can easily convert from OUTs to bbFIP by multiplying by -11 and adding 5.4-ish. Tell me if you'd rather have bbFIP for batters.
Finally, here are the league average OUTs and bbFIP Constants.