MOC → AH Strategy — Phase 1 Research

5-year AH hourly data (2020-10 → 2026-04) · 250K events · 10,257 setup matches · Entry MOC (p_1600) · Exits at 17:00/18:00/19:00
Rules: target +0.8% / stop -1.5% / time exit 19:00 · Spread cost 15bp one-way

🎯 Production Edge

Setup S2 (non-earnings deep drop >5%) × HY_tight × SPY RANGING/RISING_MILD

N = 825 events · WR 59.6% · mean net +0.21% · Sharpe 2.59

Optimal config: target 0.5% / stop 3.0% → 45% trades take profit by 19:00 (29% уже к 17:00)

Walk-forward stable: train WR ~51 → test WR 52-55 across 2024, 2025, 2026

❌ Dead Edges (do NOT trade)

S5 Gap-up fade SHORT — WR 35.5% · Sharpe -2.37 · fade plays lose in all regimes (Q1 2026 exception не доверять)

Anything on HY_wide regime — WR drops 5-10pt, mean flips negative

FALLING_HARD / FALLING_MILD SPY phase — mean negative, skip day

S4 small-cap deep drop — <20 events after proper priority routing → insufficient sample

Per-Setup Summary (all regimes)

S2 Non-earnings deep drop >5%

N5327
WR52.0%
Mean net+0.034%
Sharpe 🟡0.37
🎯 Target hit: 27.6% 🛑 Stop: 7.5% ⏱ 19:00 exit: 64.8%

S3 σ-normalized drop <-2

N3081
WR44.8%
Mean net+0.087%
Sharpe 🟢1.02
🎯 Target hit: 10.0% 🛑 Stop: 1.3% ⏱ 19:00 exit: 88.6%

S5 Gap-up fade SHORT (σ>+3)

N1824
WR35.5%
Mean net-0.253%
Sharpe 🔴-2.37
🎯 Target hit: 14.1% 🛑 Stop: 7.9% ⏱ 19:00 exit: 78.0%

S6 Relative weakness <-3% vs SPY

N5329
WR46.7%
Mean net+0.004%
Sharpe 🟡0.06
🎯 Target hit: 16.7% 🛑 Stop: 3.8% ⏱ 19:00 exit: 79.5%

Setup × SPY Phase (trade / skip gate)

setupspy_phaseNwrmean_net_retmedian_net_retsharpetarget_hit_1700target_hit_1800target_hit_1900target_hit_ANYstop_hittime_exitmean_r17mean_r18mean_r19
S2_nonearn_deep_dropFALLING_HARD959.0048.70-0.11-0.03-1.1613.359.185.6328.1510.7461.110.040.130.05
S2_nonearn_deep_dropFALLING_MILD1357.0049.89-0.01-0.00-0.0615.627.375.0128.009.6562.340.150.140.13
S2_nonearn_deep_dropRANGING1720.0053.430.110.061.2415.876.574.3626.805.8767.330.250.240.26
S2_nonearn_deep_dropRISING_HARD299.0051.840.050.030.4815.058.704.0127.766.3565.890.130.150.11
S2_nonearn_deep_dropRISING_MILD979.0055.770.110.091.2415.028.484.8028.294.6067.110.180.250.27
S3_sigma_dropFALLING_HARD433.0044.340.08-0.061.276.703.004.3914.091.1584.760.160.180.20
S3_sigma_dropFALLING_MILD753.0043.960.05-0.050.614.913.851.4610.231.9987.780.170.170.16
S3_sigma_dropRANGING1160.0045.430.06-0.030.614.312.931.298.531.4790.000.160.180.18
S3_sigma_dropRISING_HARD114.0056.140.250.063.597.025.267.0219.300.0080.700.290.330.39
S3_sigma_dropRISING_MILD621.0043.000.17-0.051.664.032.421.618.050.6491.300.290.310.33
S5_gapup_fadeFALLING_HARD180.0032.22-0.58-0.43-3.999.445.006.1120.5626.1153.33-0.10-0.30-0.44
S5_gapup_fadeFALLING_MILD369.0035.50-0.23-0.19-2.655.424.342.7112.473.2584.28-0.13-0.01-0.07
S5_gapup_fadeRANGING673.0034.47-0.17-0.15-1.866.983.571.9312.486.0981.430.02-0.05-0.09
S5_gapup_fadeRISING_HARD174.0045.98-0.09-0.10-0.6411.498.052.3021.847.4770.690.060.14-0.03
S5_gapup_fadeRISING_MILD428.0034.35-0.32-0.15-3.217.012.342.8012.157.4880.37-0.14-0.19-0.20
S6_rel_weaknessFALLING_HARD362.0054.700.210.073.2712.156.358.0126.522.4970.990.200.260.33
S6_rel_weaknessFALLING_MILD966.0044.510.01-0.060.098.804.975.1818.946.2174.840.160.110.11
S6_rel_weaknessRANGING2009.0046.740.00-0.040.077.425.134.2816.823.2979.890.100.110.12
S6_rel_weaknessRISING_HARD522.0043.49-0.12-0.08-1.357.284.792.8714.945.7579.310.020.01-0.02
S6_rel_weaknessRISING_MILD1460.0047.26-0.01-0.03-0.115.823.903.5613.292.4084.320.100.110.12

Setup × HY Credit Regime

setuphy_regimeNwrmean_net_retmedian_net_retsharpetarget_hit_1700target_hit_1800target_hit_1900target_hit_ANYstop_hittime_exitmean_r17mean_r18mean_r19
S2_nonearn_deep_dropmid3210.0052.120.040.040.4914.777.984.6427.386.0166.600.150.200.19
S2_nonearn_deep_droptight998.0057.310.210.152.3018.047.015.7130.765.6163.630.300.330.39
S2_nonearn_deep_dropwide1119.0046.92-0.15-0.05-1.5113.497.604.4725.5613.5860.860.090.04-0.02
S3_sigma_dropmid1661.0044.790.11-0.041.204.943.672.1710.781.2088.020.200.220.24
S3_sigma_droptight880.0047.160.11-0.031.374.092.501.598.180.8091.020.240.260.24
S3_sigma_dropwide540.0041.11-0.01-0.08-0.125.742.592.4110.742.5986.670.110.090.09
S5_gapup_fademid875.0037.94-0.22-0.15-2.038.004.912.8615.776.9777.26-0.03-0.07-0.07
S5_gapup_fadetight575.0036.17-0.16-0.15-1.536.962.432.4311.835.2282.960.030.00-0.05
S5_gapup_fadewide374.0028.88-0.47-0.36-4.566.424.282.9413.6414.4471.93-0.25-0.22-0.46
S6_rel_weaknessmid3287.0046.79-0.01-0.04-0.136.725.144.2616.123.7780.100.090.100.12
S6_rel_weaknesstight1225.0047.920.01-0.020.197.354.334.3316.002.9481.060.110.140.14
S6_rel_weaknesswide817.0044.680.05-0.070.5211.024.284.9020.204.9074.910.180.110.09

Year-by-Year Stability

setupyearNwrmean_net_retmedian_net_retsharpetarget_hit_1700target_hit_1800target_hit_1900target_hit_ANYstop_hittime_exitmean_r17mean_r18mean_r19
S2_nonearn_deep_drop2020196.0056.120.130.161.6615.8212.765.6134.188.1657.650.180.380.30
S2_nonearn_deep_drop2021712.0056.180.050.120.5516.999.835.7632.589.4158.010.170.240.14
S2_nonearn_deep_drop20221334.0049.70-0.02-0.00-0.1812.376.604.8723.844.8071.360.070.110.14
S2_nonearn_deep_drop2023533.0043.71-0.03-0.07-0.3812.765.251.8819.894.5075.610.160.160.13
S2_nonearn_deep_drop2024725.0052.690.160.051.6014.077.316.2127.595.6666.760.220.270.32
S2_nonearn_deep_drop20251342.0053.13-0.010.06-0.1116.477.824.9229.2111.2559.540.190.150.16
S2_nonearn_deep_drop2026485.0055.460.110.121.2220.008.663.7132.377.8459.790.290.310.22
S3_sigma_drop202078.0064.100.430.195.6110.267.697.6925.640.0074.360.480.540.55
S3_sigma_drop2021516.0047.670.17-0.022.045.233.492.1310.850.7888.370.270.300.30
S3_sigma_drop2022373.0041.820.03-0.080.233.752.681.347.771.3490.880.110.130.17
S3_sigma_drop2023464.0036.64-0.02-0.09-0.362.802.591.086.472.1691.380.100.110.13
S3_sigma_drop2024706.0045.610.14-0.041.215.522.411.849.770.9989.240.220.280.27
S3_sigma_drop2025727.0044.840.04-0.040.624.543.162.209.901.7988.310.180.160.15
S3_sigma_drop2026217.0051.150.100.012.436.915.073.2315.210.9283.870.200.170.18
S5_gapup_fade202041.0053.66-0.470.07-3.5114.637.322.4424.3919.5156.10-0.40-0.55-0.61
S5_gapup_fade2021233.0033.05-0.33-0.19-2.757.734.721.2913.736.8779.40-0.10-0.17-0.12
S5_gapup_fade2022230.0045.650.08-0.070.6610.436.096.5223.044.3572.610.260.200.22
S5_gapup_fade2023256.0029.30-0.35-0.15-3.005.082.731.959.775.4784.77-0.17-0.11-0.22
S5_gapup_fade2024409.0033.99-0.32-0.15-2.806.363.422.4412.229.2978.48-0.09-0.16-0.25
S5_gapup_fade2025519.0031.21-0.30-0.22-3.636.364.052.1212.528.8678.61-0.13-0.09-0.22
S5_gapup_fade2026136.0050.00-0.040.00-0.5610.292.213.6816.189.5674.260.180.110.11
S6_rel_weakness2020219.0056.620.130.062.556.858.226.3921.461.3777.170.210.250.29
S6_rel_weakness2021943.0050.050.050.000.897.426.473.8217.713.1879.110.100.190.19
S6_rel_weakness20221056.0042.99-0.03-0.09-0.406.533.883.8814.303.8881.820.090.070.10
S6_rel_weakness2023641.0038.85-0.07-0.09-1.684.062.653.289.981.7288.300.030.060.07
S6_rel_weakness2024705.0049.36-0.01-0.01-0.107.384.684.9617.024.4078.580.050.080.10
S6_rel_weakness20251199.0051.630.040.020.4910.595.594.6720.854.5974.560.180.130.13
S6_rel_weakness2026566.0039.58-0.04-0.14-0.417.423.535.3016.255.1278.620.100.060.04

Walk-Forward 4yr Train / 1yr OOS

test_yearsetupN_trainwr_trainmean_trainN_testwr_testmean_test
2024S2_nonearn_deep_drop2775.0050.670.01725.0052.690.16
2024S6_rel_weakness2859.0045.44-0.00705.0049.36-0.01
2024S5_gapup_fade760.0036.71-0.22409.0033.99-0.32
2024S3_sigma_drop1431.0043.470.08706.0045.610.14
2025S2_nonearn_deep_drop3304.0050.790.031342.0053.13-0.01
2025S6_rel_weakness3345.0045.53-0.011199.0051.630.04
2025S5_gapup_fade1128.0035.11-0.25519.0031.21-0.30
2025S3_sigma_drop2059.0043.420.09727.0044.840.04
2026S2_nonearn_deep_drop3934.0050.610.02485.0055.460.11
2026S6_rel_weakness3601.0046.38-0.01566.0039.58-0.04
2026S5_gapup_fade1414.0034.02-0.25136.0050.00-0.04
2026S3_sigma_drop2270.0042.910.06217.0051.150.10

🎯 Target/Stop Sensitivity (top 10 by Sharpe)

target_pctstop_pctNwrmean_netsharpetarget_hitstop_hittime_exitearly_exit_17early_exit_18
0.503.00825.0059.640.212.5944.971.4553.5829.2111.27
0.603.00825.0058.670.212.5640.851.4557.7025.0911.27
1.003.00825.0056.360.222.5624.361.4574.1814.796.79
1.203.00825.0055.880.222.5520.121.4578.4211.526.55
0.803.00825.0056.850.212.5231.031.4567.5219.647.03
1.503.00825.0055.520.222.5014.671.4583.887.524.85
0.403.00825.0060.240.202.4950.551.4548.0035.0310.06
0.501.00825.0059.150.202.4344.738.6146.6732.6113.21
0.601.00825.0058.180.202.4140.618.7350.6728.4813.33
1.001.00825.0055.880.202.4024.128.9766.9118.188.97

📊 Exit Timing Distribution (best config)

S2 × HY_tight × RANGING/RISING_MILD · target 0.5% / stop 3.0%

  • 🎯 Target hit: 45% (29% exits at 17:00, 11% at 18:00, 5% at 19:00)
  • 🛑 Stop hit: 1.5% (very rare — wide stop absorbs noise)
  • ⏱ Time exit 19:00: 54% (majority drift flat, positive carry)
  • Total WR: 60% (target hits + time exits that stayed positive)

Playbook Rules (production)

Hard gate (skip entire day)

  • SPY_5d < -1% или > +3%
  • SPY_20d_vol > 20
  • HY_wide (top quartile 60d)
  • WoM = 5 (last week of month)

Entry criteria (per ticker at MOC)

  • oc_ret < -5% (daily close-to-open)
  • mcap ≥ $2B (exclude micro/spec)
  • Not earnings day (separate S1 for mega)
  • price ≥ $5, pre_vol ≥ 20K

Position rules

  • Entry: market-on-close print
  • Target: +0.5% (monitor every minute 16:00-19:00)
  • Stop: -3.0% (hard)
  • Time exit: 19:00 ET
  • Sector cap: max 3 per sector (Q2 2025 Energy lesson)

Open Items