AlgoChief KAMA: тест индикатора TradingView на Мосбирже
Разбираем индикатор TradingView «Smart Algo Signals Suite [AlgoChief]» — под маркетинговым описанием («6 институциональных движков», «Neural Phase Detector») скрывается конкретный, полностью проверяемый механизм входа и выхода. Мы прогнали его на 8+ годах реальных данных по ликвидным бумагам Мосбиржи и посчитали, что получилось — честно, включая отрицательный результат.
| −0.10% / −0.26%средний результат сделки (long / short) | 4 066сделок, 2018–2026 | 0 / 2направлений прошли OOS-проверку |
Что скрыто за «6 институциональными движками»
Исходный код индикатора открыто опубликован автором на TradingView — на вкладке «Исходный код» страницы скрипта (ссылка выше). Для проверки на этом сайте мы в принципе берём только стратегии с открытым кодом — так можно не гадать по маркетинговому описанию, а прочитать реальные формулы. В режиме по умолчанию («Swing Engine», сигнал типа Trend) всё сводится к одной адаптивной скользящей и полосе вокруг неё:
- Основа — KAMA (Kaufman's Adaptive Moving Average, период 120 баров). Это скользящая средняя, которая сама ускоряется на трендовых участках и замедляется в «шуме» — коэффициент сглаживания пересчитывается на каждом баре через эффективность движения цены (Efficiency Ratio) за выбранный период.
- Вокруг KAMA строится гистерезис-полоса шириной
ATR(14) × (0.80 / sensitivity), где sensitivity = 1.3 по умолчанию. Полоса нужна, чтобы цена не «дёргала» сигнал туда-обратно на каждом мелком колебании. - Сигнал «липкий»: как только цена закрытия впервые пробивает полосу вверх — индикатор встаёт в состояние «лонг» и держит его, пока цена не пробьёт полосу вниз (и наоборот). Собственно точка пробоя и есть сигнал на вход.
Отдельно индикатор перекрашивает «обычные» сигналы в «усиленные» (+▲ / +▼) по дополнительным фильтрам объёма, RSI и EMA50 — но это чисто визуальная раскраска существующей точки входа, она не меняет ни момент сигнала, ни его направление, поэтому в тесте мы её не выделяли отдельно.
Входы и выходы — как мы их тестировали
Чтобы результат был сопоставим с реальной торговлей, а не с «идеальным» исполнением по цене сигнального бара, мы внесли одно сознательное отступление от буквального кода индикатора: вход — на открытии следующего дня после сигнала, а не по цене закрытия самого сигнального бара (как в оригинальном скрипте). Дистанции стопа и цели считаются от ATR(14), зафиксированного на баре сигнала — как и в оригинале, без пересчёта по ходу сделки.
Вход
- Long — цена закрытия впервые закрывается выше KAMA + полоса (пробой снизу вверх). Вход на открытии следующего торгового дня.
- Short — зеркально, цена закрытия впервые уходит ниже KAMA − полоса.
Выход
- Стоп-лосс: 1.5 × ATR(14) от цены входа.
- Тейк-профит: 3.0 × ATR(14) от цены входа (в оригинале индикатор рисует три промежуточные цели TP1/TP2/TP3, но позицию целиком закрывает только финальная TP3 — её мы и тестировали).
- Лимит по времени: если за 20 торговых дней не сработал ни стоп, ни тейк — закрываем по цене закрытия 20-го дня.
Методология теста
Данные — дневные свечи Мосбиржи с 1 января 2018 года (более ранняя история сознательно не берётся — кризис 1998 года, деноминация и последующие структурные изменения рынка делают её нерепрезентативной для текущей ликвидности). Из универсума акций на каждый день отбирались 100 самых ликвидных бумаг по скользящему 25-дневному обороту — то есть состав «топ-100» пересчитывается динамически, а не фиксируется на старте. Издержки — 0.075% на каждую сторону сделки (0.015% биржа и клиринг по симметричному тарифу Мосбиржи + 0.06% комиссия брокера), итого 0.15% на круг. Сделки с аномальным гэпом на входе (разрыв цены, похожий на технический сбой данных, а не на реальное движение рынка) отбрасывались защитным фильтром.
Результаты теста
Всего по условиям входа набралось 4 066 сделок за весь период: 2 010 в лонг и 2 056 в шорт.
| Long | Short | |
|---|---|---|
| Сделок | 2 010 | 2 056 |
| Win rate | 37.1% | 41.3% |
| Средний результат сделки | −0.10% | −0.26% |
| Медианный результат | −3.10% | −2.82% |
| Разброс (std) | 7.30% | 8.02% |
| Лучшая сделка | +40.47% | +33.01% |
| Худшая сделка | −17.96% | −38.94% |
| Результат бумаги за тот же срок (бенчмарк) | −0.08% | −0.15% |
| Edge над бенчмарком | −0.02% | −0.11% |
Win rate ниже 50% — это нормально для стратегии со стопом 1.5×ATR и целью 3.0×ATR: по самой конструкции (цель вдвое дальше стопа) большинство сделок должны закрываться убытком, а прибыльность должна обеспечиваться редкими крупными движениями. Проблема здесь в другом — в среднем результате: он отрицательный в обоих направлениях, и даже «бенчмарк» (средний результат той же бумаги за то же время без всякой стратегии) почти такой же отрицательный, то есть сигналы индикатора статистически не добавляют никакого преимущества (edge практически нулевой и отрицательный).
Динамика по сделкам
Ниже — накопленная сумма результата всех 4 066 сделок по порядку закрытия. Важная оговорка: это простая сумма процентов по сделкам, а не сложный процент на едином капитале — то есть график показывает совокупный знак и масштаб результата по всем сигналам сразу, а не доходность конкретного счёта (которая зависела бы от доли капитала на сделку, от того, сколько позиций открыто одновременно, и т.д.).
Данные на графике разрежены до ~340 контрольных точек (без потери общей формы кривой) для скорости загрузки страницы. Колесо мыши над графиком увеличивает выбранный период, зажатая кнопка мыши двигает видимую область, а кнопка «Сбросить масштаб» под графиком возвращает исходный вид (на мобильном — то же самое пальцами).
Подробный отчёт по стратегии
Как в стандартном отчёте TradingView («Отчёт по стратегии») — та же статистика в разбивке по вкладкам: динамика по направлениям, разбор прибыльных/убыточных сделок, риск-метрики и десять лучших и худших сделок из всех 4 066.
Проверка на новых данных (OOS)
Среднего результата по всему периоду недостаточно, чтобы делать выводы — он может быть случайно утянут вниз или вверх одним нетипичным отрезком истории. Поэтому каждую стратегию на этом сайте мы дополнительно проверяем методом out-of-sample (подробнее — на отдельной странице): делим историю по дате 1 января 2024 года на «старую» часть (in-sample) и «новую» (out-of-sample), которая не используется при формулировке правил, и смотрим, сохраняется ли результат в обеих частях независимо.
| IS (до 2024) | OOS (с 2024) | Держится? | |
|---|---|---|---|
| Long | +0.02% (n=1313) | −0.32% (n=697) | Нет |
| Short | −0.73% (n=1353) | +0.62% (n=703) | Нет |
Ни одно из двух направлений не проходит проверку: оба меняют знак между IS и OOS (long — с символически положительного на отрицательный, short — с отрицательного на положительный), что типичный признак того, что наблюдаемый на части истории результат был статистическим шумом, а не устойчивой закономерностью.
Итог
«Smart Algo Signals Suite [AlgoChief]» в режиме по умолчанию (Swing Engine, KAMA-120 + ATR-полоса, SL 1.5×ATR / TP 3.0×ATR) на ликвидных бумагах Мосбиржи за 2018–2026 годы не показал статистического преимущества ни в одном из двух направлений: средний результат отрицательный и практически не отличается от «ничего не делать» (держать бумагу просто так за тот же срок), а out-of-sample проверка не подтверждается ни для long, ни для short. Мы не нашли оснований использовать этот индикатор в его маркетинговой конфигурации по умолчанию как самостоятельный торговый сигнал на этом рынке.