MOO-955 6m Refresh + Exit Strategy Research
Period: 2025-10-16 → 2026-04-16 · Universe: scored_v4 · N=4,556 M10R qualified trades
🎯 Главный вывод: V7 (pure hold до 11:00 без TP/SL) обгоняет boевой 09:55 baseline:
WR 71.4% → 75.3%, mean +1.06% → +1.59%, Sharpe 7.36 → 8.74. Extension помогает в 64.6% трейдов, mean +0.58% экстра.
⚠️ Оговорка: По gap-buckets extension ломается при gap > +5% (Sharpe 4.29 → 2.86, WR 63→57%).
Big gap-ups мин-ревертят после 09:55. Для этого сегмента — фиксировать 09:55.
✅ Рекомендация по экзиту:
- gap в [-3%, +5%] (≈90% трейдов) → hold до 11:00 MKT без TP/SL
- gap > +5% → exit 09:55 MKT (текущий baseline)
- НЕ ставить TP/SL — они убивают edge (V1-V4 все хуже baseline)
- Дисциплинарный катоф 11:00 MKT — если к 11:00 не вышел — выходим руками/market, БЕЗ спекулятивного hold
1. Equity curve ($ profit on real size by variant)
2. Variant summary (все 4,556 трейдов)
| Variant | Logic | N | WR % | mean % | std | Sharpe_ann | sum % |
| BASE 09:55 | Текущий прод: exit @ 09:55 MKT | 4556 | 71.4 | 1.056 | 2.279 | 7.36 | 4812.8 |
| V3 Wide | TP+1% / SL-1.5% / timeout 11:00 | 3992 | 72.8 | 0.337 | 1.036 | 5.16 | 1343.9 |
| V4 Momo | TP+1.5% / SL-1% / timeout 11:00 | 3992 | 58.4 | 0.389 | 1.167 | 5.3 | 1554.4 |
| V5 Smart | TP+0.5% partial + trail BE / 11:00 | 3992 | 70.9 | 0.327 | 1.252 | 4.15 | 1306.7 |
| V6 SL only | SL-1.5% / timeout 11:00 (no TP) | 3992 | 60.3 | 1.062 | 2.686 | 6.28 | 4240.1 |
| V7 Pure Hold ⭐ | Hold до 11:00 без TP/SL | 3992 | 75.3 | 1.593 | 2.893 | 8.74 | 6358.6 |
| V9 Wide SL | SL-2% / timeout 11:00 (no TP) | 3992 | 65.7 | 1.215 | 2.824 | 6.83 | 4851.1 |
3. Gap × Variant breakdown (Sharpe_ann)
| Gap bucket | N | BASE 09:55 | V3 Wide (TP/SL) | V7 Pure Hold | Recommended |
| gap<-3 | 0 | 0.00 (+0.00%) | 0.00 (+0.00%) | 0.00 (+0.00%) | — |
| gap[-3,-1] | 922 | 6.79 (+0.83%) | 5.91 (+0.38%) | 10.34 (+1.66%) | HOLD 11:00 |
| gap[-1,1] | 1343 | 10.35 (+1.12%) | 10.15 (+0.55%) | 11.25 (+1.68%) | HOLD 11:00 |
| gap[1,3] | 1427 | 8.29 (+1.07%) | 6.36 (+0.40%) | 10.33 (+1.70%) | HOLD 11:00 |
| gap[3,5] | 473 | 6.98 (+1.21%) | 1.01 (+0.07%) | 7.42 (+1.61%) | HOLD 11:00 |
| gap>5 | 391 | 4.29 (+1.10%) | -2.40 (-0.19%) | 2.86 (+0.81%) | EXIT 09:55 |
4. Green-Day Continuation Research (ARM-type)
Гипотеза: после дня с сильным зелёным баром (d-1: ret>=X%, close_pos>=Y) на d0 entry MOO → exit в разные моменты.
Находки:
- Простой фильтр "prev_d0_ret >=5%" → WR 50-52%, Sharpe 0.5-0.8. Слабо.
- RIP (prev>=10% & close_top30%) → Sharpe 1.22 @ 11:00. Самый чистый broad filter.
- КЛЮЧ — gap на d0: Strong green + gap flat (-1..+1) → Sharpe 1.71 @ 11:00; gap +1..3 → 1.36. gap >+5 → Sharpe -0.93 (DEAD, fade).
- Вывод: ARM-кейс попадает в "SG + flat gap" — есть edge, но ~Sharpe 1.5-2 (не Holy Grail).
| Scenario | N | WR_955 | mean_955 | Sharpe_955 | WR_1100 | mean_1100 | Sharpe_1100 | Sharpe_EOD |
| ALL | 61942 | 51.4 | 0.067 | 0.5 | 51.6 | 0.066 | 0.38 | 0.18 |
| prev>=5 | 5041 | 50.4 | 0.105 | 0.53 | 52.1 | 0.213 | 0.83 | 0.59 |
| prev>=7 | 2673 | 50.5 | 0.171 | 0.76 | 51.7 | 0.283 | 0.96 | 0.66 |
| prev>=10 | 1265 | 52.6 | 0.276 | 1.08 | 51.6 | 0.378 | 1.14 | 0.61 |
| RIP_top30 | 1048 | 53.1 | 0.29 | 1.22 | 52.1 | 0.385 | 1.23 | 0.55 |
| SG_flat_gap | 2142 | 50.0 | 0.093 | 0.59 | 52.6 | 0.221 | 1.03 | 0.54 |
| SG_strict | 876 | 51.6 | 0.18 | 1.0 | 53.4 | 0.343 | 1.39 | 0.67 |
5. Green-Day Equity Curve (SG + gap[-1,3], $1K per trade)
Practical setup для green-day continuation:
- Фильтр: prev_d0_ret ≥ 7%, close_pos ≥ 0.7, avg_vol_20d ≥ 2M shares, price > $5
- Gap window:
[-1%, +3%]. Вне — SKIP.
- Entry: MOO 09:30 · Exit: 11:00 MKT (без TP/SL — stops убивают edge)
- Sharpe ~1.5 на этом фильтре — sizing $500-1000 per pos, max 3-5 имён/день
- Можно комбинировать с M10R-скором (если V7_hold даёт A+ для этой фильтрации — усилить размер)
6. Финальные ТЗ для MOO-955 daemon
Изменения в боевой системе:
- Exit 09:55 → conditional 11:00: если gap_pct ∈ [-3, +5] — держать до 11:00 MKT. Иначе 09:55 MKT (как сейчас).
- Трейлинг-выход НЕ внедрять: все TP/SL варианты уничтожают edge на этой системе.
- Green-day add-on: перед MOO-955 селектом — отдельный фильтр на prev_d0_ret ≥7 + close_top30 + flat gap. Сайзинг отдельный от core M10R.
- Катоф 11:00: если позиция НЕ закрылась по timeout (система упала / gap filled / whatever) — hard flat на market по ticker-list.