Большинство трейдеров торгуют по каким-то правилам, но держат их в голове в виде размытых ощущений. "Войду, когда цена отобьётся от уровня и объём подтвердит": звучит как план, но не является им. Настоящий торговый алгоритм это конкретные условия входа, выхода и управления позицией, сформулированные так чётко, что их можно проверить на истории. Это не обязательно программный код: у многих успешных трейдеров торговый алгоритм существует в виде одностраничного документа с правилами.
Что такое торговый алгоритм
Торговый алгоритм это набор правил, по которым принимаются решения о входе, выходе и размере позиции. Ключевое слово: правила, а не предпочтения. Правило "покупаю, когда RSI ниже 30 и цена выше 200-дневной скользящей средней" можно проверить на тысячах исторических ситуаций. "Покупаю, когда чувствую, что рынок перепродан" проверить нельзя.
Алгоритмическая торговля бывает двух видов. Первый: трейдер сам принимает решения, но строго по заранее написанным правилам, без отступлений. Второй: решения принимает программный код, а трейдер только контролирует работу системы. Оба варианта являются алгоритмическими, просто один с человеком в цепочке исполнения, другой без него.
Виды торговых алгоритмов
По подходу и горизонту торговли алгоритмы делятся на несколько групп:
-
трендовые: система входит в направлении сложившегося движения и держит позицию, пока тренд не развернётся. Хорошо работают на трендовых рынках, теряют деньги в боковике;
-
контртрендовые (mean reversion): покупают после сильного падения, продают после сильного роста в расчёте на возврат к среднему. Работают в рейндже, плохо переживают сильные тренды;
-
арбитражные: ищут ценовые расхождения между коррелирующими инструментами или биржами и зарабатывают на схождении цены. Требуют высокой скорости исполнения;
-
алгоритмы на основе паттернов: вход при появлении конкретной свечной модели или графической фигуры, подтверждённой дополнительными условиями;
-
высокочастотные (HFT): тысячи сделок в секунду с минимальной целью прибыли по каждой. Недоступны для большинства частных участников из-за требований к инфраструктуре.
Как работает торговый алгоритм: из чего он состоит
Любая работающая система, независимо от сложности, содержит одни и те же блоки.
-
Первый: сигнал. Это условие, которое говорит "смотри сюда". Например, пересечение двух скользящих средних, пробой уровня или отклонение цены от полос Боллинджера.
-
Второй: условие подтверждения. Сигнал сам по себе часто ненадёжен. Подтверждение фильтрует ложные срабатывания: требует совпадения нескольких условий одновременно, например роста объёма при пробое.
-
Третий: вход. Конкретная цена или тип ордера. Рыночный ордер, лимитный ордер на определённом уровне, стоп-ордер при пробое: это отдельное решение, которое влияет на среднюю цену входа.
-
Четвёртый: размер позиции. Сколько процентов депозита рискуется в каждой сделке. Без этого блока не бывает нормального риск-менеджмента.
-
Пятый: стоп-лосс. Конкретный уровень или условие, при котором убыточная сделка закрывается.
-
Шестой: выход с прибылью. Тейк-профит, трейлинг-стоп или условие закрытия по сигналу в обратную сторону.
Как создать торговый алгоритм с нуля
Написать торговый алгоритм проще, чем кажется, если двигаться по порядку.
-
Начните с гипотезы: "я думаю, что цена часто отбивается от уровней предыдущего дня при наличии объёма": это уже гипотеза для алгоритма. Запишите её в виде проверяемых условий: что именно считается уровнем, что именно считается объёмом, на каком таймфрейме работаем.
-
Дальше: проверьте на истории. Возьмите графики за последние 2-3 года и вручную найдите все ситуации, которые соответствуют вашим условиям. Запишите результат каждой в таблицу. Это называется бэктестинг, и он покажет, была ли у вашей идеи статистическое преимущество или нет.
-
После этого: протестируйте в реальном времени без денег или на минимальную сумму. Форвард-тест нужен, потому что история не воспроизводит психологию реального рынка, а поведение системы на бумаге иногда отличается от поведения при реальном исполнении ордеров.
Торговый робот на этом этапе не обязателен. Алгоритм можно исполнять вручную, просто строго по правилам. Автоматизация имеет смысл только тогда, когда ручная версия уже доказала свою работоспособность.
Как оценить качество торгового алгоритма
Несколько ключевых метрик, на которые стоит смотреть после бэктеста:
-
Процент прибыльных сделок (win rate) сам по себе ни о чём не говорит. Система с 40% прибыльных сделок может зарабатывать больше, чем система с 70%, если средняя прибыль в несколько раз больше среднего убытка.
-
Profit factor: отношение суммарной прибыли к суммарному убытку. Значение ниже 1,5 говорит о слабом преимуществе. Больше 2: система работает с хорошим запасом.
-
Максимальная просадка (max drawdown) показывает самое большое падение капитала от пика до дна в истории тестирования. Это ключевой показатель психологической нагрузки: если просадка в 30%, трейдер должен честно ответить себе, сможет ли он продолжать торговать при таком минусе.
Отдельно стоит проверить, не является ли система жертвой перегонки кривой (overfitting). Если алгоритм показывает блестящие результаты на одном периоде истории, но проваливается на другом, правила слишком точно подогнаны под конкретные данные и не будут работать в будущем.
Заключение
Торговый алгоритм это не гарантия прибыли, это способ торговать системно и проверять свои идеи на реальных данных. Большинство трейдеров, которые теряют деньги, делают это именно потому, что не имеют чётких правил: они меняют подход после каждой серии убытков, нарушают стоп-лоссы и принимают решения под влиянием эмоций. Зафиксированный алгоритм убирает часть этих проблем. Не все, но часть, и этого уже достаточно, чтобы улучшить итоговый результат.
