📰 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)
| GAP | DRIFT 5d | NEWS | N | WR↓ | Mean ret | Median | Sharpe |
| gap<-5% | d5 -5..-2% | NEU |
10 | 10.0% |
-2.76% |
-3.40% |
-13.78 |
| gap>+5% | d5<-5% | NEU |
14 | 21.4% |
-1.96% |
-2.94% |
-6.59 |
| gap>+5% | d5<-5% | GOOD |
14 | 28.6% |
-2.04% |
-2.28% |
-5.99 |
| gap +2..+5% | d5 -2..+2% | NEU |
26 | 30.8% |
-0.85% |
-1.02% |
-5.81 |
| gap>+5% | d5>+5% | GOOD |
14 | 35.7% |
-0.97% |
-0.63% |
-5.34 |
| gap -2..+2% | d5>+5% | BAD |
20 | 25.0% |
-0.76% |
-0.33% |
-5.10 |
| gap +2..+5% | d5 -5..-2% | NEU |
21 | 28.6% |
-0.87% |
-0.69% |
-5.07 |
| gap<-5% | d5>+5% | NEU |
17 | 29.4% |
-1.31% |
-0.59% |
-5.03 |
🚀 M5: Лучшие LONG setups (покупка на MOO, продажа 9:55)
| GAP | DRIFT 5d | NEWS | N | WR | Mean ret | Median | Sharpe |
| gap -5..-2% | d5 -5..-2% | NEU |
11 | 81.8% |
+2.12% |
+0.84% |
9.63 |
| gap -5..-2% | d5>+5% | BAD |
11 | 81.8% |
+1.48% |
+1.88% |
9.57 |
| gap -5..-2% | d5<-5% | NEU |
19 | 68.4% |
+0.86% |
+0.44% |
6.13 |
| gap +2..+5% | d5 +2..+5% | GOOD |
10 | 60.0% |
+0.58% |
+0.50% |
4.35 |
| gap>+5% | d5 +2..+5% | GOOD |
10 | 70.0% |
+0.84% |
+1.70% |
4.02 |
| gap -5..-2% | d5>+5% | NEU |
30 | 50.0% |
+0.65% |
+0.40% |
3.68 |
| gap>+5% | d5 -2..+2% | GOOD |
13 | 46.2% |
+0.64% |
-0.09% |
3.18 |
📋 M2: Sell-the-news rule-based
| Setup | Side | N | WR | Mean ret | Sharpe |
| SHORT: hot+good (drift>5%, pos news) | SHORT |
79 | 45.6% |
-0.44% |
-2.90 |
| LONG: cold+bad (drift<-5%, neg news) | LONG |
32 | 40.6% |
+0.09% |
0.55 |
| LONG: fresh good news, no buildup | LONG |
31 | 51.6% |
+0.01% |
0.07 |
| SHORT: fresh bad news, no buildup | SHORT |
25 | 52.0% |
+0.46% |
3.16 |
| SHORT: gap>+5% AND drift>+5% | SHORT |
43 | 39.5% |
-0.77% |
-2.88 |
| LONG: gap<-5% AND drift<-5% | LONG |
21 | 52.4% |
-0.09% |
-0.33 |
| SHORT: insider_sold>$1M + good news | SHORT |
59 | 45.8% |
-0.49% |
-3.22 |
| LONG: insider_bought>$500K + bad news | LONG |
5 | 60.0% |
+1.44% |
5.96 |
🎚️ M4: Composite linear score buckets
| Score bucket | N | WR | Mean ret | Median | Sharpe |
| STRONG SHORT (s<=-3) | 247 |
47.0% |
-0.32% |
-0.13% |
-1.49 |
SHORT (-3| 286 |
43.4% |
-0.04% |
-0.13% |
-0.34 |
|
NEUTRAL (-1| 743 |
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)
| Quarter | N short | SHORT WR_inv | SHORT mean |
N long | LONG WR | LONG 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)