{ "generated_at": "2026-07-19T09:31:29.078611", "data_provenance": { "snapshot": "C:\\Workspace\\signal-platform\\backtest_snapshots\\prod.sqlite", "n_earnings_events": 5612, "backfill_meta": { "done": 48, "universe_tickers": 506 }, "announce_range": { "min": "1985-08-31", "max": "2026-07-16" }, "with_actual_and_estimate": 5018 }, "experiment_2a": { "sim_summary": { "sharpe": 2.09, "sharpe_se": 0.497, "cagr_pct": 51.6, "max_drawdown_pct": 21.4, "trades": 322, "total_return_pct": 424.6 }, "n_trades_parsed": 322, "q1_losses_worse_than_minus_1r": { "n_losses_lt_minus_1r": 28, "n_with_earnings_in_hold": 1, "fraction_with_earnings": 0.0357, "all_trades_with_earnings_in_hold": 14, "fraction_all_trades_with_earnings": 0.0435 }, "q2_entry_within_3d_before_announce": { "pre_earn_entries": { "n": 4, "mean": 1.9379, "win_rate": 0.5, "p05": -1.2428, "p25": -0.8833, "p50": 1.1209, "p75": 3.942, "p95": 6.2623, "min": -1.3327, "max": 6.8424 }, "other_entries": { "n": 318, "mean": 0.6965, "win_rate": 0.3711, "p05": -1.1052, "p25": -1.0, "p50": -0.8259, "p75": 2.1053, "p95": 6.077, "min": -3.2587, "max": 12.8654 }, "all_entries": { "n": 322, "mean": 0.7119, "win_rate": 0.3727, "p05": -1.1209, "p25": -1.0, "p50": -0.8251, "p75": 2.1595, "p95": 6.2246, "min": -3.2587, "max": 12.8654 }, "tail_trim_note": "Compare p95/max and mean of pre_earn vs other. Rising win_rate with falling mean/p95 = right-tail trim red flag." }, "note": "REPORT-ONLY \u2014 no filter shipped." }, "experiment_2b": { "signal_eval_side_by_side": { "mom_12_1": { "signal": "mom_12_1", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0531, "ic_t_stat": 1.61, "ic_positive_pct": 65.7, "mean_quintile_spread": 0.0206, "reliable": true }, "mom_12_1_resid": { "signal": "mom_12_1_resid", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0552, "ic_t_stat": 1.98, "ic_positive_pct": 60.0, "mean_quintile_spread": 0.0207, "reliable": true }, "mom_12_1_sector_resid": { "signal": "mom_12_1_sector_resid", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0578, "ic_t_stat": 2.34, "ic_positive_pct": 65.7, "mean_quintile_spread": 0.0245, "reliable": true }, "mom_12_1_sector_demeaned": { "signal": "mom_12_1_sector_demeaned", "weeks": 35, "avg_cross_section": 496.7, "mean_ic": 0.034, "ic_t_stat": 1.32, "ic_positive_pct": 62.9, "mean_quintile_spread": 0.0154, "reliable": true }, "sue_latest": { "signal": "sue_latest", "weeks": 44, "avg_cross_section": 47.4, "mean_ic": 0.0172, "ic_t_stat": 0.6, "ic_positive_pct": 47.7, "mean_quintile_spread": 0.0064, "reliable": true }, "fip_id": { "signal": "fip_id", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": -0.045, "ic_t_stat": -2.91, "ic_positive_pct": 25.7, "mean_quintile_spread": -0.0168, "reliable": true } }, "signal_eval_identical_sue_subset": { "mom_12_1": { "signal": "mom_12_1", "weeks": 35, "avg_cross_section": 47.3, "mean_ic": -0.0174, "ic_t_stat": -0.42, "ic_positive_pct": 45.7, "mean_quintile_spread": 0.0077, "reliable": true }, "mom_12_1_resid": { "signal": "mom_12_1_resid", "weeks": 35, "avg_cross_section": 47.3, "mean_ic": -0.0104, "ic_t_stat": -0.27, "ic_positive_pct": 51.4, "mean_quintile_spread": 0.0075, "reliable": true }, "sue_latest": { "signal": "sue_latest", "weeks": 44, "avg_cross_section": 47.4, "mean_ic": 0.0172, "ic_t_stat": 0.6, "ic_positive_pct": 47.7, "mean_quintile_spread": 0.0064, "reliable": true } }, "identical_subset_note": "Mom baselines re-scored only on (week, symbol) cells where SUE exists. Use this table when backfill is incomplete \u2014 full-universe mom N is not comparable.", "full_signal_eval": [ { "signal": "vol_6m", "weeks": 39, "avg_cross_section": 498.2, "mean_ic": 0.0609, "ic_t_stat": 1.48, "ic_positive_pct": 64.1, "mean_quintile_spread": 0.0337, "reliable": true }, { "signal": "mom_12_1_sector_resid", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0578, "ic_t_stat": 2.34, "ic_positive_pct": 65.7, "mean_quintile_spread": 0.0245, "reliable": true }, { "signal": "mom_12_1_resid", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0552, "ic_t_stat": 1.98, "ic_positive_pct": 60.0, "mean_quintile_spread": 0.0207, "reliable": true }, { "signal": "mom_12_1", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": 0.0531, "ic_t_stat": 1.61, "ic_positive_pct": 65.7, "mean_quintile_spread": 0.0206, "reliable": true }, { "signal": "mom_12_1_sector_demeaned", "weeks": 35, "avg_cross_section": 496.7, "mean_ic": 0.034, "ic_t_stat": 1.32, "ic_positive_pct": 62.9, "mean_quintile_spread": 0.0154, "reliable": true }, { "signal": "sue_latest", "weeks": 44, "avg_cross_section": 47.4, "mean_ic": 0.0172, "ic_t_stat": 0.6, "ic_positive_pct": 47.7, "mean_quintile_spread": 0.0064, "reliable": true }, { "signal": "trend_200", "weeks": 37, "avg_cross_section": 497.9, "mean_ic": 0.0161, "ic_t_stat": 0.44, "ic_positive_pct": 59.5, "mean_quintile_spread": 0.006, "reliable": true }, { "signal": "reversal_1m", "weeks": 43, "avg_cross_section": 498.7, "mean_ic": 0.0059, "ic_t_stat": 0.22, "ic_positive_pct": 53.5, "mean_quintile_spread": 0.0053, "reliable": true }, { "signal": "mom_6_1", "weeks": 39, "avg_cross_section": 498.2, "mean_ic": 0.0051, "ic_t_stat": 0.21, "ic_positive_pct": 56.4, "mean_quintile_spread": 0.0087, "reliable": true }, { "signal": "mom_3_1", "weeks": 42, "avg_cross_section": 498.5, "mean_ic": -0.0064, "ic_t_stat": -0.25, "ic_positive_pct": 50.0, "mean_quintile_spread": 0.0046, "reliable": true }, { "signal": "high_52w", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": -0.0086, "ic_t_stat": -0.26, "ic_positive_pct": 54.3, "mean_quintile_spread": -0.0088, "reliable": true }, { "signal": "fip_id", "weeks": 35, "avg_cross_section": 497.7, "mean_ic": -0.045, "ic_t_stat": -2.91, "ic_positive_pct": 25.7, "mean_quintile_spread": -0.0168, "reliable": true } ], "sue_grade": { "green": false, "checks": { "mean_ic": 0.0172, "sign_positive": true, "abs_ge_0_03": false, "reliable": true, "ic_t_stat": 0.6, "weeks": 44 }, "reason": "iron rule not met", "row": { "signal": "sue_latest", "weeks": 44, "avg_cross_section": 47.4, "mean_ic": 0.0172, "ic_t_stat": 0.6, "ic_positive_pct": 47.7, "mean_quintile_spread": 0.0064, "reliable": true } }, "momentum_conditional_sue": { "mean_ic": -0.0065, "ic_t_stat": -0.1, "weeks": 35, "note": "IC of sue_latest within top mom_12_1 quintile (non-overlapping weeks)" }, "sue_coverage": { "symbols_with_sue": 48, "avg_weeks_with_sue": 47.1, "weeks_with_min_cross_section": 256 } }, "verdict": "PARK", "verdict_detail": "SUE IC=0.0172 below iron bar or unreliable; keep data, no wire.", "human_next": "- No SUE book change.\n- Read 2a tails before considering any earnings-avoid filter.", "report_path": "reports/earnings-gap-sue-20260719-093129.json", "fmp_note": "Bulk earnings-calendar is paid (402 on free tier). Backfill used per-symbol /stable/earnings; see earnings-backfill-status.json." }