Monster Trading · Диагноз + план

Monster Trading — диагноз серии минусов + рычаг: быстрый компас режима

Серия убыточных дней — следствие одной архитектурной ошибки. Компас режима запаздывал на ~48ч. Исправлено и выкачено в live.

2026-07-05  ·  Источник: диагноз-workflow wf_b9a89151-4c0 (4 opus-аналитика + adversarial-верификация + синтез, 25 агентов)  ·  28 сделок за период
✓ ВЫКАЧЕНО В LIVE 2026-07-05 11:41 UTC (commit af7d39d + 9853eb3, master, запушено)
Вердикт системы
+$13.07

Лонг-когорта после флипа режима: WR 60%, R:R 2.15

Мозг (LLM-деск) работает. Он развернулся к лонгам раньше компаса при ещё-bear макро — expectancy +$1.31/сделку. Серия минусов — не провал алго, а задержка компаса. Починено проводкой, не переписыванием.

Шорты в даунтренде: −$25.02
WR шорты: 23%
Realized R:R: 1.17
Break-even: 46%
Корень потерь
−48ч

Компас запаздывал на пол-волны

BTC пробой вверх 01.07 12:00, компас держал −1 (bear) до 03.07 12:00. EMA200 на $3–5k выше цены — +1 не дал НИ РАЗУ за ран. Следствие: 13 шортов против растущего рынка, L3-надзор резал верные лонги как «против тренда». Режимный компас контролирует всё — и сторону, и L3-вето.

Диагноз — цифры

КогортаСделокWRP&LR:R
Шорты (компас = даунтренд, рынок рос) 13 23% −$25.02
Лонги после флипа (компас догнал) ~10 60% +$13.07 2.15
Итого по периоду (realized R:R) 28 −$11.95 1.17 (b/e=46%)

L3 срезал 5 верных лонгов меткой «long против тренда»: ETH #16 на 15% пути к цели, LINK #17 на 4%. Realized R:R упал 1.5 → 1.17 — ниже break-even.

Исходы 28 сделок — период диагноза

S1
S2
S3
S4
S5
S6
S7
S8
S9
S10
S11
S12
S13
FLIP
L1
L2
L3
L4
L5
L6
L7
L8
L9
L10

Убыток  ·  Прибыль  ·  Флип режима 01.07 (компас +48ч позже). До флипа: WR 23%. После: WR 60%.

Что подтверждено верификацией (adversarial)

Сопутствующие системные дефекты

Четыре независимых аналитика + adversarial-верификация подтвердили одно и то же:

План исполнения — 7 шагов

Shadow-гейт выполнено
Посчитать на реальных 4h-клайнах 28.06–05.07 оба компаса: EMA trend_dir vs quant_trend/classify_regime. Acceptance: quant флипнул ≤ 01.07 16:00, разница лага ≥ 40ч, whipsaw-счёт на чоппи-истории приемлем.
PR1: завести быстрый компас выполнено
Завести quant_trend/classify_regime в _layer_context + risk_scale деградация вместо хардкода 1.0. EMA-стек остаётся контекстом, не вето. Реплей: ни один short не проходит L2 после флипа 01.07; лонги 02–03.07 не режутся.
PR2: L3 grace-период + trailing выполнено
L3 не режет позицию младше N ч только по label-расхождению. Винеры с прогрессом к цели → trailing/BE, не cut-в-ноль. Фикс реализованного R:R: 1.17 → ≥1.5.
PR3: проброс play→setup выполнено
Фикс executor:437/571 — поле playsetup. Унификация fallback-ключей producer('?')/consumer(''). n≥30-карантин setup-атрибуции от скоринга. Разблокирует маховик обучения.
PR4: macro staleness выполнено
Триггерный пересчёт/деградация веса macro_narrative при пробое key_levels — не ждать понедельника. Снимает 7-дневный лок, который не позволял среагировать на разворот 01.07.
Сквозной реплей + тесты + code-review выполнено
Полный pytest + независимое adversarial code-review диффа (money-path). Реплей на периоде 28.06–05.07 должен показать: без шортов после 01.07, лонги не режутся, realized R:R ≥ 1.5.
Снять паузу + push живая верификация пройдена
Паузу деска снята, живой цикл верифицирован 12:00–12:04 UTC 2026-07-05. Push выполнен: commit af7d39d + 9853eb3, ветка master.

Результаты исполнения

SHADOW-верификация компаса

Компас = наклон EMA10 (окно 6 баров 4h) + асимметричный гистерезис: exit 1% / enter 2%. На 1665 реальных барах Bybit: перестаёт форсить шорты на 168 часов раньше EMA-стека на развороте 01.07. Дребезг — 1.9× от старого (гейт ≤ пройден). Сырой quant_trend без сглаживания дребезжал бы 8–13× — отклонён.

Реализация — 7 коммитов

503450a компас в live-контур · 50255c8 grace 4ч + защита винеров · 41fa938 проброс play→setup + карантин n≥30 · c6dab10 инвалидация макро по key_levels/ΔF&G · a525bf8 конфиг · 2f49f0c + af7d39d фиксы ревью.

Тесты: 226 → 292 passed, 0 failed.

Adversarial-ревью — поймало критические баги

267 тестов пропустили то, что нашло ревью:

Критический sign-bug трейлинг-стопа шорт-винера — стоп считался над входом вместо под ценой, защита прибыли шорта схлопывалась в безубыток. Исправлено.

Сетевой вызов до 36с внутри 2-минутного lock guard'а — вынесен в кэш btc_close_cache.json.

Живая верификация 12:00–12:04 UTC

Бриф показывает «BTC режим (по факту цены): ФЛЭТ» — старый компас показывал бы «даунтренд».

Деск решил: SOL long conv=4 при осторожном риске. Память деска атрибутирует «флэт·long win 55% +$6», адвокат дьявола цитирует провальный трек шортов.

Risk_watch тикает штатно. 292 теста зелёные в живом дереве.

⚠ Инцидент при выкатке

Прогон тестов из живого дерева отправил 5 синтетических тест-событий в живую ленту → ТГ-бот запушил их Тимуру в 11:43 UTC. Сообщения про ETH protect/cut с ценами 99–110 и «DOGE +6.02%» — ФЕЙК, игнорировать.

Лента вычищена (бэкап events.jsonl.bak-20260705-testpollution). Корень закрыт коммитом 9853eb3 — тесты теперь изолированы от живого out/.

Что подтверждено верификацией (adversarial)

Сопутствующие системные дефекты

Четыре независимых аналитика + adversarial-верификация подтвердили одно и то же:

Отложено / решения Тимура

Не трогать до стабилизации компаса

Три темы отложены осознанно — они зависят от устойчивой работы компаса в форварде, а не от диагностического снапшота.

Что дальше — форвард-критерии

Не объявлять победу до накопления статистики

Компас в live, но выборка мала. Смотрим конкретные сигналы, не абстрактный «прогресс».

Риски внедрения

Четыре активных риска

Выявлены синтезом 4 opus-аналитиков. Требуют явной митигации в PR-ах.

Честные оговорки

Выборка — 28 сделок за один период (28.06–05.07). Статистически недостаточно для выводов об «устойчивом крае» — только для диагностики причины серии.

Флип компаса наблюдался один раз — на одном рыночном переходе (bear→bull). Гипотеза о лаге ~48ч требует проверки на минимум 3–5 флипах разного типа. Quant_trend не тестировался на реальном рыночном шуме за пределами 2-недельного окна.

Сайзинг (0.89% риска/сделку) искусственно занижает как убытки, так и прибыль — абсолютные цифры P&L не репрезентируют производительность при целевом сайзинге.

Monster Trading  ·  Диагноз + план  ·  2026-07-05 · выкачено в live 11:41 UTC
Данные: wf_b9a89151-4c0 (25 агентов, 4 opus-аналитика) · 28 сделок Bybit demo · scanner.py · monster_executor.py