1{2 "task_id": "T1-forecast",3 "model_name": "base-effect drift (BED)",4 "model_description": "Univariate real-time model using only the RSAFS vintage dated V. The h-step-ahead log level is 100*ln L_{last(V)} + h*mu, where the monthly drift mu = mean of the last 12 monthly log changes in vintage V (= g_{last(V)}/12); the forecast of YoY growth for T = last(V)+h is that log level minus 100*ln L_{T-12}, with L_{T-12} taken from vintage V (already published). It therefore keeps the recent trend but accounts for the known base effects (the monthly changes that drop out of the 12-month window). No parameters are estimated (estimation window: the 13 most recent levels of vintage V); PAYEMS and UMCSENT are not used. Specified before looking at evaluation errors; no tuning on the 10 origins.",5 "n_origins": 10,6 "first_origin": "2025-10-31",7 "last_origin": "2026-07-31",8 "rmse_naive_h1": 0.996874,9 "mae_naive_h1": 0.848722,10 "rmse_naive_h3": 1.42004,11 "mae_naive_h3": 1.200449,12 "rmse_snaive_h1": 1.674543,13 "mae_snaive_h1": 1.30667,14 "rmse_snaive_h3": 1.316079,15 "mae_snaive_h3": 1.065869,16 "rmse_ar1_h1": 0.940524,17 "mae_ar1_h1": 0.797651,18 "rmse_ar1_h3": 1.187118,19 "mae_ar1_h3": 0.952689,20 "rmse_model_h1": 0.550298,21 "mae_model_h1": 0.486332,22 "rmse_model_h3": 1.14222,23 "mae_model_h3": 0.933977,24 "rel_improvement_rmse_h1": 0.447977,25 "rel_improvement_rmse_h3": 0.195643,26 "dm_stat_h1": 2.428978,27 "dm_pvalue_h1": 0.015141,28 "dm_stat_h3": 1.546577,29 "dm_pvalue_h3": 0.121965,30 "conclusion_code_h1": "model_better_significant",31 "conclusion_code_h3": "model_better_not_significant",32 "mean_abs_revision_h1_targets": 0.54822,33 "feasibility": "complete",34 "feasibility_reason": null,35 "data_issues": [36 {37 "issue": "Irregular RSAFS publication timing: vintages 2025-10-31 and 2026-03-31 end two months before the origin; vintage 2026-04-30 adds two months (2026-02, 2026-03) at once.",38 "handling": "Targets defined as last(V)+h from the vintage itself, per task rule; 2026-03 is never an h=1 target, h=1 target of 2025-10-31 is 2025-09."39 },40 {41 "issue": "PAYEMS vintage 2025-12-31 adds 2025-10 and 2025-11 at once (delayed release) and vintage 2026-02-28 contains a benchmark level shift (~-1 million).",42 "handling": "Documented; PAYEMS is not used by any forecast."43 },44 {45 "issue": "UMCSENT has 210 empty fields (pre-1978 non-survey months).",46 "handling": "Documented; UMCSENT is not used by any forecast."47 },48 {49 "issue": "Large annual benchmark revision of RSAFS between the last origin vintage and the current vintage (138 months changed back to 2015, up to 4.6% in level).",50 "handling": "Affects only estimand (d), which by design uses the current vintage; forecasts use vintage V only and are evaluated against first release."51 },52 {53 "issue": "first_release.csv dates first release at month-end granularity; 2026-02 and 2026-03 share the first-release vintage 2026-04-30.",54 "handling": "Used as given; yoy recomputed from levels (max abs diff < 5e-7) and levels verified against the shipped vintages."55 }56 ],57 "n_input_rows": {58 "RSAFS_current.csv": 417,59 "UMCSENT.csv": 887,60 "first_release.csv": 28,61 "vintages/PAYEMS_vintage_2025-10-31.csv": 1040,62 "vintages/PAYEMS_vintage_2025-11-30.csv": 1041,63 "vintages/PAYEMS_vintage_2025-12-31.csv": 1043,64 "vintages/PAYEMS_vintage_2026-01-31.csv": 1044,65 "vintages/PAYEMS_vintage_2026-02-28.csv": 1045,66 "vintages/PAYEMS_vintage_2026-03-31.csv": 1046,67 "vintages/PAYEMS_vintage_2026-04-30.csv": 1047,68 "vintages/PAYEMS_vintage_2026-05-31.csv": 1048,69 "vintages/PAYEMS_vintage_2026-06-30.csv": 1049,70 "vintages/PAYEMS_vintage_2026-07-31.csv": 1050,71 "vintages/RSAFS_vintage_2025-10-31.csv": 404,72 "vintages/RSAFS_vintage_2025-11-30.csv": 405,73 "vintages/RSAFS_vintage_2025-12-31.csv": 406,74 "vintages/RSAFS_vintage_2026-01-31.csv": 407,75 "vintages/RSAFS_vintage_2026-02-28.csv": 408,76 "vintages/RSAFS_vintage_2026-03-31.csv": 409,77 "vintages/RSAFS_vintage_2026-04-30.csv": 411,78 "vintages/RSAFS_vintage_2026-05-31.csv": 412,79 "vintages/RSAFS_vintage_2026-06-30.csv": 413,80 "vintages/RSAFS_vintage_2026-07-31.csv": 41481 },82 "n_analysed": 20,83 "random_seed": 20261030,84 "last_month_by_origin": {85 "2025-10-31": "2025-08",86 "2025-11-30": "2025-09",87 "2025-12-31": "2025-10",88 "2026-01-31": "2025-11",89 "2026-02-28": "2025-12",90 "2026-03-31": "2026-01",91 "2026-04-30": "2026-03",92 "2026-05-31": "2026-04",93 "2026-06-30": "2026-05",94 "2026-07-31": "2026-06"95 },96 "dm_lrv_h1": 0.809137,97 "sens_dm_hln_stat_h1": 2.304331,98 "sens_dm_hln_pvalue_t_h1": 0.046667,99 "dm_mean_loss_diff_h1": 0.690931,100 "boot_rmse_diff_model_minus_naive_h1": -0.446577,101 "boot_ci95_lo_h1": -0.696991,102 "boot_ci95_hi_h1": -0.208832,103 "boot_share_model_better_h1": 0.9998,104 "dm_lrv_h3": 2.118518,105 "sens_dm_hln_stat_h3": 1.157352,106 "sens_dm_hln_pvalue_t_h3": 0.27692,107 "dm_mean_loss_diff_h3": 0.711849,108 "boot_rmse_diff_model_minus_naive_h3": -0.277821,109 "boot_ci95_lo_h3": -0.688736,110 "boot_ci95_hi_h3": 0.080764,111 "boot_share_model_better_h3": 0.934,112 "mean_revision_h1_targets_current_minus_first": -0.54822,113 "revisions_h1_targets": {114 "2025-09": -0.550217,115 "2025-10": -0.664176,116 "2025-11": -0.43892,117 "2025-12": -0.328627,118 "2026-01": -0.975676,119 "2026-02": -0.409956,120 "2026-04": -0.748173,121 "2026-05": -0.16534,122 "2026-06": -0.744089,123 "2026-07": -0.457025124 }125}