Кофе 11.26, робот на Альфа-Про. В части 0 писал: «Решил
допилить проблемный модуль — и сломал то, что работало».
Вот разбор — по дням, как было.
Отправная точка. Пятница, конец сессии: v4.6 (лесенка + EMA)
работала в советнике — виртуальные позиции, реальных заявок
не было. Финал в журнале: «Не удалось закрыть 8 лот после 3
попыток — ЗАКРОЙТЕ ВРУЧНУЮ!». Рынок уже уходил в закрытие —
закрывать руками было нечего и некогда, но сам факт, что
движок не смог выполнить свою процедуру конца дня, всё
решал: пока нет доверия к движку, любой результат — шум.
В части 0 я написал «закрыл руками» — повторил формулировку
лога; точнее так: руками закрывать было нечего, но робота
я остановил и ушёл пересобирать. В субботу начался допил.

Суббота. Исправлял вайб-кодингом: сформулировал нейросети,
что не так — получил правку — применил — проверил. Цикл
повторился пять-семь раз, и дальше пошло по нарастающей:
правка — ошибка компиляции — правка, чтобы её починить —
новая ошибка. Компиляция то вставала, то падала. Когда

День 5 (KCX6 — фьючерс на кофе 11.26): 4 сделки, −15,28 ₽.
Три стопа и один выход концом дня. Два утренних шорта попали
против отката: −11,83 ₽ (11 минут) и −10,99 ₽ (245 минут —
позиция долго была в плюсе, откат выбил по стопу). Лонг в
16:28 не удержал уровень — ещё −10,14 ₽. Четвёртая, шорт от
2.851, закрыта концом дня в плюс: +17,68 ₽.
Ни одной ручной операции. Стопы отработали, как им положено, — коротко.
Итог второй пятёрки: 5 сессий, 14 сделок, +117,04 ₽.
Три плюсовых дня, два минусовых, все четыре типа выходов в работе.
Счётчик «10 сессий без вмешательств»: 10/10. Критерий выполнен.
Сводка двух пятёрок — в понедельник: сделки, результат, выходы и удержания
за обе недели.
Она закроет цикл, о дальнейших шагах — там же.
P/L бумажный, до комиссий — метрика логики, не деньги.
Дневник, не сигналы.

День 4: 3 сделки, −17,66 ₽ — первый минусовой день серии.
Два лонга против падающего рынка, оба закрыты стопами:
−12,63 ₽ (184 минуты удержания) и −10,10 ₽ (151 минута).
Третья — шорт от 18:46, уже по направлению дня: закрыт концом
дня в плюс, +5,07 ₽.
Итог по выходам: два стопа, один конец дня. Ни одной ручной
операции. Стопы отработали коротко — это их работа.
Минусовой день — часть статистики, не происшествие. Полная
картина — в сводке после закрытия цикла.
Счётчик «10 сессий без вмешательств»: 9/10. Одна сессия до
выполнения критерия — завтра.
P/L бумажный, до комиссий — метрика логики, не деньги.
Дневник, не сигналы.

День 3: 3 сделки, +56,42 ₽.
Один выход — по стопу. Лонг от 2.888, отработал 10 минут,
−10,11 ₽ — штатная цена работы системы, стопы случаются,
это норма конструкции.
Дальше день развернулся: рынок прошёл с 2.909 до 2.836,
оба шорта сработали. Вторая сделка — +56 тиков, крупнейший
тейк серии, 195 минут удержания. Закрытие по цене тика
пересечения — цель не берётся ровно, берётся тем last'ом,
который через неё прошёл. Сегодня вышло на 6 тиков лучше
уровня.
Итог: три разных выхода, включая стоп. Ни одной ручной
операции. Параметры входа и выхода мои.
Счётчик «10 сессий без вмешательств»: 8/10.
P/L бумаговый, до комиссий — метрика логики, не деньги.
Дневник, не сигналы.

День 2: 3 сделки (все шорт), +67,42 ₽ — лучший день серии.
Включён с утра.
Первая: шорт с 10:58, +27 тиков, удержание 302 минуты.
Вторая: шорт с 16:16 до 20:28, +42 ₽ — до цели хватило.
Вчера не хватило трёх тиков, сегодня хватило. Гипотеза
«торговать реже и целиться дальше» получает первое
подтверждение.
Третья: шорт от 20:39, закрыта в 22:30 концом дня, +3 тика.
Все три — по направлению дня: рынок сходил с 2.959 до 2.89,
робот не воевал с ним.
Итог по типам выходов: три разных. Ни одной ручной операции:
входы по окну, выходы по правилам, конец дня — по расписанию.
Параметры входа и выхода мои.
Счётчик «10 сессий без вмешательств»: 7/10.
P/L бумажный, до комиссий — метрика логики, не деньги.
Дневник, не сигналы.

Было → стало:
— TP: 30 → 50 шагов
— SL: 8 → 12 шагов
— + трейлинг-стоп (TS): подтягивает стоп при движении в плюс
— + сессионное окно входов по времени (в файле настроек,
на панели не отображается)
— + блокировка входов при котировке старше 30 минут
— дневной лимит убытка: 3000 → 500 ₽, ужесточил
Идея прежняя, одна: торговать реже и целиться дальше.
Итог сессии: 1 сделка (лонг), бумажный PL +26,14 ₽.
Вход 16:29, выход 21:32 — удержание больше пяти часов.
Цена дошла максимум до ~+47 тиков, до TP 50 не хватило трёх,
трейлинг зафиксировал +31 и вышел по TS.
Робот был включен не с утра — примерно с 16:00. Утреннюю часть
сессии пропустил — были ли там сигналы, не знаю, фиксировать
нечего.
Счётчик «10 сессий без вмешательств»: 6/10.
P/L бумажный, до комиссий — метрика логики, не деньги.
Дневник разработки, не сигналы и не рекомендация.

23:45. До закрытия сессии пять минут. Мой робот пытается закрыть
8 лотов шорта по фьючерсу на кофе KCX6 — и падает с ошибками.
Попытки отправить закрывающую заявку — все мимо. Финальная
строка журнала:
«Не удалось закрыть 8 лот после 3 попыток — ЗАКРОЙТЕ ВРУЧНУЮ!»
Немного контекста. Написал торгового робота под Альфа-Про на C#.
Подопытный — фьючерс KCX6.
Первая версия (лесенка + EMA-фильтр) дошла до v4.6 и, как вы видите,
закончила карьеру эффектно.
Дальше — классика жанра. Решил «допилить» проблемный модуль,
переписал его целиком, без тестов и страховки — и сломал то,
что работало. Латать стало нечего. Снёс всё и написал новый.
Предохранители, которых у прошлой версии не было:
— кулдаун 45 секунд между входами;
— максимум 30 сделок в день;
— дневной лимит убытка 3000 ₽;
— СТОП глушит всё чисто: новые входы гасятся, заявки снимаются,
открытая позиция доводится роботом до TP/SL;
— каждое событие пишется в CSV: время, цена, позиция, PL.