SPB Git

spb/wp29_uqo

Public

# Contract — F3-conf-04 (written 2026-10-30)

Question. Over 40 rolling quarterly origins t = 2015Q4 … 2025Q3 (quarter labels 2015-10-01 … 2025-07-01), does a chosen time-series model beat the seasonal-naive forecast of Canadian quarterly CPI inflation (400·Δln of quarterly-average NSA CPI) at h = 1, 2, 4; and at h = 4 is the mean squared-error loss differential distinguishable from zero using a HAC (long-run variance) standard error?

Estimands. Per horizon h∈{1,2,4} and per model (snaive, own model): out-of-sample RMSE, MAE over the 40 origins; relative improvement 1 − RMSE_model/RMSE_snaive; at h=4: d̄ = mean(e²_snaive − e²_model), HAC SE (truncation lag ≥ 3, report lag and kernel), DM stat = d̄/SE, two-sided p-value. Meaningful under covariance stationarity of the loss differential (DM assumption) and treating the given vintage as the data (no real-time claim). Sample of 40 is small; DM normal approximation is asymptotic.

Seasonal naive. Forecast for quarter t+h = infl of quarter t+h−4.

Information rules. Forecast at origin t uses only quarters ≤ t (expanding window), including estimation, lag selection, any transformation. Target = infl of quarter t+h. Last target 2025Q3+4 = 2026Q3 (available).

Outputs. out/forecasts.csv (240 rows: origin_date, target_date, horizon, forecast, actual, model); out/results.json with keys task_id, model_name, model_description, n_origins, first_origin, last_origin, rmse/mae_snaive_h{1,2,4}, rmse/mae_model_h{1,2,4}, rel_improvement_rmse_h{1,2,4}, loss_diff_mean_h4, loss_diff_se_h4, hac_lags_h4, hac_kernel_h4, dm_stat_h4, dm_pvalue_h4, feasibility, feasibility_reason, data_issues, n_input_rows, n_analysed, random_seed; out/report.md (Question; Data and exclusions; Method; Results; Uncertainty; Limitations and open issues); out/analysis.py; out/claims.json; plus protocol files (state/, exclusions.csv).

Invalidity / impossibility. Use of data after origin in any forecast; missing targets; data hash mismatch; HAC lag < 3; negative long-run variance estimate (avoided by Bartlett kernel).

Files · main
Menu

Theme