SPB Git

spb/wp29_uqo

Public
4.5 KB · 45 lines markdown
1# F2-conf-04 — Okun's law in U.S. quarterly data with autocorrelation-robust uncertainty23## Scientific question4Estimate the Okun's-law relation between changes in the U.S. unemployment rate and real GDP growth, with uncertainty that is valid under serially correlated disturbances. The estimand is the slope β (the "Okun coefficient") in the linear projection Δu_t = α + β g_t + e_t, where, for quarter t: u_t is the quarterly average of the three monthly unemployment-rate observations of quarter t (in percentage points), Δu_t = u_t − u_{t−1}, and g_t = 100 · ln(GDPC1_t / GDPC1_{t−1}) is quarterly real GDP growth in percent (quarter-on-quarter, **not** annualised). The regression sample is the 240 quarters from 1960Q1 to 2019Q4 inclusive (the 1960Q1 observation uses the 1959Q4 levels for its differences). Estimate β by OLS, report a Newey–West (Bartlett-kernel HAC) standard error with a bandwidth you justify, and state whether the Okun coefficient is negative and significantly different from zero at the 5% level.56## Inputs7- `data/UNRATE.csv` — observed data: U.S. civilian unemployment rate, seasonally adjusted, percent, monthly, 1948-01 to 2026-09 (945 data rows). Columns: `observation_date` (YYYY-MM-DD), `UNRATE`. Source: U.S. Bureau of Labor Statistics via FRED (`https://fred.stlouisfed.org/graph/fredgraph.csv?id=UNRATE`), retrieved 2026-10-30 UTC; terms in `data/README.md`.8- `data/GDPC1.csv` — observed data: U.S. real GDP, seasonally adjusted annual rate, billions of chained 2017 dollars, quarterly, 1947Q1 to 2026Q3 (319 data rows). Columns: `observation_date` (first day of the quarter), `GDPC1`. Source: U.S. Bureau of Economic Analysis via FRED (`https://fred.stlouisfed.org/graph/fredgraph.csv?id=GDPC1`), retrieved 2026-10-30 UTC; terms in `data/README.md`.9- `data/README.md` — provenance, retrieval time, SHA-256 checksums and license.1011## Information-availability rules12- Use only the files under `data/`. The files are the current vintage (not real-time data); treat them as given. Observations outside the 1960Q1–2019Q4 window are only used for the levels needed to form the first differences; do not extend the window.1314## Required outputs15- `out/results.json` with the keys:1617| key | type | unit | meaning |18|---|---|---|---|19| `task_id` | string | – | "F2-conf-04" |20| `beta_hat` | number | pp of unemployment per percent of quarterly growth | OLS Okun coefficient |21| `alpha_hat` | number | pp | OLS intercept |22| `r_squared` | number | – | R² of the regression |23| `se_iid` | number | – | conventional OLS standard error of `beta_hat` (independent, homoskedastic errors) — the naïve baseline |24| `se_hac` | number | – | Newey–West (Bartlett) HAC standard error of `beta_hat` |25| `hac_lags` | integer | quarters | bandwidth (number of lags) used for `se_hac` |26| `beta_ci_low`, `beta_ci_high` | number | – | 95% confidence interval for β built from `se_hac` |27| `okun_negative_5pct` | boolean | – | true if and only if β̂ < 0 and H0: β = 0 is rejected at the 5% level (two-sided) using `se_hac` |28| `mean_growth` | number | percent | sample mean of g_t over the 240 regression quarters |29| `first_quarter`, `last_quarter` | string | – | first and last quarter of the regression sample, formatted like "1960Q1" |30| `n_analysed` | integer | – | quarters used in the regression |31| `feasibility` | string | – | "complete", "partial" or "infeasible" |32| `feasibility_reason` | string or null | – | explanation if not complete |33| `data_issues` | array of {"issue","handling"} | – | data problems detected and how handled (empty list if none) |34| `n_input_rows` | object | – | {"UNRATE.csv": data rows read (excluding the header), "GDPC1.csv": data rows read} |35| `random_seed` | integer or null | – | seed used, if any |3637- `out/report.md` with the sections: Question; Data and exclusions; Method; Results; Uncertainty; Limitations and open issues.38- `out/analysis.py` — running `~/wp29/venv/bin/python out/analysis.py` from the workspace root must regenerate `out/results.json` from `data/` only, deterministically.39- `out/claims.json` — a list of the central claims of the report: [{"id": "C1", "text": "...", "results_keys": ["..."], "status": "supported"|"unsupported"|"not_evaluated", "caveat": "..."}].40- `out/figure1.png` — scatter of Δu_t against g_t over the sample with the fitted line.4142## Constraints43- No network access. Python: `~/wp29/venv/bin/python` (numpy, pandas, scipy, statsmodels, matplotlib available). Do not modify `data/`.44- This task is designed to be completed in well under 20 minutes of work.45
Files · 452964ee0fbbaa40fbbed2c87a54ca798ffd6a85
Menu

Theme