📰 News Priced-In · MOO → 9:55 Strategy

Decision @ 09:28 ET · Entry MOO · Exit 9:55 · Universe 2M+ ADV · N=1,575 events · 2025-04-16 → 2026-04-02
SHORT signals
136
WR_inv 72.1% · meanret -1.29%
LONG signals
104
WR 62.5% · meanret +0.94%
Coverage signals
15.2%
240/1575 событий
Date range
11m
235 торговых дней

📊 Концепция

Гипотеза "прайсд ин": если новость уже отыграна рынком ДО открытия (через pre-drift, vol buildup, options/insider activity), MOO открывает завышено/заниженно → MOO→9:55 = fade direction. Если новость свежая и не отыграна → continuation.

3 модели тестировались:
  M2 — rule-based sell-the-news (drift+gap+news+insider)
  M4 — composite linear score [-10..+10] (8 факторов)
  M5 — interaction matrix (gap_bucket × drift_bucket × news_dir = 75 ячеек)

🎯 M5: Лучшие SHORT setups (продажа на MOO, выкуп 9:55)

GAPDRIFT 5dNEWSNWR↓Mean retMedianSharpe
gap<-5%d5 -5..-2%NEU 1010.0% -2.76% -3.40% -13.78
gap>+5%d5<-5%NEU 1421.4% -1.96% -2.94% -6.59
gap>+5%d5<-5%GOOD 1428.6% -2.04% -2.28% -5.99
gap +2..+5%d5 -2..+2%NEU 2630.8% -0.85% -1.02% -5.81
gap>+5%d5>+5%GOOD 1435.7% -0.97% -0.63% -5.34
gap -2..+2%d5>+5%BAD 2025.0% -0.76% -0.33% -5.10
gap +2..+5%d5 -5..-2%NEU 2128.6% -0.87% -0.69% -5.07
gap<-5%d5>+5%NEU 1729.4% -1.31% -0.59% -5.03

🚀 M5: Лучшие LONG setups (покупка на MOO, продажа 9:55)

GAPDRIFT 5dNEWSNWRMean retMedianSharpe
gap -5..-2%d5 -5..-2%NEU 1181.8% +2.12% +0.84% 9.63
gap -5..-2%d5>+5%BAD 1181.8% +1.48% +1.88% 9.57
gap -5..-2%d5<-5%NEU 1968.4% +0.86% +0.44% 6.13
gap +2..+5%d5 +2..+5%GOOD 1060.0% +0.58% +0.50% 4.35
gap>+5%d5 +2..+5%GOOD 1070.0% +0.84% +1.70% 4.02
gap -5..-2%d5>+5%NEU 3050.0% +0.65% +0.40% 3.68
gap>+5%d5 -2..+2%GOOD 1346.2% +0.64% -0.09% 3.18

📋 M2: Sell-the-news rule-based

SetupSideNWRMean retSharpe
SHORT: hot+good (drift>5%, pos news)SHORT 7945.6% -0.44% -2.90
LONG: cold+bad (drift<-5%, neg news)LONG 3240.6% +0.09% 0.55
LONG: fresh good news, no buildupLONG 3151.6% +0.01% 0.07
SHORT: fresh bad news, no buildupSHORT 2552.0% +0.46% 3.16
SHORT: gap>+5% AND drift>+5%SHORT 4339.5% -0.77% -2.88
LONG: gap<-5% AND drift<-5%LONG 2152.4% -0.09% -0.33
SHORT: insider_sold>$1M + good newsSHORT 5945.8% -0.49% -3.22
LONG: insider_bought>$500K + bad newsLONG 560.0% +1.44% 5.96

🎚️ M4: Composite linear score buckets

Score bucketNWRMean retMedianSharpe
STRONG SHORT (s<=-3)247 47.0% -0.32% -0.13% -1.49
SHORT (-3286 43.4% -0.04% -0.13% -0.34
NEUTRAL (-1743 47.9% -0.14% -0.08% -1.09
LONG (1<=s<3)231 47.2% -0.16% -0.11% -0.90
STRONG LONG (s>=3)68 41.2% -0.35% -0.27% -1.86

📅 Walk-forward OOS by quarter (M4 strong signals)

QuarterN shortSHORT WR_invSHORT mean N longLONG WRLONG mean
2025Q2 77 54.5% -0.25% 7 28.6% -1.68%
2025Q3 64 56.2% -0.29% 29 37.9% -0.24%
2025Q4 64 48.4% -0.12% 43 48.8% -0.89%
2026Q1 42 47.6% -0.83% 41 51.2% +0.43%

📈 Equity Curve (M5 top signals, equal-weight per day)

🔑 Key Findings

SHORT эджи (sell-the-news / fade overshoot):
  • gap<-5% + d5 -5..-2% + NEU → mean -2.76% Sharpe -13.78 (N=10)
  • gap>+5% + d5<-5% + NEU → mean -1.96% Sharpe -6.59 (N=14)
  • gap>+5% + d5<-5% + GOOD → mean -2.04% Sharpe -5.99 (N=14)
  • gap +2..+5% + d5 -2..+2% + NEU → mean -0.85% Sharpe -5.81 (N=26)
  • gap>+5% + d5>+5% + GOOD → mean -0.97% Sharpe -5.34 (N=14)

LONG эджи (oversold bounce / contrarian):
  • gap -5..-2% + d5 -5..-2% + NEU → mean +2.12% Sharpe 9.63 (N=11)
  • gap -5..-2% + d5>+5% + BAD → mean +1.48% Sharpe 9.57 (N=11)
  • gap -5..-2% + d5<-5% + NEU → mean +0.86% Sharpe 6.13 (N=19)
  • gap +2..+5% + d5 +2..+5% + GOOD → mean +0.58% Sharpe 4.35 (N=10)
  • gap>+5% + d5 +2..+5% + GOOD → mean +0.84% Sharpe 4.02 (N=10)

Подтверждённые гипотезы:
  ✓ Sell-the-news работает: gap>+5% + drift>+5% + good news → mean -0.97% (N=14, M5)
  ✓ Insider sold + good news = SHORT: insider_sold>$1M + pos news → mean -0.49% Sharpe -3.22 (N=59, M2)
  ✓ Oversold bounce: gap -5..-2% + drift<-5% + neutral news → WR 68% mean +0.86% Sharpe 6.13 (N=19, M5)
  ✗ Fresh good news НЕ continuation: WR 51.6% mean ~0% (N=31) — рынок открывает на максимуме
  ⚠ M4 composite слабый — линейная сумма теряет интеракции, нужен tree-based

⚠️ Limitations

  • Окно 12m (limited by intraday cache) — нужен рестrain на 2-5y
  • Ownership/PT — статичный snapshot (Apr 2026) для всех дат
  • Spread/commission НЕ учтены — для MOO→9:55 типичный cost 8-15 bps
  • Не отфильтровано: split days, halts, earnings days (нужен PRISTINE filter)
  • Малые N для отдельных бакетов M5 (N=10-20)