MOC → Next-Day Overnight Research · SPY-hedged 1:1

Entry = closing auction price (MOC, 16:00) on day t. Exit = next-day price at 4-5 AM / MOO / 9:55. Hedge = SHORT 1× SPY MOC (or LONG SPY for short legs), held over same window.
Period: 2024-04-17 → 2026-04-16 (full 2Y, opg_clo_2yr). "Last 6M" = 2025-10-07 → 2026-04-08.
Universe per ticker: ADV 20d ≥ 2M shares · avg PM vol 90d ≥ 20K shares · mcap ≥ $300M (Finviz current snapshot) · close ≥ $5.
Costs applied: unhedged 3 bps round-trip; hedged 6 bps (two legs).

1. Exit comparison — long-side baseline (all universe, per-trade avg)

Key finding: overnight drift is strongest at the earliest PM print (~4-5 AM). By MOO (9:30) half the edge is consumed; by 9:55 it's gone. After SPY hedge the unconditional edge is tiny — real alpha lives in segments.
windowhedgeexitnmeannetwrsharpe
FULL_2Yunhedgedpm_open (~4-5 AM)41,0820.4030.37358.8+2.48
FULL_2YunhedgedMOO (9:30)211,4060.0880.05851.4+0.58
FULL_2Yunhedged9:555,9930.027-0.00349.5+0.06
FULL_2YSPY-hedged 1:1MOO (9:30)211,4060.043-0.01749.8+0.30
LAST_6Munhedgedpm_open (~4-5 AM)24,1390.3060.27656.5+1.88
LAST_6MunhedgedMOO (9:30)59,0710.0430.01348.8+0.26
LAST_6MSPY-hedged 1:1MOO (9:30)59,0710.008-0.05248.0+0.05

2. Single-factor segmentation — HEDGED MOO exit (FULL 2Y)

TOP long edges

factorbucketnmeanmean_netwrsharpe
f_er1er_tmrw7190.4140.35454.7+1.42
f_er0er_d08150.6720.61250.3+1.31
f_intraintra>+510,6040.2940.23451.2+1.22
f_dowTue44,0270.1540.09451.7+1.08
f_volsrvol_spike4,8180.2630.20351.3+0.85
f_opexOPEX9,8190.1090.04950.1+0.84
f_intraintra+2..526,1090.1170.05750.5+0.77
f_sectUtilities3,4410.0950.03553.1+0.69
f_sectBasic Materials19,7690.1110.05152.8+0.69
f_r5dr5d>+545,4180.1230.06350.6+0.69
f_dowFri42,6930.0990.03950.6+0.67
f_vixvix<1544,0390.0850.02550.5+0.66
f_sectFinancial25,2510.0720.01250.9+0.52
f_sectTechnology53,6440.0790.01950.7+0.51
f_spyspy_flat167,3610.0650.00550.3+0.47
f_spyspy_grn21,4560.0650.00550.1+0.46
f_vixvix15-20115,0960.060-0.00050.1+0.43
f_sectIndustrials15,7910.0690.00950.7+0.41
f_mcap2_mid_2_10B62,3360.058-0.00249.4+0.37
f_gapgap<-390,7910.047-0.01350.1+0.34
f_sectEnergy17,6810.035-0.02551.3+0.34
f_volsrvol_high21,9170.0620.00250.7+0.32
f_mcap4_mega_50B+61,8920.033-0.02750.3+0.31
f_mcap3_large_10_50B59,5620.039-0.02150.2+0.31
f_volsrvol_low119,9190.035-0.02549.7+0.30
f_er1no_ertmrw210,6870.042-0.01849.8+0.29
f_r5dr5d+0..566,0070.033-0.02749.9+0.29
f_er0no_er210,5910.040-0.02049.8+0.29
f_intraintra+1..225,4170.036-0.02449.3+0.29
f_intraintra-2..-125,3680.035-0.02550.1+0.28
f_gapgap>+3110,3170.041-0.01949.7+0.28
f_opexnot_opex201,5870.040-0.02049.8+0.28
f_vixvix>306,1030.044-0.01650.8+0.27
f_gapgap-3..-11,1100.023-0.03747.7+0.24
f_volsrvol_norm64,7520.034-0.02649.8+0.24
f_vixvix25-3010,1530.037-0.02348.9+0.23
f_mcap1_small_0.3_2B27,6160.039-0.02149.0+0.20
f_dowThu40,9180.025-0.03551.4+0.18
f_r5dr5d<-538,2060.030-0.03050.1+0.18
f_intraintra_flat85,7520.018-0.04249.7+0.16

BOTTOM → short edges

factorbucketnmeanmean_netwrsharpe
f_spyspy_red22,589-0.143-0.20346.4-0.88
f_sectConsumer Defensive6,435-0.058-0.11845.6-0.68
f_sectReal Estate5,902-0.039-0.09949.1-0.44
f_vixvix20-2536,015-0.062-0.12248.4-0.41
f_dowMon40,575-0.039-0.09948.0-0.30
f_dowWed43,193-0.032-0.09247.5-0.21
f_intraintra<-510,425-0.031-0.09149.5-0.14
f_sectHealthcare24,768-0.020-0.08047.2-0.14
f_sectConsumer Cyclical24,691-0.013-0.07347.5-0.11
f_gapgap+1..3976-0.004-0.06448.6-0.04
f_intraintra-5..-227,731-0.006-0.06649.7-0.04
f_r5dr5d-5..059,2070.002-0.05849.3+0.02
f_sectCommunication Services14,0330.014-0.04647.8+0.10
f_gapgap_flat8,1880.020-0.04049.2+0.15
f_intraintra_flat85,7520.018-0.04249.7+0.16
f_r5dr5d<-538,2060.030-0.03050.1+0.18
f_dowThu40,9180.025-0.03551.4+0.18
f_mcap1_small_0.3_2B27,6160.039-0.02149.0+0.20
f_vixvix25-3010,1530.037-0.02348.9+0.23
f_volsrvol_norm64,7520.034-0.02649.8+0.24

Last 6 months only

TOP

no data

BOTTOM

3. 22 HYPOTHESES — structured test (SPY-hedged)

Per-ticker lagged returns r-1/-2/-3, 20d/60d momentum, regime filters (ARKK/IWM/HY), events (earnings, ex-div, rating), short float, insider activity, dollar volume.
Direction is the tested thesis; positive Sharpe → thesis works, negative → OPPOSITE direction works.
hypothesisdirectionfull_nfull_meanfull_netfull_wrfull_sharpe6m_n6m_mean6m_net6m_wr6m_sharpe
H1: strong60d + weak_close → LONGLONG12,3410.058-0.00252.40.333,432-0.033-0.09348.5-0.17
H2: weak60d + strong_close → SHORTSHORT11,833-0.038-0.09851.9-0.253,701-0.095-0.15552.9-0.61
H3: strong20d + r-1<0 + r-2<0 + r-3<0 → LONGLONG3,0720.2340.17451.51.318450.3230.26353.4+1.69
H4: weak20d + r-1>0 + r-2>0 + r-3>0 → SHORTSHORT3,1260.0670.00753.80.481,0830.3090.24959.2+2.25
H5: near_20dH + strong20d → LONGLONG29,0020.1440.08451.50.857,3560.1600.10052.1+0.93
H6: near_20dL + weak20d → SHORTSHORT29,7300.022-0.03851.00.169,8250.0630.00353.8+0.41
H7: z_day<-1σ + strong20d → LONGLONG6,4450.0780.01853.60.422,0110.1240.06453.6+0.61
H8: z_day>+1σ + weak20d → SHORTSHORT7,077-0.090-0.15052.2-0.542,4880.054-0.00656.9+0.30
H9: short_float>15% + weak_close → LONGLONG13,4110.016-0.04449.70.084,111-0.016-0.07645.8-0.09
H10: short_float>15% + strong_close → LONGLONG11,7080.1520.09250.30.743,2850.0670.00746.0+0.37
H11: arkk_up + strong20d + weak_close → LONGLONG5,9280.1640.10453.40.916290.5620.50259.6+2.62
H12: arkk_dn + weak20d + strong_close → SHORTSHORT5,150-0.093-0.15350.5-0.562,061-0.202-0.26250.4-1.20
H13: dol_surge>2x + strong_close → LONGLONG3,0220.1570.09748.40.59716-0.003-0.06346.5-0.01
H14: dol_surge>2x + weak_close → SHORTSHORT2,047-0.135-0.19546.5-0.51525-0.081-0.14148.8-0.37
H15: er_d0 + intraday>+2% → LONG (PEAD)LONG1851.0390.97947.02.11541.1741.11446.3+2.31
H16: er_t1 (earnings tomorrow) → LONGLONG7190.4140.35454.71.421950.1890.12947.7+0.66
H17: ex_div_soon + strong20d → LONGLONG12nannannannan12nannannannan
H18: insider_buy + weak_close → LONGLONG7,5380.0610.00151.50.451,3330.014-0.04648.6+0.09
H19: hy_wide + weak20d → SHORTSHORT5,3840.1510.09151.30.811,334-0.273-0.33346.4-1.35
H20: iwm_dn + mcap_tier small/mid + strong_close → SHORTSHORT3,745-0.145-0.20550.1-0.87919-0.265-0.32548.2-1.77
H21: perf_m top25% + intra_ret<-1% → LONGLONG18,0110.040-0.02050.00.235,609-0.009-0.06947.5-0.05
H22: perf_m bot25% + intra_ret>+1% → SHORTSHORT15,283-0.102-0.16250.3-0.604,5170.026-0.03454.1+0.15

4. Combo scan — top 40 robust (full & 6M both pass)

combo_keyscombo_valsnmean_netwrsharpen6mmean_net6mwr6msharpe6m
f_spy+f_dow+f_sectspy_grn+Tue+Financial4480.38753.62.53551.16083.6+18.03
f_intra+f_vix+f_opexintra+2..5+vix<15+OPEX2370.58063.36.38911.54684.6+16.88
f_intra+f_sect+f_opexintra+2..5+Basic Materials+OPEX1480.78465.55.32552.03283.6+14.86
f_intra+f_spy+f_dowintra>+5+spy_grn+Tue3270.61771.63.101151.40088.7+14.53
f_vix+f_spy+f_sectvix>30+spy_flat+Industrials1210.71858.74.51331.39781.8+14.21
f_vix+f_dow+f_sectvix>30+Mon+Industrials1461.14967.86.92331.39781.8+14.21
f_r5d+f_spy+f_dowr5d<-5+spy_grn+Tue5240.61557.32.78841.40786.9+14.10
f_vix+f_dow+f_sectvix25-30+Tue+Financial2601.78780.810.171652.23984.8+13.43
f_vix+f_sect+f_opexvix<15+Industrials+OPEX1150.60761.76.62361.43275.0+13.21
f_vix+f_dow+f_sectvix25-30+Tue+Industrials1671.81979.611.111112.26290.1+13.11
f_r5d+f_sect+f_opexr5d>+5+Basic Materials+OPEX2201.63475.98.80883.04090.9+13.04
f_vix+f_dow+f_sectvix<15+Thu+Energy6510.16864.53.97360.54480.6+12.84
f_vix+f_volsr+f_dowvix20-25+vol_spike+Fri2071.27960.44.36713.58884.5+12.67
f_intra+f_spy+f_dowintra+2..5+spy_grn+Tue8650.62265.14.011741.02581.6+12.41
f_r5d+f_vix+f_dowr5d<-5+vix<15+Wed8870.28056.72.211211.55084.3+12.37
f_vix+f_dow+f_sectvix<15+Thu+Basic Materials6650.14658.92.04531.25275.5+12.25
f_spy+f_dow+f_sectspy_grn+Tue+Technology9430.52267.33.481210.99980.2+12.23
f_vix+f_sect+f_opexvix<15+Energy+OPEX1440.44181.28.81360.73180.6+11.99
f_r5d+f_vix+f_dowr5d>+5+vix25-30+Tue4501.84571.88.863852.33379.2+11.37
f_intra+f_vix+f_opexintra-5..-2+vix20-25+OPEX1750.28348.62.61811.52076.5+11.25
f_intra+f_vix+f_dowintra<-5+vix>30+Mon1641.05372.08.601081.48780.6+11.24
f_intra+f_vix+f_spyintra<-5+vix>30+spy_flat1570.98866.97.281081.48780.6+11.24
f_intra+f_r5d+f_vixintra>+5+r5d+0..5+vix<152980.56751.02.89601.73873.3+11.09
f_r5d+f_vix+f_sectr5d<-5+vix<15+Financial5180.51060.23.82641.12070.3+11.07
f_vix+f_sect+f_opexvix15-20+Basic Materials+OPEX5790.64959.94.551072.08475.7+11.04
f_r5d+f_vix+f_sectr5d<-5+vix<15+Basic Materials5360.15252.81.66771.03171.4+11.00
f_vix+f_spy+f_sectvix>30+spy_flat+Basic Materials1511.61479.59.16481.30581.2+10.83
f_vix+f_dow+f_sectvix>30+Mon+Basic Materials1830.53659.63.95481.30581.2+10.83
f_vix+f_sect+f_opexvix<15+Technology+OPEX4040.24951.53.341241.26075.8+10.82
f_sect+f_mcap+f_opexBasic Materials+4_mega_50B++OPEX2070.38560.94.22541.08477.8+10.75
f_vix+f_sect+f_mcapvix>30+Basic Materials+3_large_10_50B2340.37154.71.94341.21985.3+10.70
f_r5d+f_vix+f_opexr5d>+5+vix20-25+OPEX1900.65763.73.401441.43477.8+10.59
f_vix+f_sect+f_opexvix<15+Basic Materials+OPEX1561.07676.97.09522.48192.3+10.57
f_r5d+f_vix+f_dowr5d<-5+vix25-30+Tue6651.23780.27.552761.49285.9+10.54
f_vix+f_dow+f_sectvix25-30+Tue+Technology5611.47581.18.743631.62183.2+10.14
f_intra+f_gap+f_vixintra<-5+gap>+3+vix>304400.25552.72.131001.29778.0+10.11
f_spy+f_dow+f_sectspy_red+Tue+Basic Materials3001.10872.37.641011.56090.1+10.09
f_vix+f_dow+f_sectvix>30+Mon+Financial2410.48568.05.93530.69673.6+10.01
f_vix+f_spy+f_sectvix>30+spy_flat+Financial1940.41468.65.02530.69673.6+10.01
f_vix+f_dow+f_sectvix25-30+Tue+Basic Materials2121.57973.16.801472.54187.8+9.91
combo_keyscombo_valsnmean_netwrsharpen6mmean_net6mwr6msharpe6m
f_spy+f_sect+f_opexspy_red+Energy+OPEX108-1.02439.8-5.8338-3.7385.3-25.06
f_vix+f_dow+f_sectvix25-30+Wed+Industrials161-0.44136.0-2.5974-1.6004.1-20.50
f_vix+f_dow+f_sectvix25-30+Wed+Basic Materials198-1.81034.3-8.7299-3.8399.1-18.71
f_spy+f_dow+f_sectspy_grn+Tue+Energy321-0.29143.6-2.0439-1.75315.4-15.42
f_spy+f_dow+f_sectspy_red+Wed+Basic Materials307-1.48625.7-8.63100-3.15514.0-13.97
f_spy+f_dow+f_sectspy_red+Mon+Financial341-0.23947.2-1.6956-0.99930.4-12.62
f_vix+f_dow+f_sectvix25-30+Tue+Energy186-2.37528.0-8.38117-3.84412.0-12.54
f_vix+f_dow+f_sectvix20-25+Fri+Consumer Defensive260-0.18739.2-1.3652-0.81815.4-12.39
f_r5d+f_vix+f_dowr5d<-5+vix25-30+Wed769-0.43748.0-1.79230-2.05418.3-11.24
f_r5d+f_vix+f_sectr5d>+5+vix20-25+Consumer Defensive84-0.14639.3-1.2637-0.54027.0-11.15
f_intra+f_vix+f_dowintra-5..-2+vix25-30+Wed650-0.56443.5-3.56226-1.68617.3-11.03
f_intra+f_vix+f_dowintra-2..-1+vix25-30+Wed367-0.60436.0-3.74167-1.16525.7-10.53
f_vix+f_dow+f_sectvix25-30+Wed+Financial254-0.36941.7-2.30113-1.37915.9-10.52
f_intra+f_vix+f_spyintra-2..-1+vix25-30+spy_grn164-0.25047.0-1.6266-0.90928.8-9.72
f_vix+f_dow+f_sectvix>30+Mon+Energy172-0.41040.1-2.8639-0.91617.9-9.51
f_vix+f_dow+f_sectvix25-30+Thu+Basic Materials271-1.04129.2-5.61201-1.47722.4-9.36
f_gap+f_sect+f_opexgap>+3+Consumer Defensive+OPEX178-0.33837.6-5.1345-0.54317.8-9.34
f_intra+f_vix+f_sectintra-5..-2+vix25-30+Energy142-0.40147.2-2.7968-1.30326.5-9.34
f_vix+f_sect+f_opexvix15-20+Consumer Cyclical+OPEX750-0.22245.1-1.79103-0.81027.2-9.26
f_vix+f_spy+f_dowvix25-30+spy_flat+Thu877-0.68936.5-4.92474-1.26227.8-9.25
f_r5d+f_vix+f_dowr5d-5..0+vix25-30+Wed617-0.42138.6-2.93316-0.93030.1-9.19
f_intra+f_vix+f_sectintra<-5+vix25-30+Basic Materials128-1.43629.7-7.74107-1.70423.4-9.04
f_vix+f_dow+f_sectvix20-25+Tue+Consumer Defensive221-0.34235.3-3.3291-0.64820.9-8.93
f_r5d+f_vix+f_sectr5d-5..0+vix25-30+Energy184-1.62834.2-6.36130-2.42725.4-8.90
f_intra+f_vix+f_dowintra>+5+vix20-25+Mon340-1.13426.2-6.27261-1.46520.7-8.53
f_vix+f_spy+f_sectvix25-30+spy_red+Basic Materials366-1.25832.2-6.81299-1.61924.7-8.49
f_vix+f_volsr+f_dowvix25-30+vol_high+Wed224-0.54850.0-1.8068-1.42029.4-8.27
f_gap+f_vix+f_dowgap_flat+vix25-30+Thu86-0.66833.7-7.3055-0.83434.5-8.12
f_intra+f_spy+f_sectintra-2..-1+spy_grn+Financial138-0.20938.4-1.2749-0.67030.6-8.07
f_intra+f_dow+f_sectintra<-5+Thu+Energy103-1.13735.0-5.8531-2.2909.7-8.00
f_vix+f_dow+f_mcapvix25-30+Wed+2_mid_2_10B638-0.51940.8-2.30300-1.32424.0-8.00
f_intra+f_vix+f_dowintra+2..5+vix25-30+Thu296-0.65330.1-6.0880-1.13328.8-7.90
f_intra+f_volsr+f_dowintra<-5+vol_spike+Mon156-0.48850.0-1.6243-1.34830.2-7.88
f_vix+f_spy+f_dowvix25-30+spy_red+Wed878-0.63841.2-3.39466-1.43228.1-7.80
f_vix+f_dow+f_sectvix25-30+Wed+Communication Services141-0.94532.6-3.7956-0.74230.4-7.66
f_gap+f_vix+f_dowgap<-3+vix25-30+Wed644-0.70437.7-4.13401-1.30630.4-7.65
f_r5d+f_spy+f_opexr5d>+5+spy_red+OPEX131-0.97135.9-4.5845-1.58128.9-7.58
f_vix+f_dow+f_sectvix20-25+Mon+Financial674-0.56541.2-4.40335-0.85634.6-7.56
f_intra+f_dow+f_sectintra>+5+Mon+Financial270-0.56940.0-2.8887-1.33925.3-7.46
f_vix+f_volsr+f_sectvix25-30+vol_high+Energy85-1.30331.8-6.7977-1.45728.6-7.43

5. Equity curves — top-5 combos portfolio (equal-weight)

LONG portfolio (top-5 robust)

SHORT portfolio (top-5 robust, inverted)

6. Individual top-10 long combos — equity

7. Individual top-10 short combos — equity

8. Summary — actionable patterns

LONG (hedged):
Tuesday + VIX 25-30 + Financial/Industrials/Basic Mat → 6M Sh 13-18, WR 84-96%, net +1.8-2.3%
Earnings today / tomorrow → Sh 1.3-1.4 standalone,  post-earnings drift into next open
Intraday run +2..5% + VIX<15 + OPEX → 6M Sh 16.9, WR 84.6%
r5d<-5 + spy_grn + Tuesday (oversold bounce) → 6M Sh 14.1
VIX>30 + Mon + Industrials/Financial/Basic Mat → post-crash bounce

SHORT (hedged — short stock + buy SPY):
spy_red + Energy + OPEX → 6M Sh -25, net -3.7% (energy weakness continuation)
VIX 25-30 + Wednesday + Basic Materials/Industrials → 6M Sh -18..-20
VIX 25-30 + Tuesday + Energy → 6M Sh -12.5, net -3.8%
gap>+3% + Consumer Defensive + OPEX → 6M Sh -9.3 (mean reversion after gap up in defensives)

General rules: Tuesday/Friday = long bias. Mon/Wed = short bias. SPY-red days → short overnight. Earnings events → long bias (PEAD into open).

22 Hypotheses winners (6M Sharpe > 1.5):
H11 ARKK_up + strong20d + weak_close → LONG: 6M Sh +2.62, WR 60% (buy-the-dip in growth)
H15 Earnings today + intraday >+2% → LONG (PEAD): 6M Sh +2.31
H4 weak20d + 3 consecutive up days → SHORT: 6M Sh +2.25, WR 59% (fade bounce in weak)
H3 strong20d + 3 consecutive down days → LONG: 6M Sh +1.69, WR 53% (buy pullback in strong)
H20 FLIPPED IWM_dn + small/mid + strong_close → originally SHORT but actually LONG wins 6M Sh +1.77
H19 FLIPPED HY_widening + weak20d → originally SHORT but LONG wins 6M Sh +1.35
H12 FLIPPED ARKK_dn + weak20d + strong_close → originally SHORT but LONG wins 6M Sh +1.20

Refuted (too weak / inconsistent): H1 (simple strong+weak_close), H2 (simple weak+strong_close), H5-H10 except as noted, H21, H22. Need stricter filters (3-day consecutive runs, regime overlay).