Okun's law in U.S. quarterly data, 1960Q1–2019Q4, with HAC uncertainty (F2-conf-04)
Question
Estimate β in the linear projection Δu_t = α + β g_t + e_t. Here u_t is the quarterly average of monthly UNRATE (pp) and g_t = 100·ln(GDPC1_t/GDPC1_{t−1}), i.e. quarter-on-quarter growth in percent, not annualised. The sample is 1960Q1–2019Q4. The task asks whether β is negative and significantly different from zero at the 5% level, using a Newey–West standard error.
Data and exclusions
- Inputs:
data/UNRATE.csv(945 monthly rows) anddata/GDPC1.csv(319 quarterly rows) (n_input_rows). Both SHA-256 checksums matchdata/README.md; seeout/state/data_audit.md. - Data issue: one UNRATE value is missing (2025-10-01). It lies outside the range the regression needs, so it has no effect (
data_issues). - Exclusions (
out/exclusions.csv), counted on the quarterly panel:- 319 GDPC1 quarters to start.
- −78 quarters outside 1959Q4–2019Q4.
- −0 quarters dropped for lacking 3 UNRATE months (none in the window).
- −1 for 1959Q4, which is used only as the level for the first differences.
- This leaves 240 quarters (
n_analysed), fromfirst_quarter= 1960Q1 tolast_quarter= 2019Q4.
Method
- I estimated the regression by OLS of Δu_t on a constant and g_t (statsmodels).
- Naïve baseline: the conventional OLS standard error, which assumes independent, equal-variance errors (
se_iid). - Robust standard error: Newey–West HAC with a Bartlett kernel, without a small-sample degrees-of-freedom correction (
se_hac).- Bandwidth:
hac_lags= 4. This comes from the Newey–West (1994) rule of thumb floor(4·(T/100)^{2/9}) with T = 240. The alternative rule floor(0.75·T^{1/3}) also gives 4. - Choosing a HAC correction at all is justified: the OLS residuals have a first-order autocorrelation of 0.39 (
resid_lag1_autocorr).
- Bandwidth:
- The 95% interval is β̂ ± 1.96·
se_hac(normal critical value,z_crit). - The script uses no randomness (
random_seed= null). - Figure:
out/figure1.pngplots Δu_t against g_t with the fitted line.
Results
- Okun coefficient:
beta_hat= −0.2558. Each extra percentage point of quarterly real GDP growth goes with a fall of about 0.26 pp in the unemployment rate in the same quarter. - Intercept:
alpha_hat= 0.1844 pp. - Fit:
r_squared= 0.408. - Implied break-even growth, where predicted Δu = 0: −α̂/β̂ ≈ 0.72 % per quarter, about 2.9 % annualised. This is derived arithmetically from
alpha_hatandbeta_hat. - Average growth:
mean_growth= 0.754 % per quarter. - Conclusion:
okun_negative_5pct= true. β̂ is negative, and the HAC t-statistic is −7.14 (t_stat_hac, two-sided p ≈ 1e-12,p_value_hac).
Uncertainty
se_iid= 0.0200;se_hac= 0.0358 (L = 4). The HAC standard error is about 1.8 times the naïve one, so ignoring serial correlation understates the uncertainty substantially.- 95% HAC interval: [
beta_ci_low,beta_ci_high] = [−0.326, −0.186]. The naïve interval is [−0.295, −0.217] (baseline_ci_iid_low,baseline_ci_iid_high). - Sensitivity to the bandwidth (
se_hac_by_lags): the HAC standard error ranges from 0.029 (L = 0, which is White's heteroskedasticity-robust SE) to 0.037 (L = 8). It is 0.0364 at L = 12. - Applying the small-sample correction n/(n−k) gives 0.0360 (
se_hac_small_sample_corrected). - Under every one of these choices the interval stays well below zero.
Limitations and open issues
- β is a descriptive linear-projection coefficient, not a causal effect. It assumes a stable relation over 1960–2019; Okun coefficients are known to drift over time, and I did not test for structural breaks because the task does not ask for it.
- The data are the current vintage, with GDP revised and in chained 2017 dollars, not the real-time data available at each date.
- Normal-approximation inference with a Bartlett HAC estimator can over-reject in finite samples when residuals are persistent. Given |t| ≈ 7, this does not threaten the conclusion.
- No part of the task was infeasible (
feasibility= "complete").