Закрыть

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

В закладки
Аудио
Эксперт
Дмитрий Клименко
Quantitative Researcher / Algorithmic Trader
Подробнее об эксперте
Модификация классических торговых стратегий - ключ к повышению эффективности и прибыльности трейдинга
Содержание

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

Стратегия Mean-reversion и ее модификация

Одним из видов популярных торговых стратегий является Mean-reversion. Суть стратегии проста, если торговый инструмент находится в боковом тренде, то образуется некоторый канал цены, в котором, котировки двигаются в районе некоторого среднего значения. Часто ширина канала имеет примерно одинаковый размер, и тогда стратегия заключается в том, чтобы покупать (открывать длинную позицию) когда цена актива отражается от нижней границы канала, и продавать (открывать короткую позицию), когда цена актива приближается к верхней границе актива. Средняя линия строится по выбранному техническому индикатору усреднения, а границы канала можно построить используя соответственно канальные индикаторы, такие как Bollinger Bands, min-max range, или любой другой.

Сложность только в том, что такое поведение актива, особенно в криптовалюте, не часто. И здесь есть несколько выходов. Первый - это анализировать различные токены на соблюдение свойства нахождения в устойчивом канале. Второй метод - это создать такой синтетический инструмент самому. Самый простой способ создать новый синтетический торговый инструмент - это просто взять 2 текущих финансовых инструмента и смешать в один. Например, построить график нового инструмента, где 50% это BTC, а 50% это ETH.

Если представление такой концепции вдруг вызывает сложность, то легче рассмотреть все на примере: Есть некоторый управляющий капиталом трейдер и у него в портфеле активов на 1000$. И этот трейдер купил на 500$ BTC и на 500$ ETH. А вы смотрите на график его доходности, и в нужный момент можете покупать такие же позиции как у этого управляющего трейдера или закрывать эти позиции.

Но внимательный читатель скорей всего уже подумал, хорошо, взяли мы 50% BTC на 50% ETH, и как мы получим новый синтетический инструмент, который будет в канале, если оба инструмента, что BTC, что ETH - растут? И это абсолютно верно, но верно и еще одно наблюдение, что скорость роста BTС и ETH тоже похожа. Зная это, мы создадим синтетический инструмент, в котором 50% BTС - длинная позиция (купили), а 50% ETH - короткая позиция (продали). Для примера рассмотрим график поведения такого портфеля: 

Если в первый день BTС вырос на +3%, ETH +2.5% то наш портфель вырастет на 0,25% = 50% х 3% - 50% х 2,5%. Если второй день BTС +1%, ETH +2% то портфель упадет на -0,5% = 50% х 1% - 50% х 2%. 

Из этого примера видим, что несмотря на рост 2 активов, наш синтетических актив как рос, так и падал в цене.

Выбор активов для парной торговли

Правильная пропорция первого и второго актива подбирается на основе, например, соотношения моментов движения обоих активов. А такая торговля называется парной торговлей, так как используются 2 актива одновременно. Но существует большое количество различных токенов, и еще больше парных комбинаций. Как же подобрать подходящие? Для этого нам понадобится измерить корреляцию графиков двух активов и коинтеграцию:

Шаг 1. Находим корреляцию всех пар токенов.

Шаг 2. Выбираем пары токенов, чтобы корреляция была высокой, но не слишком. Проблема при слишком высокой корреляции в том, что активы почти повторяют движение друг друга, и получившийся канал будет очень тонкий, торговля в нем не покроет транзакционные издержки. Все зависит от конкретной ситуации, но, к примеру, можно выбрать активы с корреляцией от 0,8 до 0,95.

Шаг 3. Для отсеянных пар рассчитываем уровень коинтеграции, и опять выбираем пары с высоким уровнем.

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

Шаг 5. Проверяем, есть ли среди образованных стабильных пар такие, в которых цена подошла к границе канала и можно осуществить вход в позицию синтетического инструмента. Если такие есть, то получаем торговый сигнал(ы).

Шаг 6. Повторить всю процедуру с шага 1, например, через один день.

В данном примере мы рассмотрели, как составить синтетический инструмент, с требуемыми свойствами, подходящими для торговли в канале из 2-х инструментов. Но в реальности мы не ограничены 2-мя инструментами, а можем использовать и три, четыре, семь, … любое число составляющих. Часто от этого наш синтетический инструмент становится даже более стабильным, т.к. присутствует дополнительный уровень диверсификации. Для примера, берем 2 найденные пары, и объединяем их вместе в один синтетический инструмент из 4-х составляющих. Или, например, строим синтетических инструмент, в котором один инструмент в длинной позиции, и два инструмента в короткой позиции.

А что, если…?

Мы рассмотрели базовый подход для составления синтетических инструментов, которые можно значительно улучшить на каждом шаге. Но, предлагаю задуматься над следующим вопросом. Что, если представить реальный инструмент, как уже сформированный кем-то синтетический?  Например, что, если представить, что BTC/USD - это синтетический инструмент, состоящий из A, B, C, D, и некоторого торгового шума. Что, если таких эфемерных компонентов конечное количество, они достаточно ортогональны и присутствуют в составе всех наших цифровых активов, хотя, доля некоторых компонентов может быть нулевая. Тогда, например, и ETH/USD состоит из A, B, C, D, и некоторого шума.

Теперь представим, что происходит с нашим синтетическим инструментом, составленным из двух цифровых активов, если каждый цифровой актив в свою очередь состоит из набора эфемерных активов, например A, B, C, D. Когда мы берем один из цифровых активов в длинную позицию, а второй в короткую, по сути дела, мы вычитаем цену. Теперь представим, что допустим:

BTC/USD = 0.2 x A + 0.4 x B + 1.3 x C + 0.01 x D + err.

А актив:

ETH/USD = 0.21 x A + 0.39 x B + 2.9 x C + 0.05 x D + err.

Тогда наш синтетический инструмент:

BTCUSD – ETHUSD = A x (0.2 – 0.21) + B x (0.4 – 0.39) + C x (1.3 – 2.9) + D x (0.01 – 0.05) + err. = -0,01 x A + 0.01 x B – 1.6 x C -0.04 x D + err.

Как видим, практически осталась одна компонента C, и эта эфемерная компонента и движется в канале. Фактически, путем создания нашего синтетического инструмента, мы выделили компоненту C и ею же и торгуем.

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

Выделение трендовой составляющей

Есть и другой способ составления синтетических инструментов. А именно выделение трендовой составляющей. И для этой цели, чем больше цифровых активов находится в нашем синтетическом портфеле, тем он более стабилен (но, без фанатизма, везде надо знать норму). Стоит учесть, что активы могут быть как в длинной позиции (купленные), так и в короткой (проданные). Один из методов составления таких портфелей - это маркет-нейтральная стратегия. Здесь суть в том, что суммарная стоимость длинных (купленных) равна суммарной стоимости коротких (проданных) позиций. При этом мы выделяем трендовую составляющую и в идеале можем получить такой портфель, что будет расти вне зависимости от того, что большинство крипто активов падают или растут в цене. То есть мы нейтральны по отношению к рынку, и как бы движемся в своей плоскости.

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

Допустим у нас есть сотня цифровых инструментов. Мы предполагаем, что инструменты, которые активно росли последний месяц будут расти и дальше. Для этого мы оцениваем рост в процентах всех наших активов за месяц. И, допустим, выбираем 20 инструментов с наибольшим ростом и открываем длинную позицию, а на 20 инструментов с наименьшим ростом открываем короткую позицию. Затем определяем дату следующей реоптимизации портфеля, например, через 2 недели. В данном случае мы просто инвестировали в каждый актив равную сумму, 1/40 нашего капитала. И нашим фактором был рост за последние 30 дней.

Однако, фактором вполне может быть что угодно. Приведу несколько примеров:

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

Стоит отметить, что можно использовать несколько факторов для формирования портфеля. Для примера, сначала сортируем список наших инструментов по первому фактору, и выбираем 30% инструментов, а затем по второму фактору. Также размер инструмента в портфеле можно поставить согласно нормализации по какому-либо фактору, или же как можно более диверсифицироваться в остаточных факторах.

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

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

Комбинированные методы торговли

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

Для примера у нас есть сотня торговых инструментов. Из них на основе определенного фактора на следующие 2 недели выбираем 15 инструментов для длинных позиций (на покупку), и 15 инструментов для коротких позиций (на продажу). Затем запускаем основную стратегию на выбранных инструментах, но открываем сделки только согласно направлению из портфельного выбора. Тем самым мы фильтруем сигналы в сторону, где у нас меньше шансов на успех, повышая частоту прибыльных сделок. Здесь стоит учитывать, что нужно соблюдать баланс. Слишком жесткие фильтры, или слишком большое количество фильтров ведут к переоптимизации, что делает результаты торговли на исторических данных суперприбыльными, а в реальности убыточными. Если же выбрать недостаточную фильтрацию, то можно не реализовать весь потенциал.

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

И всегда помните, что любая самая успешная стратегия перестанет работать, но неизвестно когда, может завтра, может через год, может через 10 лет, и узнаете вы об этом только спустя какое-то время. Нужно быть к этому готовым.

Эксперт
Дмитрий Клименко
Quantitative Researcher / Algorithmic Trader
Предыдущая статья Понравилась статья? 2 Следующая статья
Комментарии: 0
Оставить комментарий
Сервис подписки в данный момент находится в завершающей стадии разработки. Регулярная отправка новостных материалов на Ваш email начнется в ближайшее время. Повторная подписка не потребуется.
Добавить еще