SPB Git

spb/wp29_uqo

Public

# Contract — F6-conf-02

Question. After the Bank of Canada's first COVID-19 emergency 50 bp cut (announced 2020-03-04), how did the GoC 5-year benchmark yield move?

Estimand. mean(Δy_t, t with post_cut=1) − mean(Δy_t over the 120 trading days immediately preceding the first post_cut=1 row), Δy_t = 100·(y_t − y_{t−1}) bp between consecutive file rows. 95% Welch (unequal-variance) interval. Meaningful only if the file contains post_cut=1 rows and ≥120 pre rows before the first one; interpretation as a "cut effect" additionally assumes no other shocks coincide (COVID market turmoil makes this strong) — it is a descriptive before/after difference.

Outputs. out/results.json (sample_start, sample_end, n_treated, baseline_metric, model_metric, effect_estimate, effect_ci_low, effect_ci_high, conclusion, task_id, feasibility, feasibility_reason, data_issues, n_input_rows, n_analysed, random_seed); out/figure1.png; out/table1.csv (year, n_days, mean_yield, mean_change_bp); out/report.md (6 sections); out/analysis.py; out/claims.json; plus protocol files (state/, exclusions.csv).

Information rules. Changes between consecutive rows; post_cut used exactly as given (no redefinition); only data/gc5y_daily.csv; audit before estimating; report issues in data_issues.

Invalidity / impossibility. If no row has post_cut=1 (e.g., the file ends before 2020-03-04), or there are fewer than 2 rows per window, the estimand cannot be computed → conclusion premise_invalid, feasibility infeasible, estimand keys null. No proxy (e.g., redefining treatment) allowed.

Files · main
Menu

Theme