Есть ли толк от трейлинг-стопа?

Многие начинающие трейдеры быстро осваивают такой популярный биржевой механизм, как стоп-лосс. И практически каждый знаком с понятием трейлинг-стопа.

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

Многие новички используют трейлинг-стоп неверно – не протестировав его на исторических данных совместно со своей стратегией. Важность таких тестов я сегодня и продемонстрирую. Мы попробуем разобраться, какой тип трейлинг стопа лучше и есть ли вообще смысл применять «трал»?

Что такое трейлинг-стоп

Trailing Stop – это алгоритм управления ордером Stop Loss, который действует по следующей схеме:

  • Если прибыль по открытой позиции не превысила величины Trailing Stop, никаких действий не предпринимать;
  • Как только прибыль по открытой позиции превысит величину Trailing Stop, отправить на сервер распоряжение о размещении ордера Stop Loss на расстоянии величины Trailing Stop от текущей цены;
  • Как только будет получена котировка на расстоянии от выставленного Stop Loss ордера, превышающего величину Trailing Stop, отправить на сервер распоряжение об изменении уровня этого ордера, чтобы он находился на расстоянии величины Trailing Stop от текущей цены.

То есть, по сути, трейлинг-стоп – это определенный алгоритм, по которому стоп-лосс открытого ордера передвигается ближе к текущей цене с целью избежать убытков и получить от рынка максимум прибыли.

Исходные данные

Для тестирования трейлинг-стопа я смастерил простого бота для часовых графиков:

Вход осуществляется, когда основная линия индикатора Stochastic на часовом графике пересекает уровень 25 (сверху вниз для продаж и снизу вверх для покупок), а основная линия индикатора Stochastic на дневном графике наклонена в сторону предполагаемой сделки. Выход производится по набору различных правил (в пределах 10 правил для разных рыночных ситуаций). Трейлинг-стоп у данного советника не предусмотрен.

Чтобы не перегружать статью тестами, я взял только основные валютные парыUSDCHF, GBPUSD, EURUSD, USDJPY, USDCAD, AUDUSD. Тесты проводились с 2000 года по текущий день. Я буду проводить оптимизацию, а затем выберу самый лучший по прибыльности набор параметров. Советник имеет контроль закрытия баров и все операции выполняет в начале новой свечи, в данном случае Н1.

Это позволяет избавиться от различных случайностей вроде нестабильной работы сервера, расширения спреда, проскальзываний, а также дает возможность проводить тестирование с точностью «По ценам открытия». При использовании старших таймфреймов и применении контроля открытия баров разница между подобным тестированием и тестированием «По тикам» на реальных тиковых котировках – только в затраченных на тесты машино-часах.

Затем я взял библиотеку функций трейлинг-стопа с нашего форума и прикрутил ее к советнику. Мы будем тестировать большую часть из этих трейлинг-стопов. Поехали!

Тестирование

Я долго думал, как представить информацию наиболее удобно для изучения, и решил сделать скрины тестов различных трейлинг-стопов сверху, а результаты работы советника без трейлинг-стопа внизу.

Простой трейлинг-стоп

Первый вариант трейлинг-стопа для нашего теста – простой трейлинг-стоп, которым оборудована большая часть советников.

USDCHF

Как видно, трейлинг-стоп вообще не повлиял на конечный результат.

GBPUSD

Снова такая же история – никакого влияния.

EURUSD

Тут мы видим небольшое увеличение конечной прибыли, уменьшение просадки на 4%, увеличение профит-фактора и количества прибыльных сделок. Впрочем, это увеличение не слишком значительное даже на длительном отрезке времени в 20 лет. А за один год разница будет совсем незаметна.

USDJPY

И тут мы видим даже небольшое ухудшение характеристик советника.

USDCAD

Здесь никакой разницы нет.

AUDUSD

И тут снова никакой разницы.

Теперь сравним все пары вместе:

Таким образом, только в двух из шести случаев простой трейлинг-стоп действительно улучшил характеристики советника. При этом улучшения были несущественными.

Трейлинг-стоп по фракталам

Данный трейлинг-стоп переносит стоп-лосс вслед за новыми фракталами, появляющимися в процессе движения цены. При этом сам стоп устанавливается на некотором отдалении от фрактала, чтобы цена его не задела, преждевременно выбив из позиции.

USDCHF

Есть небольшое улучшение характеристик советника – немного подрос профит-фактор, остальные характеристики почти не изменились.

GBPUSD

Тут, как и в предыдущем случае, изменения минимальны.

EURUSD

Здесь примерно на 5% выросла чистая прибыль, остальные характеристики почти не изменились.

USDJPY

Советник стал немного прибыльнее.

USDCAD

Тут изменения почти незаметны.

AUDUSD

Прилично вырос профит-фактор, немного подросла чистая прибыль. При этом количество прибыльных сделок даже уменьшилось, а просадка выросла на 1%.

Все вместе:

Визуально кривые доходности практически неотличимы друг от друга. Тем не менее, просадка уменьшилась на 1%, а чистая прибыль немного выросла. Как и для предыдущего варианта трейлинг-стопа, такие изменения несущественны и могут быть заметны только спустя огромное количество времени. На коротких отрезках улучшения не видны.

Трейлинг-стоп по теням свечей

Этот трейлинг-стоп чем-то напоминает предыдущий, только вместо фракталов берутся тени свечей в определенном диапазоне – например, самая низкая тень за последние 20 свечей.

USDCHF

Характеристики почти не изменились. Немного подросла чистая прибыль.

GBPUSD

Тут тоже почти нет разницы.

EURUSD

На этой паре разница минимальна, но можно заметить, что применение трала немного замедлило последнее падение кривой баланса – оно стало не таким глубоким. Но в целом изменения невелики.

USDJPY

Тут разница несущественна.

USDCAD

Пара сотен долларов чистой прибыли за 20 лет – вот и вся разница.

AUDUSD

Тут мы видим приличную разницу в чистой прибыли, хотя прибыльных сделок стало даже меньше.

Все вместе:

Улучшение характеристик советника от применения этого варианта трала похоже на предыдущий вариант. Тем не менее, визуально кажется, что последнее падение кривой доходности стало немного мягче.

Трейлинг-стоп по ATR

Тут расстояние между стопом и текущей ценой определяется по индикатору ATR, который, как известно, измеряет волатильность. На спокойном рынке это расстояние будет меньше, а когда рынок штормит, этот тип трейлинг-стопа даст возможность цене двигаться немного свободнее.

USDCHF

Здесь мы видим существенное улучшение формы кривой доходности. На более позднем отрезке времени советник явно стал работать лучше.

GBPUSD

Немного улучшены характеристики.

EURUSD

Здесь разница в прибыли объясняется разным спредом при проведении тестов, кривая доходности имеет ту же форму.

USDJPY

Тут то же самое.

USDCAD

Разница невелика.

AUDUSD

Есть разница в прибыли и в профит-факторе.

Все вместе:

Выводы аналогичны результатам предыдущего варианта – изменения несущественны.

Трейлинг-стоп «Удавка»

У нас есть исходное расстояние, на котором должен держаться стоп-лосс от текущей цены, скажем, 80 пунктов. Когда мы будем в профите на 50 пунктов (уровень 1), это расстояние мы сократим до 60 пунктов. Когда профит достигнет 80 пунктов (уровень 2), мы сократим расстояние до 30 пунктов.

USDCHF

Какой-то впечатляющей разницы тут не видно.

GBPUSD

Аналогично предыдущему тесту.

EURUSD

Немного улучшились характеристики советника.

USDJPY

Разницы практически нет.

USDCAD

Вроде бы кривая стала немного прямее, но это почти незаметно.

AUDUSD

Кажется, последний неудачный отрезок стал менее неудачным, но разница почти неуловима.

Все вместе:

Графики почти идентичны.

Трейлинг-стоп по времени

Тут мы каждый заданный интервал времени (например, каждый час) двигаем стоп-лосс ближе к цене открытия на определенное количество пунктов, скажем, на 10. Начинаем двигать из убыточной зоны раз в час на 10 пунктов, затем пересекаем уровень безубытка и продолжаем двигать стоп раз в час, пока он не будет активирован, либо пока мы не закроемся по тейк-профиту.

USDCHF

На этой паре трейлинг-стоп по времени дал неплохой результат.

GBPUSD

Тут тоже кривая доходности визуально стала немного пободрее.

EURUSD

Особой разницы не видно.

USDJPY

Аналогично – нет отличий.

USDCAD

Разница если и есть, то она минимальна.

AUDUSD

Отличия невелики.

Все вместе:

Визуально кажется, что последний неблагоприятный период стал более благоприятным, но незначительно.

Трейлинг-стоп Ratchet Баришпольца

При достижении профитом уровня 1 стоп-лосс переносится в +1; при достижении профитом уровня 2 – стоп на уровень 1; когда профит достигает уровня 3, стоп – на уровень 2. При работе в минусовом участке – тоже 3 уровня, но схема работы с ними несколько иная, а именно: если мы опустились ниже уровня, а потом поднялись выше него (пример для покупки), то стоп ставим на следующий более глубокий уровень (например, уровни -5, -10 и -25, стоп -40; если опустились ниже -10, а потом поднялись выше -10, то стоп на -25; если поднимемся выше -5, то стоп перенесем на -10; при -2 (спред) – стоп на -5).

USDCHF

С трейлинг-стопом график доходности выглядит красивее.

GBPUSD

Разница малозаметна.

EURUSD

Отличий почти нет.

USDJPY

Также почти нет отличий.

USDCAD

То же самое.

AUDUSD

Отличий практически нет.

Все вместе:

Я почти не вижу отличий.

Трейлинг-стоп по ценовому каналу

Рисуется некий ценовой канал, а стоп-лосс подтягивается по границе этого канала на определенном расстоянии.

USDCHF

График даже стал менее красивым.

GBPUSD

Отличий почти нет.

EURUSD

Последний период стал менее убыточным, и даже вышли из просадки благодаря тралу.

USDJPY

Разницы практически нет.

USDCAD

Отличий не наблюдается.

AUDUSD

Кажется, стало получше.

Все вместе:

Визуально график доходности существенно выровнялся.

Заключение

Лучшим вариантом трейлинг-стопа, на мой взгляд, оказался трал по ценовому каналу – он прилично выпрямил кривую доходности советника, который испытывал определенные трудности в последнее время, и даже вывел его в прибыль.

Тем не менее, применение трейлинг-стопа для и так прибыльной торговой системы не дало серьезных преимуществ. А те небольшие улучшения характеристик советника, что мы наблюдали, проявили себя только на значительном отрезке времени.

В принципе, вы можете продолжать применять различные варианты трейлинг-стопа, если вам так психологически спокойнее. Но не забывайте протестировать параметры трала на истории – с неверными настройками вы можете серьезно ухудшить результаты вашей системы.

И напоследок еще один совет: при оптимизации ваших систем трейлинг-стопы стоит включать и оптимизировать уже после того, как подобраны оптимальные параметры для правил самой ТС. Не стоит пытаться при помощи трейлинг-стопов вытянуть плохую систему в прибыль, а оптимизируя ее вместе с тралами, вы никогда не узнаете, что систему вытянул именно трал.

Что в этом плохого? Ну а зачем вытягивать тралами сливные системы, если гораздо надежнее сначала найти прибыльную, а затем прикрутить к ней трейлинг-стоп, если он так уж необходим. Кроме того, такая оптимизация – прямой путь к подгонке.

На этом все, всем пока!

Аналогичное исследование по фондовому рынку

Тема на форуме

С уважением, Дмитрий аkа Silentspec
Tlap.com

В помощь Трейдеру, Новичкам , , ,