Дашборд показывал +158%. Счёт - минус $2,149.

Около месяца страница статистики моего трейдингового пет-проекта показывала совокупный P&L +158.75%. На этой неделе ночной аудит той же базы данных выдал другую цифру: минус $2,148.88 по 140 завершённым бумажным сделкам. Оба числа были формально верны одновременно. И оба я построил сам.
TL;DR
- Пет-проект торгует на бумажные деньги: баланс фиктивный, цены рыночные. Его страница статистики показывала +158.75%; реальный денежный журнал - минус $2,148.88 по 140 завершённым сделкам.
- Цифра на витрине была суммой процентов по сделкам. Она учитывала 120 сигналов, которые отработали, и тихо игнорировала 397, которые не отработали.
- Вопрос, который поймал бы это на месяцы раньше: как выглядело бы это число, если бы проект проваливался?
Как всё устроено
Проект описывается просто: ИИ читает рыночные новости и превращает их в торговые идеи, которые исполняются на бумажном счёте. Бумажная торговля означает фиктивный баланс при реальных ценах, честный способ проверить стратегию до того, как рисковать настоящими деньгами. В самом начале я собрал страницу статистики, которая складывала процентные движения каждого сигнала, дошедшего до цели или до стопа, и печатала итог.
Итог рос. Перевалил за +100%, потом за +150%, и буду честен: смотреть на него было приятно. Формулу под ним я больше не перечитывал. А зачем? Я же сам её написал.
Что нашёл аудит
Я попросил своего ИИ-ассистента потратить ночь на разбор проекта с инструкцией быть беспощадным, а затем выполнить второй, независимый проход и пересчитать каждый итог с нуля. Два прохода сошлись до цента. Но то, в чём они сошлись, было неприятно.
+158.75% были суммой процентных движений: по одному числу на каждый отработавший сигнал, без размеров позиций. Сумма процентов - это не доходность. Если первая сделка делает 5%, а вторая теряет 5%, реальные деньги слегка в минусе, а сумма процентов даёт ноль. Наложите сверху сотни сделок, и зазор между метрикой и реальностью превращается в пропасть.

Хуже был встроенный в формулу вариант ошибки выжившего. В сумму попадали только сигналы, которые отработали, то есть дошли до цели или до стопа; 397 сигналов, которые просто истекли или зависли в подвешенном состоянии, были для неё невидимы. При достаточном времени и числе сигналов метрика ползла вверх независимо от того, что происходило со счётом. А со счётом происходило вот что: из завершённых сделок 2 закрылись по тейк-профиту и 50 по стоп-лоссу.
Самая опасная метрика - та, которая умеет только расти.
Что встревожило меня сильнее
Деньги были бумажными, так что минус $2,149 не стоил мне ничего. По-настоящему встревожил меня мониторинг здоровья системы, потому что ему я доверял ровно так же, как странице статистики. Система рапортовала «здорова» 11 дней подряд. За те же две недели она записала в логи 10,723 строки ошибок. Одна из её стратегий молчала около шести недель, и ни один алерт не сработал, потому что процесс был жив, а «жив» - это всё, что измерял health-check.
Зелёный цвет означает, что процесс запущен. Он не означает, что работа делается. Это разные утверждения, и мой дашборд проверял только первое.
Как я обманул сам себя
Я всё возвращаюсь к одному наблюдению: эту метрику мне никто не продавал. Не было ни вендора, ни презентации, ни стимула что-то завышать. В первую неделю проекта я набросал быстрое число, чтобы ответить на вопрос «происходит ли хоть что-то», а потом оно перекочевало на главную страницу и стало ответом на вопрос «как идут дела», и никто, включая меня, не перепроверил, способно ли оно на этот вопрос отвечать. Подозреваю, что именно так рождается большинство витринных дашбордов и в компаниях: не через обман, а через повышение в должности без аттестации.
Мне никто не врал. Я сам повысил отладочную цифру до KPI и перестал читать формулу.
Есть простой тест, который я теперь применяю. Спросите о каждой витринной цифре: что она показывала бы, если бы всё проваливалось? Для моей суммы процентов честный ответ был «примерно ту же картину, только чуть медленнее». Число, которое не умеет показывать провал, - это украшение. Если ни одно число на вашем дашборде не выглядело бы иначе во время провала, у вас не дашборд, а обои.
Что изменилось
Починка заняла один вечер после того, как аудит назвал проблемы по именам. Главной цифрой теперь служит долларовый журнал, тот самый минус $2,148.88, который было больно публиковать даже самому себе. Стратегии измеряются против базовой линии «ничего не делать», и те, что теряли деньги статистически убедительно, поставлены на паузу или закрыты. Health-check теперь проверяет, что вчерашняя работа действительно была сделана, а не что процесс существует.
Что бы я сделал иначе с первого дня? Подключил бы денежную цифру первой, до любых производных метрик, потому что это единственное число, которое не умеет льстить. И перечитывал бы каждую формулу в тот день, когда её результат начинает радовать глаз: ровно в этот момент проверки и заканчиваются.
И вопрос, с которым я вас оставлю: какое число на вашем собственном дашборде вы ни разу не видели идущим вниз, и проверяли ли вы, умеет ли оно?
Нужно что-то похожее для вашего бизнеса? Посмотрите, как я могу помочь →
Заберите чек-лист «AI Audit Kickoff»
Пятнадцать вопросов, которые стоит задать про свои процессы, прежде чем тратить деньги на ИИ. Тот самый первый час, с которого я начинаю настоящий аудит, одностраничным PDF. Оставьте почту и получите его сразу, плюс изредка письмо, когда напишу что-то стоящее. Без спама, отписка в один клик.