Thursday, August 29, 2024

HIT Grade

1. Step 1 is to find an initial true-talent BA for ballparks, using batters' BA and pitchers' BA allowed.

If a .300 batter faces a .280 pitcher and the MLB average is .250 (reg. and p.s. numbers combined), what is the xBA (expected batting avg.) for the at-bat?

B = .300 / .700 = .429
P = .280 / .720 = .389
L = .250 / .750 = .333

B x P / L = .429 x .389 / .333 = .5

.5 to 1 odds, or an xBA = .5 (.5 + 1) = .333

If the hitter gets a hit, the ballpark gets (1 - .333) = .667 HAA.

If the hitter has a hitless at-bat, the ballpark gets (0 - .333) = -.333 HAA.

Take the sum of all at-bats in the ballpark and multiply by the MLB BA, then add the total HAA for all at-bats in that ballpark. Divide by ballpark at-bats, and that's the first version of the ballpark's true-talent BA.

((pAB x lgBA) + pHAA) / pAB = pBA1

(If using the odds-ratio method results in a divide-by-zero error (or uses too much memory), I can use add/subtract or multiply/divide instead.
.300 +.280 - .250 = .330
.300 x .280 / .250 = .336)

2. Now I repeat the process, but for pitchers' true-talent BA.

battersBA + ballparkBA1* - mlbBA = pitchers xBA

* initial true-talent estimate of ballpark BA from step 1 above.

A .300 batter in a .230 park in a .250 league:

ORM: (.300 / .700) x (.230 / .770) / (.250 / .750) = .384 / 1.384 = .277
A/S: .300 + .230 - .250 = .280
M/D: .300 x .230 / .250 = .276

A hit = (1 - .28) = .72 HAA. Hitless at-bat = -.28 HAA.

((pAB x lgBA) + pHAA) / pAB = pBA1

The Hack Wilson Project

In Aaron Judge's first plate appearance of the 2024 season, March 28th in Houston, he came up with a runner on 1st and one out. In the 1...