# F6-conf-01 — Weekday effects in daily changes of the 10-year Treasury yield ## Question Can the day of the week predict the one-day change Δy_t (basis points) in the 10-year US Treasury constant-maturity yield (FRED DGS10), 2000–2019? We look at three things: (i) a joint test of equal weekday means, (ii) the Monday contrast (Monday mean minus the mean of Tuesday–Friday) with a 95% interval, and (iii) out-of-sample forecasts from weekday means compared with a zero-change (random-walk) forecast. ## Data and exclusions - Input: `data/DGS10.csv`, 5217 rows (`n_input_rows`). The SHA-256 matches the README. Dates run from 2000-01-03 to 2019-12-31, every date is a weekday, and there are no duplicate dates. - 215 rows have an empty yield field because markets were closed for US holidays (`n_missing_rows` = 215). We dropped these rows before differencing. The first available observation has no change, so 1 more row is lost. That leaves 5001 daily changes (`n_analysed`). The arithmetic is in `out/exclusions.csv`. - Split: 2500 changes in the estimation period, dated on or before 2009-12-31 (`n_train`), and 2501 in the evaluation period, dated on or after 2010-01-01 (`n_test`). - Data issues are listed in `data_issues`: - 155 changes span holiday gaps of more than 3 calendar days. Following the task rule, we kept them and dated each to its weekday. Because Monday holidays are dropped, Monday has the fewest changes (919; `out/table1.csv`). - The changes have heavy tails. The largest move is −51 bp on 2009-03-18, the day of an FOMC announcement. We removed no outliers. ## Method - Joint test: a classical one-way, equal-variance ANOVA of Δy on weekday over all 5001 changes, giving an F(4, 4996) statistic (scipy `f_oneway`). We checked the result against statsmodels OLS and got the same answer. - Monday contrast: the mean on Mondays minus the mean on Tuesday–Friday, with a **Welch** two-sample 95% t-interval. We chose Welch because it does not assume equal variances. As a sensitivity check, an OLS regression on a Monday dummy with HC1 standard errors gives almost the same interval (see `out/state/checks.md`). - Out-of-sample: each evaluation-period change is forecast by the estimation-period mean change for its weekday. We compare the RMSE of this forecast (`model_metric`) with the RMSE of a zero-change forecast (`baseline_metric`). As a supplement, a Diebold–Mariano-type t-test is applied to the difference in squared errors. - Decision rule: the `conclusion` code comes from the ANOVA at the 5% level. Only if the ANOVA rejects does the sign of the Monday interval set the code. - No randomness is used (`random_seed` = null). Every output is produced by `out/analysis.py`. ## Results - Weekday means (`out/table1.csv`, `out/figure1.png`) are all within ±0.22 bp of zero. Their standard errors are about 0.16–0.19 bp. - **Joint test:** F = 0.263 (`anova_f_stat`), p = 0.90 (`anova_p_value`). There is no evidence that mean changes differ across weekdays. - **Monday contrast:** +0.050 bp (`effect_estimate`), 95% Welch CI [−0.319, 0.420] bp (`effect_ci_low`, `effect_ci_high`), Welch p = 0.79 (`effect_welch_p_value`). - **Out-of-sample (2010–2019):** | forecast | RMSE (bp) | key | |---|---|---| | zero change | 4.876 | `baseline_metric` | | weekday means | 4.884 | `model_metric` | The weekday-mean forecast is slightly *worse*: its RMSE is 1.0017 times the baseline (`rmse_ratio_model_to_baseline`). On the Diebold–Mariano-type test of squared errors, t = 1.86 and p = 0.063 (`oos_dm_t_stat`, `oos_dm_p_value`). - **Conclusion:** `no_detectable_effect` (`conclusion`). Over this sample, the day of the week has no detectable predictive content for daily changes in the 10-year yield. ## Uncertainty - The 95% interval for the Monday contrast, [−0.32, +0.42] bp, rules out Monday effects larger than about 0.4 bp per day in either direction. That is small compared with the 5.7 bp standard deviation of daily changes. - The ANOVA p-value of 0.90 is far from any conventional threshold. - The out-of-sample RMSE gap (0.008 bp) is small, and the supplementary test does not establish it at 5%. What we can say is that the weekday means did not *improve* on the random walk. - The Welch and HC1 intervals agree to within 0.001 bp, so the result does not depend on which two-sample method is used. ## Limitations and open issues - **Assumptions behind the inference:** - The ANOVA assumes equal variances and roughly independent errors. Daily yield changes show volatility clustering, and their variance shifts between regimes (2008–09 crisis versus the 2010s). - The Welch interval relaxes equal variances but not independence. We did not check for serial correlation or apply HAC/block-bootstrap intervals. - With n ≈ 1000 per weekday the central limit theorem makes the mean tests robust to heavy tails. Even so, a few extreme days such as 2009-03-18 can move individual weekday means by roughly 0.05 bp. - **Calendar conventions:** changes after holidays cover more than one trading interval but are attributed to the weekday of t, as the task requires. This mechanically mixes "post-holiday" and "Monday" effects. We did not test any other convention, such as excluding multi-day gaps. - **What we did not check:** - We did not check whether a weekday effect exists within sub-periods. The estimation-period weekday means differ in sign from the full-sample means, which suggests instability or noise rather than a stable effect. - We did not look at intraday or announcement-day effects. Many macro releases, such as payrolls, fall on Fridays, so an effect from announcements could be hidden in, or confused with, a weekday effect. - We did not test multiple weekday contrasts beyond Monday. - **What would invalidate the result:** errors or revisions in the FRED series, a different holiday treatment, or a much larger sample that is sensitive to effects below 0.3 bp. Power is the main threat to a "no effect" reading: very small true effects, around 0.1 bp, cannot be excluded. - **No forecasting value:** the out-of-sample comparison uses a single split. The weekday-mean forecast was slightly worse than the random walk, so the data give no support for using weekday as a predictor.