Files
signal-platform/reports/research-matrix-phase-a.md
T
2026-07-18 15:29:10 +02:00

8.0 KiB

Research matrix — 2026-07-18T15:17:10.310517

Validation split: 2024-07-01. Pre-registered N for DSR: 20.

Promotion rule

Promote only if validation Sharpe ≥ control, validation DD not worse by >2pp, and train Sharpe not worse. Always report whether validation Sharpe delta exceeds 1 SE (expect most will not).

Arms

arm window Sharpe SE PSR DSR CAGR MaxDD Calmar trades avg scalar
a0_control train 1.75 0.675 0.995 0.745 49.8 17.9 2.78 240
a0_control validation 1.68 0.716 0.991 0.679 41.6 20.9 1.99 239
a0_control full 1.77 0.496 1 0.951 48.3 21.6 2.23 472
a2_hold_30 train 1.75 0.675 0.995 0.745 49.8 17.9 2.78 240
a2_hold_30 validation 1.68 0.716 0.991 0.679 41.6 20.9 1.99 239
a2_hold_30 full 1.77 0.496 1 0.951 48.3 21.6 2.23 472
a2_hold_45 train 1.43 0.677 0.983 0.583 36.4 21.2 1.72 218
a2_hold_45 validation 2.07 0.698 0.999 0.85 59.1 19.3 3.07 202
a2_hold_45 full 1.78 0.497 1 0.952 49.2 21.2 2.32 415
a2_hold_60 train 1.11 0.668 0.952 0.405 26.3 21 1.25 186
a2_hold_60 validation 2.12 0.695 0.999 0.867 64.9 19.3 3.37 201
a2_hold_60 full 1.62 0.499 0.999 0.91 44.9 21 2.14 385
a2_hold_90 train 1.3 0.652 0.977 0.538 30.7 21 1.47 179
a2_hold_90 validation 2.04 0.711 0.998 0.835 61.8 23.1 2.67 191
a2_hold_90 full 1.67 0.503 1 0.924 46.8 23.5 1.99 367
a3_vt15_c05_15_lb60 train 1.54 0.674 0.989 0.636 37.7 17.8 2.12 283 0.769
a3_vt15_c05_15_lb60 validation 1.24 0.715 0.959 0.44 25.9 23.6 1.1 268 0.798
a3_vt15_c05_15_lb60 full 1.43 0.497 0.998 0.833 32.8 23.1 1.42 544 0.77
a3_vt20_c05_15_lb60 train 1.63 0.67 0.992 0.686 43.3 17.7 2.45 257 0.895
a3_vt20_c05_15_lb60 validation 1.48 0.715 0.981 0.573 34.7 23.7 1.46 248 0.918
a3_vt20_c05_15_lb60 full 1.59 0.495 0.999 0.902 40.5 23.5 1.72 498 0.903
a3_vt25_c05_15_lb60 train 1.68 0.671 0.994 0.712 47.4 17.8 2.66 239 1.05
a3_vt25_c05_15_lb60 validation 1.63 0.706 0.99 0.655 41.9 21.8 1.93 235 1.07
a3_vt25_c05_15_lb60 full 1.75 0.491 1 0.948 48.5 22.2 2.19 468 1.06
a3_vt15_c025_20_lb60 train 1.63 0.679 0.992 0.683 40.3 17.8 2.26 281 0.775
a3_vt15_c025_20_lb60 validation 1.24 0.715 0.959 0.44 25.9 23.6 1.1 268 0.798
a3_vt15_c025_20_lb60 full 1.49 0.499 0.999 0.86 34.2 23.1 1.48 542 0.774
a3_vt20_c025_20_lb60 train 1.63 0.67 0.992 0.686 43.3 17.7 2.45 257 0.895
a3_vt20_c025_20_lb60 validation 1.48 0.715 0.981 0.573 34.7 23.7 1.46 248 0.918
a3_vt20_c025_20_lb60 full 1.59 0.495 0.999 0.902 40.5 23.5 1.72 498 0.903
a3_vt25_c025_20_lb60 train 1.68 0.671 0.994 0.712 47.5 17.8 2.66 239 1.05
a3_vt25_c025_20_lb60 validation 1.63 0.706 0.99 0.655 41.9 21.8 1.93 235 1.07
a3_vt25_c025_20_lb60 full 1.75 0.49 1 0.949 48.5 22.2 2.19 468 1.06
a3_vt20_c05_15_lb20 train 1.76 0.667 0.996 0.752 48.7 17.1 2.84 253 0.976
a3_vt20_c05_15_lb20 validation 1.65 0.711 0.99 0.664 40.4 24.1 1.67 243 0.938
a3_vt20_c05_15_lb20 full 1.75 0.492 1 0.948 46.4 22.2 2.1 487 0.966
a3_vt20_c05_15_lb126 train 1.55 0.671 0.989 0.642 41.2 17.9 2.3 260 0.88
a3_vt20_c05_15_lb126 validation 1.37 0.714 0.972 0.512 30.6 20.5 1.49 247 0.933
a3_vt20_c05_15_lb126 full 1.54 0.495 0.999 0.883 38.6 19.9 1.94 497 0.895
a4_next_open train 0.94 0.688 0.915 0.298 22.2 18.1 1.23 260
a4_next_open validation 1.44 0.719 0.977 0.551 36.3 28.2 1.29 243
a4_next_open full 1.2 0.504 0.991 0.69 30 28.2 1.06 502
a5_corr06_skip train 1.61 0.677 0.991 0.673 39.9 20.7 1.93 235
a5_corr06_skip validation 1.7 0.714 0.991 0.689 39 17 2.3 222
a5_corr06_skip full 1.59 0.5 0.999 0.899 38.2 20.7 1.85 450
a5_corr07_skip train 1.4 0.676 0.981 0.555 34.3 19.9 1.73 244
a5_corr07_skip validation 1.63 0.709 0.989 0.655 39.4 25.5 1.55 234
a5_corr07_skip full 1.55 0.495 0.999 0.887 38.4 26 1.48 472
a5_corr08_skip train 1.53 0.672 0.989 0.631 40.4 19.1 2.11 246
a5_corr08_skip validation 1.37 0.709 0.973 0.512 32.4 25.8 1.26 233
a5_corr08_skip full 1.49 0.493 0.999 0.863 38 26.6 1.43 475
a5_corr06_half train 1.45 0.68 0.984 0.584 36.2 16.5 2.19 273
a5_corr06_half validation 1.19 0.713 0.952 0.412 25 25.7 0.97 255
a5_corr06_half full 1.38 0.497 0.997 0.806 32.5 25.4 1.28 521
a5_corr07_half train 1.62 0.674 0.992 0.679 42.5 16.2 2.62 253
a5_corr07_half validation 1.6 0.712 0.988 0.638 38.1 21.1 1.8 246
a5_corr07_half full 1.66 0.494 1 0.924 42.5 21.8 1.95 492
a5_corr08_half train 1.56 0.674 0.99 0.647 40.8 16.1 2.54 256
a5_corr08_half validation 1.42 0.709 0.978 0.54 33.2 21.1 1.57 243
a5_corr08_half full 1.55 0.494 0.999 0.887 39.2 21.8 1.8 492

Promotion decisions

  • a2_hold_30: PROMOTE — validation Sharpe 1.68 ≥ control 1.68; DD 20.9 within +2pp of 20.9; train Sharpe 1.75 ≥ 1.75 (delta ≤ 1 SE — distinguishable noise bar not cleared)
  • a2_hold_45: reject — failed: train_sharpe_not_worse
  • a2_hold_60: reject — failed: train_sharpe_not_worse
  • a2_hold_90: reject — failed: validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a3_vt15_c05_15_lb60: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a3_vt20_c05_15_lb60: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a3_vt25_c05_15_lb60: reject — failed: validation_sharpe_ge_control, train_sharpe_not_worse
  • a3_vt15_c025_20_lb60: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a3_vt20_c025_20_lb60: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a3_vt25_c025_20_lb60: reject — failed: validation_sharpe_ge_control, train_sharpe_not_worse
  • a3_vt20_c05_15_lb20: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp
  • a3_vt20_c05_15_lb126: reject — failed: validation_sharpe_ge_control, train_sharpe_not_worse
  • a4_next_open: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a5_corr06_skip: reject — failed: train_sharpe_not_worse
  • a5_corr07_skip: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a5_corr08_skip: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a5_corr06_half: reject — failed: validation_sharpe_ge_control, validation_dd_not_worse_by_2pp, train_sharpe_not_worse
  • a5_corr07_half: reject — failed: validation_sharpe_ge_control, train_sharpe_not_worse
  • a5_corr08_half: reject — failed: validation_sharpe_ge_control, train_sharpe_not_worse