The Top 50 Pitchers Since 1950

Who are the best starting pitchers of the past 60+ years? One way to answer that question is using RE24, the measure of how much a pitcher reduces his opponent’s’ run expectancy with each batter faced.

Starting from each of the 24 base-out states (ranging from nobody on, nobody out to to bases loaded, two out), there is an expected number of runs a team will score in the remainder of that inning, based on average hitters facing average pitchers. With the result of each plate appearance, a pitcher is credited with the resulting change in run expectancy (which can be positive or negative) less any runs allowed.

RE24, then, tells you how many runs a pitcher saved or cost his team relative to the average pitcher in the same base-out situations. Over the course of a career, the batters each pitcher faces will collectively approximate an average batter, allowing some reasonable basis for comparing different pitchers (with the possibly large caveat that RE24 does not adjust for park factors, team defense or other factors).

After the jump, the top 50 since 1950.

I’m using the metric RE24/9 to show the number of runs per 9 innings that a pitcher was better than the average pitcher in the base-out states that the pitcher faced. To qualify, a pitcher must have compiled 2000 IP since 1950. Only seasons since 1950 are counted (the data back to 1950 are mostly complete, with some data back to 1945, and scant data prior to that). Of the 220 qualifying pitchers, these are the top 50 in RE24/9.

[table id=162 /]

The column labeled boLI stands for base-out leverage index, which is a measure of how much leverage was associated with each plate appearance. What is meant by leverage? Essentially, this is a measure of how much variability there is in the run expectancies that could result from a given PA. Without getting too technical, from a base-out state with m baserunners and n outs, a PA can obviously only result in base-out states with a maximum of m+1 baserunners and a minimum of n outs. A weighted average of the differences (absolute values) in run expectancies between the current base-out state and each of the possible subsequent states (with the weights corresponding to the empirical probability for each transition) yields the boLI for that plate appearance.

Intuitively, boLIs are higher with more runners on base and lower if fewer. Thus, the pitchers with lower boLI numbers are those better at keeping men off base, while pitchers with higher numbers are less adept at this. By dividing boLI into RE24, RE24 is normalized (or “de-leveraged”) by showing how well pitchers did relative only to the range of outcomes possible from their base-out states. If I’ve confused the heck out of you, this explanation may be easier to grasp.

Ranking by RE24boLI/9 (boLI divided into RE24/9), those same fifty pitchers look like this.

[table id=167 /]

.

And, combining the two measures, here are our 50 pitchers, ordered by the sum of their rankings in the previous two lists.

[table id=168 /]

Finally, here are some other notable pitchers and their rankings (out of 220) in both RE24 and RE24boLI.

Player RE24/9 RE24 Rk RE24 boLI/9 RE24 boLI Rk IP
Don Sutton 0.512 55 0.696 38 5282.1
Gaylord Perry 0.518 53 0.633 43 5350.0
Nolan Ryan 0.471 58 0.636 42 5386.0
Fergie Jenkins 0.517 54 0.590 46 4500.2
Jon Matlack 0.498 56 0.601 45 2363.0
Jim Bunning 0.527 52 0.520 58 3760.1
David Wells 0.464 61 0.561 52 3439.0
Steve Carlton 0.475 57 0.523 57 5217.2
Orel Hershiser 0.434 68 0.565 50 3130.1
Dean Chance 0.469 59 0.515 59 2147.1
Freddy Garcia 0.530 51 0.452 70 2264.0
Mark Gubicza 0.436 67 0.541 56 2223.1
Frank Viola 0.463 62 0.458 67 2836.1
Vida Blue 0.440 63 0.434 74 3343.1
Rick Reuschel 0.405 73 0.462 64 3548.1
Jerry Koosman 0.406 72 0.425 76 3839.1
Milt Pappas 0.412 71 0.412 77 3186.0
Frank Lary 0.433 69 0.404 81 2162.1
Mel Stottlemyre 0.437 65 0.368 86 2661.1
John Lackey 0.350 79 0.410 78 2065.1
Catfish Hunter 0.387 74 0.373 85 3449.1
Tommy John 0.344 81 0.354 89 4710.1
Jack Morris 0.284 94 0.352 90 3824.0
Phil Niekro 0.310 90 0.290 107 5404.0
Kenny Rogers 0.234 108 0.321 97 3302.2
Johnny Podres 0.321 89 0.223 118 2265.0
Mike Flanagan 0.226 111 0.222 119 2770.0
A.J. Burnett 0.243 103 0.198 127 2353.2
Frank Tanana 0.254 100 0.173 135 4188.1
Harvey Haddix 0.214 116 0.189 133 2235.0
Lew Burdette 0.169 133 0.224 117 3067.1
Mickey Lolich 0.201 121 0.179 134 3638.1
Fernando Valenzuela 0.187 127 0.169 139 2930.0
Scott McGregor 0.174 132 0.172 136 2140.2
Wilbur Wood 0.186 128 0.165 140 2684.0
Charlie Hough 0.163 134 0.133 148 3801.1
Dave Stewart 0.123 146 0.075 159 2629.2
Jim Kaat 0.055 161 0.097 153 4530.1
Jerry Reuss -0.027 176 0.084 154 3669.2
Rick Sutcliffe 0.008 173 0.073 160 2697.2
Tim Wakefield 0.053 164 0.030 171 3226.1
Jim Clancy -0.092 189 0.020 172 2517.1
Ryan Dempster -0.044 181 -0.128 190 2387.0
Livan Hernandez -0.117 197 -0.214 207 3189.0

35 thoughts on “The Top 50 Pitchers Since 1950


    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

        Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

          Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

        Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

        Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

          Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

            Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

    Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

      Warning: call_user_func() expects parameter 1 to be a valid callback, function 'gtcn_basic_callback' not found or invalid function name in /home/highheatstats/highheatstats.com/wp-includes/class-walker-comment.php on line 180

Leave a Reply

Your email address will not be published. Required fields are marked *