moo_1100_asym v1.0.1 — Backtest + 6–12mo Forecast

moo_1100_asym-v1.0.1 · frozen · source:
⚠ Routing P0 gate: Бэктест предполагает 09:30:00 MOO auction fill. Сейчас broker отправляет MOO как session=EXT (см. research_tradingapp_quickwin_apr26). До fix routing — не запускать. Realistic live Sh после fix: 5–7 daily.
фильтры пересчитывают графики и таблицы

1. Что это за стратегия

Шортим маленькие акции (prev_close < $5), которые с утра pumped на gap ≥ +10%. Гипотеза: pump-and-dump паттерн часто фейдится к 11:00 — retail FOMO утром, инсайдеры разгружают, цена возвращается. Asymmetric payoff: WR ~33%, но winners +7% / losers −2% ⇒ profit factor 1.6+.
Entry: MOO 09:30 SHORT при gap_pct ≥ +10% AND prev_close < $5
Stop: −2% (или −1% вариант)
Target: +7%
Exit: walker first-touch (stop OR target) OR forced flat 11:00

Hard skip rules

Tier hierarchy (v1.0.1)

Tier 1 — sub5_pump — единственный edge прошедший pre-2023 PF 2.17 → live deploy.
Tier 2 (tired_squeeze, deep_tired_squeeze, below_structure) — paper-only ≥8 weeks.
Soft tilts (DXY/VIX/TLT/MACD) → boost ×1.15–1.25, никогда не hard-skip.

2. Backtest equity curve (2y, 2024-04 → 2026-04)

Симуляция применяет ваши risk-параметры ($150 max-loss/pos, daily $500 flat, max 2 concurrent, 14bps slip RT, $2 fees, +0.5bps SHORT locate) на исторические per-trade outcomes из walker_trades.parquet. Equity tier scaling — limits ×2.5 на каждом step-up. Curve включает все 498 trading days (flat-days показаны как горизонталь).
Equity curve & drawdown
По годам
ГодNWin%Mean %Sum %
По дням недели
Месячный PnL (sum % of trades)

3. Активность по дням — сколько trades / % flat

Edge sub5_pump редкий: gap≥10% × penny-stock = катализатор. Норма что большинство дней — flat. Это не баг — это структура edge'а.
Распределение trades / day
Норма: flat-days % — это OK. Edge срабатывает только когда есть pumped penny-stock в pre-market. Рестрикт max_concurrent=2 предотвращает кластерные дни (сразу 4–5 setups при squeeze-day).
Топ-15 тикеров (по N trades)
TickerNWin%Sum %

4. Liquidity & Market Impact

Проверяем что наша позиция не двигает цену. Sizing rule: min(risk/stop, 5% pm_dvol, 50% equity). На penny stocks pm_dvol измеряется в $-объёме.
PM dollar-volume distribution (тикеры в нашем basket)
Position size vs ADV (по tier'у)
TierPos USD medianMedian % dvolp95 % dvol
Безопасно: даже на $250K tier, медианная позиция <2% pm_dvol ⇒ market impact < 5bps. Capacity cap начинает биться на $1M+ ($cap_hit_rate 36%) — guard rail работает.

5. Forecast 6–12mo (Monte Carlo, 1000 paths)

Бутстрап per-trade returns с slip haircut 16bps, Poisson trades/day из исторической λ, sequential daily kill-switch. Старт $10K, risk $150/pos, daily flat $500. Distribution показывает range outcomes.
Fan chart: p5 / p25 / p50 / p75 / p95 + 20 sample paths
Distribution финального equity
QuantileEquity USDReturn %
Probabilities
EventP
Calibration: бэктест mean +0.82%/trade × λ trades/день. Live почти наверное хуже из-за routing/slip drift. Conservative slip 16bps haircut — реалистичный верхний прогноз.

6. Risk Controls — sizing & kill switches

Position sizing формула
shares = floor( risk_per_pos / (entry_px × stop_pct) )
notional = shares × entry_px
cap = min(notional, 5% × pm_dvol, 50% × equity)

Пример: equity $10K, risk $150, stop −2%

Equity tier ladder
Phase advancement gates:
  • Realized Sh ≥ 1.5 на 4 weeks
  • No −8% weekly DD
  • All MOO fills в [09:30:00, 09:30:01]
  • Routing log clean (zero session=EXT)
Только после прохождения всех 4 gates → step-up на следующий tier.
Kill switches
УровеньTriggerДействиеReset
Per-positionrealized −2% (stop)Walker auto-exit
Daily (user)cum_PnL ≤ −$500Flat all + skip rest of dayNext session
Daily (spec)−3% equity (−$300 на $10K)Halt strategyNext day
Weekly−8% от week-openPause + diagnoseManual restart
Monthly−15% reviewQuarterly re-auditRe-validate edge
User vs spec: ваш daily flat $500 (5% от $10K) шире чем spec −3% ($300). Более агрессивный, но допустимо — больше room для variance в первый месяц. На $25K tier это становится $1,250 (−5%) vs spec −3% = $750.