Практически все трейдеры хотя бы раз встречались с тем, что какие-нибудь прибыльные успешные торговые стратегии в трейдинге очень быстро перестают работать. Например, вы создали сами или позаимствовали на платном обучающем курсе у какого-то гуру какую-нибудь успешную торговую стратегию, и пробовали применять эту стратегию на демо-счете или на реальном счете, а эта стратегия или сразу не работает или очень быстро становится убыточной.
Совершенно не важно, что это за торговая стратегия в трейдинге. Это может быть, например, бесплатная стратегия в открытом доступе или торговый робот на базе какой-то стратегии, и т.д.
Если вы купили обучающие курсы или робота за свои деньги, то вы начинаете думать, что вы стали жертвой мошенничества. Если вы несколько раз сталкивались с этим, то возникает ощущение, что все подряд продавцы этих курсов и этих торговых роботов, все они исключительно мошенники.
Но если вы сами создаете такие стратегии, то рано или поздно начинаете подозревать, что все эти гуру трейдинга, скорее всего, совсем не мошенники, а дело тут в чем-то другом. Ведь вы же не мошенник, а ваши стратегии тоже перестают работать.
На самом деле, все эти стратегии должны очень быстро умереть. Наоборот, было бы очень странно, если бы все или хотя бы некоторые торговые стратегии работали бы достаточно долго. Это общее правило биржевого рынка.
Есть, как минимум 3 причины того, почему это так, а не иначе.
1. Отрицательная обратная связь
Торговая стратегия должна работать, когда она только что обнаружена. И стратегия должны перестать работать, как только об этой стратегии узнают другие трейдеры и начинают пользоваться ею. Этот эффект эрозии эффективности торговой стратегии напоминает эффект отрицательной обратной связи: трейдеры, начав пользоваться новой стратегией сами же своими руками убивают её.
Объясню механизм обратной связи на примитивном искусственном примере, чтобы не утонуть в деталях, а выявить самую суть.
1.1. Простой пример отрицательной обратной связи
Допустим, трейдер обнаружил, что цена какого-то биржевого актива по четвергам всегда только растет. Наш трейдер проверил этот факт на исторических данных и убедился, в устойчивости обнаруженного эффекта.
Получается, что надо просто покупать этот актив в среду по низкой цене, а продавать в четверг по высокой цене. Это очень простая прибыльная стратегия. Казалось бы теперь он может заработать на этом в своей торговле или заработать на том, чтобы научить этому других трейдеров или запрограммировать эту идею в виде торгового робота.
Но наш трейдер немного наивен, когда думает, что эту стратегию изобрел только он один. Ну в нашем искусственном примере, конечно же, рост цен по четвергам заметили бы тысячи других трейдеров. А в реальном примере порой требуются достаточно хитрые схемы обнаружения скрытых закономерностей. Так что в реальном случае у нашего трейдера были бы некоторые основания думать о своей исключительности.
На самом деле наш трейдеру не такой уникальный, как ему кажется. По всему миру эту же стратегию обнаружили и сотни других трейдеров. В их числе и такие гуру трейдинга, которые продают свои обучающие курсы очень богатым трейдерам и/или гигантскому числу трейдеров.
Поэтому огромное количество трейдеров с большими деньгами начинает этот актив заранее покупать в среду, чтобы выгодно продать в четверг. Это приводит к тому, что стратегия быстро перестает быть прибыльной.
Вместо четверга цена актива начинает расти уже в среду, так как в среду сильно повышается спрос на этот актив. А в четверг цена этого актива начинает падать, а не расти, так как идет много сделок на продажу с большими объемами. Трейдеры будут спешить скорее зафиксировать прибыль. Объемы этих сделок на продажу актива в четверг перекрывают те объемы, которые раньше были на покупку данного актива по четвергам.
Это пример немного примитивен. Но он кристально чисто показывате почему, чем быстрее и больше о торговой стратегии узнает трейдерская публика, тем торговая стратегия быстрее перестает работать. Вы можете для тренировки вашего понимания рынка взять любую другую стратегию от любого гуру и проанализировать её самостоятельно на предмет того, почему эта стратегия уже перестала работать или скоро не будет работать.
2. Нестационарность биржевых временных рядов
2.1. Что такое нестационарность рынка
Нестационарность, это изменение во времени функции статистического распределения ценовых временных рядов на бирже. С течением времени меняются все статистические моменты распределения: среднее значение цены, её дисперсия, асимметричность распределения цены, форма профиля распределения и т.д.
Если взять достаточно широкое скользящее окно и двигать его вдоль оси времени, то график функции распределения цен рыночного актива внутри скользящего окна будет постоянно непредсказуемо меняться. Он будет смещаться то вправо, то влево, то уширяться, то сужаться, то становиться симметричным, то асимметричным и т.д. При нестационарности также с течением времени меняется и спектр рыночных колебаний цен биржевых активов в скользящем окне.
Рынок постоянно меняется, и то, что работало в прошлом, должно перестать работать в настоящем. Например, если цена рыночного актива становится более волатильной, то торговая стратегия, которая была разработана в более стабильных условиях, может перестать быть прибыльной.
2.2. Борьба с нестационарностью
Как результат, стратегия должна постоянно адаптироваться к изменившимся рыночным условиям, иначе торговая стратегия перестанет быть прибыльной. При этом, как правило, никогда не удается заранее прогнозировать, какая адаптация потребуется для будущего. То есть не получится заранее адаптировать стратегию на будущее время.
В этом основная причина того, что перестают работать торговые роботы и торговые советники. Вы можете увидеть очень хорошие результаты тестирования робота на исторических данных (бэк-тесты). Но это совершенно не является гарантией, что запрограммированная в торговом роботе стратегия будет работать сегодня и, тем более, завтра.
Ситуацию с прибыльностью торговых роботов немного спасает то, что природа нестационарности такова, что, обычно, статистика рынка не меняется резко и сильно. Обычно, нестационарность выражается в том, что статистические моменты меняются достаточно плавно.
Поэтому самый вероятный сценарий с торговым роботом будет таким, что робот не станет неожиданно убыточным, а будет постепенно уменьшать свою прибыльность, а потом увеличивать свою убыточеность. Точнее, он может и резко стать убыточным, но это менее вероятное событие.
Еще одним интересным следствием нестационарности рынка является то, что торговые роботы, которые давно уже стали безнадежно убыточными, могут вдруг неожидано на некоторое время стать прибыльными. А также они могут стать временно прибыльными на рынке какого-то другого актива. Но эти явления очень непредсказуемые.
3. Переоптимизация
3.1. Торговая стратегия и торговая система
Переоптимизация характерна не столько для торговых стратегий, сколько для торговых систем, созданных на базе торговых стратегий. Торговая система отличается от торговой стратегии тем, что в торговой стратегии вся инструкция торговли задана в конкретных числах.
Например, если создавать торговую систему на базе торговой стратегии из первого раздела этой статьи, то придется в конкретных числах задать какую долю капитала использовать в среду для открытия сделки, во сколько по времени открыть сделку на покупку или при какой цене открыть сделку, во сколько по времени закрыть сделку в четверг или при какой цене. Нужно будет предусмотреть все возможные нестандартные поведения актива и конкретные варианты действий на случай такого нестандартного поведения, чтобы не застрять в такой открытой сделке. И т.д.
Такую конкретную инструкцию в конкретных числах можно отнести к программисту и попросить его запрограммировать поведение торгового робота. Если программист не задаст вам по этой инструкции ни одного дополнительного вопроса, значит, это уже торговая система. Торговый робот же не задает никаких дополнительных вопросов, он всегда знает, что надо делать без подсказки трейдера.
3.2. Переоптимизация параметров торговой системы
Но где взять эти конкретные числовые данные для торговой системы? Откуда взять данные, сколько капитала использовать в сделке, при какой цене купить, при какой продать и т.д.?
Все эти числа подбираются такими, чтобы на исторических данных максимизировать получаемую прибыль. То есть торговая система настраивается на работу с определенными историческими данными. Если такая подстройка под определенные данные будет очень сильной, то это может привести к тому, что торговая система перестанет работать на новых данных, которые начнут отличаться в некоторых деталях от исторических данных.
Это явление называется переоптимизацией. Оно бывает очень характерна для торговых роботов, параметры которых оптимизированы были на исторических данных, например, для получения максимальной прибыли. Разработчикам роботов казалось, что такое нацеливание параметров торговой системы на максимум прибыли приведет к тому, что, при отклонении рынка от своего прошлого поведения, прибыль сразу же не исчезнет, а останется хоть какой-то небольшой.
Казалось бы это логично. Но на самом деле у них получилось, что этот робот не сможет заработать уже нигде, кроме как на тех данных, на которых он оптимизировался. Если эти данные когда-то в будушем снова повторятся, то этот робот покажет великолепный результат.
3.3. Борьба с переоптимизацией торговой системы
Для борьбы с переоптимизацией торговая система должна тестироваться на таких данных, на которых она никогда не оптимизировалась ранее. И подбирать параметры торговой системы надо так, чтобы максимизировалась прибыль на тестовых данных в процессе подбора параметров для максимизации прибыли на оптимизационных данных.
Для этого обычно исторические данные разбивают на 2 части. Первые по времени 75%-80% используются для оптимизации, а последние по времени 20%-25% используют для тесторования. После каждого шага оптимизации на первых данных, смотрят увеличивается ли прибыль на вторых данных. Если да, то проводят следующий небольшой шаг оптимизации параметров системы на первых данных.
И вот так маленькими шагами постепенно оптимизируют параметры торговой системы, пока прибыль на тестовых данных не начнет падать. Как только это произойдет, надо прекратить процесс оптимизации, несмотря на то, что на оптимизационных данных мы еще не дошли до самого максимума прибыльности. То есть получается, что торговую систему можно еще больше сделать оптимальной, но делать это дальше уже ни в коем случае не нужно.
Обратите внимание, что переоптимизация и нестационарность, это две разные причины того, что торговые стратегии перестают работать. Конечно, данные могут меняться из-за нестационарности рынка и поэтому переоптимизация может быть следствием нестационарности рынка. Но если бы рынок был стационарным, то переоптимизация тоже была бы даже и на стационарном рынке.
4. Выводы
Из всего написанного выше напрашиваются следующие выводы:
- Не покупайте торговые стратегии, торговых роботов и обучающие курсы от гуру трейдинга. Это всё или уже безнадежно протухло, или вот-вот протухнет. Не факт, что вы успеете этим воспользоваться.
- Торговые стратегии и торговые системы разрабатываейте только сами и никому не расказывайте о том, что вам удалось найти прибыльную стратегию. Только в этом случае у вас есть шанс некоторое время получать прибыль.
- Любая разработанная вами торговая стратегия скоро сдохнет из-за нестационарности рынка. Поэтому постоянно занимайтесь анализом и адаптацией своей торговой системы под изменившийся характер рынка. Или заранее ищите новую стратегию для замены вашей пока еще прибыльной стратегии.
- При подборе оптимальных параметров вашей торговой системы не переоптимизируйте её. Вовремя остановите улучшение вашей торговой системы и не пытайтесь подобрать более лучшие параметры.
- Если от всего выше сказанного вы впали в уныние и разочарование в трейдинге, то для вас есть специальный выход из этой ситуации. Это использование наших нейронных сетей, которые умеют прогнозировать будущие рыночные цены. См. подробнее эту бесплатную презентацию нейросети "Прогнозирующая Машина". Эта нейросеть работает на данном сайте и доступна для использования трейдерами.