Разрыв между безупречными метриками на исторических тестах и нулевой отдачей в боевой эксплуатации — хроническая болезнь прикладного машинного обучения на временных рядах. Когда сложная архитектура внезапно перестает приносить результат в реальном времени, команды разработки обычно ищут причину в смене рыночного режима или недообучении. Однако на практике источником миллионных иллюзий чаще оказывается банальная утечка данных из будущего в обучающую выборку.

Анатомия ложного сигнала

В показательном кейсе торговая система строилась как тяжелый ансамбль из шести передовых моделей: LightGBM, LSTM, Transformer, TCN, PatchTST и iTransformer. Алгоритмы предсказывали вероятность роста котировок по 15-минутным свечам, опираясь на 32 признака — от технических индикаторов и объемов до расчетов со старших таймфреймов в один и четыре часа.

На тестах система демонстрировала аномально высокую предсказательную силу, но в реальных сделках преимущество мгновенно испарялось. Команда потратила полтора месяца на проверку ложных гипотез, пытаясь варьировать контекстные окна инференса от 500 до 4000 свечей, однако результат оставался строго нулевым.

«Бару в 12:15 доставалось значение признака, которое физически станет известно рынку только в 15:45».

Причиной расхождения оказалась элементарная ошибка агрегации. Функция группировки 15-минутных баров в 4-часовые корзины рассчитывала индикаторы по всей 4-часовой свече целиком, а затем протягивала полученное значение на все внутренние интервалы. В результате горизонт заглядывания в будущее достигал 3 часов 45 минут. Модели учились не прогнозировать динамику, а просто считывать уже произошедшие события, которых в боевом контуре у них не было.

Диагностика и цена бага

Для вскрытия дефекта потребовался строгий позиционный тест, сравнивающий значения признаков на полной истории и на локальных скользящих срезах, а также тест на перемешивание меток (permutation test) для отсечения случайного шума. Из 31 проверенной гипотезы контрольный порог составил +11.3 процентных пункта, из-за чего шесть признаков, успешно прошедших первичный отбор, пришлось немедленно забраковать.

Масштаб проблемы для бизнеса оказался критическим: на скомпрометированные признаки старших таймфреймов приходился 41% суммарной важности всего ансамбля (включая htf4_trend с 18.3%, htf4_mom с 11.2% и htf4_rsi с 6.8%).

Высокие метрики ML-моделей на бэктестах часто маскируют грубые ошибки конструирования признаков, создавая у руководства ложное ощущение готового продукта. Для AI-проектов на временных рядах внедрение жестких анти-утечечных тестов и санитарного контроля данных до вывода в прод — единственный способ не сжигать бюджеты на полуторамесячную отладку несуществующих рыночных аномалий.

Машинное обучениеИскусственный интеллектИИ в финансахПроизводительность