21 ноября 2016 QuantAlgos
В этом посте я хочу обсудить способы применения сигналов от соответствующих рыночных индексов в вашей торговле. Эти сигналы могут улучшить прибыльность вне зависимости от того, торгуете вы алгоритмически или вручную. Техника, описанная здесь, является одной из наиболее применяемых в арсенале квантов.
Начнем обсуждение с примера простой торговой системы на индексе волатильности VIX по недельным барам. Результаты такой системы приведены на графике ниже. Система обгоняет прибыльность стратегии "купил и держи" на значительную величину с профит-фактором более 3 и процентом выигрышных сделок свыше 82%. Что же здесь не так?
Во-первых, это не совсем торговая система - потому что VIX сам по себе не торгуется. Таким образом, результаты производительности чисто номинальные (соответственно отсутствуют проскальзывание и комиссия). Очень легко построить высокоприбыльную систему на индексах - так как они не являются торгуемыми продуктами, их цены часто стабильны и стремятся следовать за движением цен на соответствующих им торгуемых рынках.
Разработка данной конкретной стратегии для индекса VIX заняло у меня менее чем 10 минут и состоит всего из нескольких строк кода. Система использует простой RSI индикатор для принятия решения о покупке или продаже. Я оптимизировал параметры индикатора (отдельно для длинных и коротких позиций) за период до 2012 года и протестировал систему вне выборки на данных за 2013-2016 год :
inputs:
Price( Close ) ,
Length( 14 ) ,
OverSold( 30 ) ;
variables:
RSIValue( 0 );
RSIValue = RSI( Price, Length );
if CurrentBar > 1 and RSIValue crosses over OverSold then
Buy ( !( “RsiLE” ) ) next bar at market;
Система на дневках, которую я создал для S&P Index, немногим более сложная, чем на VIX, и показывает следующие результаты:
Использование индексных торговых систем
Как мы уже видели, довольно легко сделать прибыльную торговую систему для индексов. Но если они не торгуются, в чем же смысл?
Может возникнуть идея использовать сигналы, генерируемые индексной стратегией для торговли на соответствующих рынках, например фьючерсах на VIX и еMini. Но такой подход обречен на провал. Цены индексов отстают от цен на эквивалентных фьючерсах, так как трейдеры в первую очередь именно там монетизируют свой взгляд на рынок. Так что использование индексной системы напрямую для торговли на рынке фьючерсов похоже на попытку торговли по ценам, отстающим на несколько секунд, или даже минут - это путь к потере денег.
Вряд ли возможно стратегию, созданную для индексов, распространить на торгуемые рынки. Я имею в виду, что если вы возьмете систему, такую как VIX RSI, и перенесете ее на фьючерсы VIX, оптимизируете параметры с надеждой создать прибыльную систему, вас ждет разочарование. Как я уже показал, вы можете создать прибыльную стратегию на индексах, используя простейшие и устаревшие торговые методики ( как индикатор RSI), которые уже давно потеряли предсказательную способность на торгуемых рынках. Индексные рынки действительно неэффективны - цены индексов часто не отражают всю поступающую информацию немедленно. Такие простые неэфективности могут быть легко выявлены такими индикаторами, как, например, скользящая средняя. Торгуемые рынки, с другой стороны, высоко эффективны и, за исключением HFT, требуют гораздо более сложных конструкций, чем скользящая средняя, для использования тех немногих неэффективностей, что на них возникают.
Лучше представлять индексы не в смысле торговли ими, а как о средних, предоставляющих некоторое руководство об общем состоянии рынка и наиболее вероятном направлении на длительном промежутке времени. Если взять VIX в качестве примера, то можно увидеть, что каждая "сделка" длится несколько недель. Так что можно интерпретировать сигнал на покупку от торговой стратегии на VIX как индикатор, что волатилность будет расти один или два следующих месяца. Трейдер может использовать эту информацию для добавления веса в сорону покупки волатильности, например просто избегая коротких позиций по волатильности в следующие несколько недель. Следование этому указанию могло бы существенно помочь многим трейдерам в период снижения рынка в августе 2015, в качестве примера:
Модель на S&P Index одна из тех, что я использую как рекомендацию по сотоянию рынка для текущего торгового дня. Это полезный индикатор для понимания, насколько агрессивной должна быть моя торговая модель в предстоящей сессии. Если индексная модель предполагает позитивный фон для рынка, когда затухает волатильность, я могу занимать позицию более агрессивно. Если же модель входит в короткую позицию , я стараюсь быть более осторожным. Например, 16 мая 2016 года индексная модель вошла в длинную позицию, подтверждая позитивную тенденцию на рынке, и сподвигла меня торговать волатильностью вкороткую более активно.
В целом, я классифицирую индексную торговую модель как инструмент "поддержки решения", который позволяет дать оценку скрытой тенденции на рынке, или для калибровки торговых систем к текущим условиям на рынке. Тем не менее такой инструмент можеть быть использован и более прямо, непосредственно в боевой торговле. Например, одна из наших систем торговлей волатильностью применяет торговые сигналы из модели, созданой для индекса VVIX (волатильность волатильности). Другое применение состоит в использовании сигналов из индексной системы для определения режима рынка в модели переключения режимов.
Создание индексной торговой системы
В то время, как прибыльность является основным критерием при создании обычной торговой системы, для индексной модели существуют другие, не менее важные критерии.
Очевидно, учитывая сказанное ранее, что мы хотим создать индексную модель, которая торгует менее часто, чем система, участвующая в боевых торгах: если это свинг-торговля eMini на дневных барах, то ей не помогут 50 сигналов внутри дня индексной системы. То, что нужно - это индикация движения рынка на следующие несколько дней в положительную или отрицательную сторону. Это предполагает, обычно, что нужно делать индексную систему на барах длительностью не менее, чем в боевой системе.
Другой путь замедлить сигналы с индексной системы - это сделать ее с очень высокой вероятностью выигрыша - 70% или более. Это достаточно легко сделать - у меня есть системы на дневных барах с такой вероятностью более 90%. Трюк в том, что вы можете ждать достаточно долгое время для того, чтобы сделка стала прибыльной. Для рабочей системы это часто может быть проблемой - никто не любит держать проигрышные позиции дни или недели. Но для индексной системы это гораздо менее значимо : так как вам нужны торговые сигналы с большей длительностью, чем интервал торговли в боевой системе.
Так как индексная модель не торгует по-настоящему, то комиссия и проскальзывания, конечно, не учитываются. Преимущество здесь в том, что концепция такой модели может не быть выгодна экономически в реальном мире, но работать идеально в эмулируемой торговле индексом. Недостатком может быть желание создать индексную систему с высокой частотой сделок. Таким образом, даже если затрат нет, вы можете их внедрить в систему для уменьшения частоты торговли и получения преимуществ более медленных сигналов.
Создание индексных систем это область, в которой алгоритмы генетического программирования имеют превосходство. Есть две основных причины для этого. Во-первых, как ранее упоминалось, простые технические индикаторы, применяемые в моделях генетического программирования, хорошо работают на индексных рынках. Вторая, и более важная причина в том, что вы можете использовать генетическое программирование для создания системы, отвечающей необходимым критериям, таким как процент прибыльных сделок, частота сделок и т.п.
Прекрасный продукт, который можно рекомендовать для создания таких систем -это Adaptive Builder Майка Брайанта. Это продукт, чья мощь и простота применения отражает инженерную подготовку Майка и его опыт в создании моделей.
Начнем обсуждение с примера простой торговой системы на индексе волатильности VIX по недельным барам. Результаты такой системы приведены на графике ниже. Система обгоняет прибыльность стратегии "купил и держи" на значительную величину с профит-фактором более 3 и процентом выигрышных сделок свыше 82%. Что же здесь не так?
Во-первых, это не совсем торговая система - потому что VIX сам по себе не торгуется. Таким образом, результаты производительности чисто номинальные (соответственно отсутствуют проскальзывание и комиссия). Очень легко построить высокоприбыльную систему на индексах - так как они не являются торгуемыми продуктами, их цены часто стабильны и стремятся следовать за движением цен на соответствующих им торгуемых рынках.
Разработка данной конкретной стратегии для индекса VIX заняло у меня менее чем 10 минут и состоит всего из нескольких строк кода. Система использует простой RSI индикатор для принятия решения о покупке или продаже. Я оптимизировал параметры индикатора (отдельно для длинных и коротких позиций) за период до 2012 года и протестировал систему вне выборки на данных за 2013-2016 год :
inputs:
Price( Close ) ,
Length( 14 ) ,
OverSold( 30 ) ;
variables:
RSIValue( 0 );
RSIValue = RSI( Price, Length );
if CurrentBar > 1 and RSIValue crosses over OverSold then
Buy ( !( “RsiLE” ) ) next bar at market;
Система на дневках, которую я создал для S&P Index, немногим более сложная, чем на VIX, и показывает следующие результаты:
Использование индексных торговых систем
Как мы уже видели, довольно легко сделать прибыльную торговую систему для индексов. Но если они не торгуются, в чем же смысл?
Может возникнуть идея использовать сигналы, генерируемые индексной стратегией для торговли на соответствующих рынках, например фьючерсах на VIX и еMini. Но такой подход обречен на провал. Цены индексов отстают от цен на эквивалентных фьючерсах, так как трейдеры в первую очередь именно там монетизируют свой взгляд на рынок. Так что использование индексной системы напрямую для торговли на рынке фьючерсов похоже на попытку торговли по ценам, отстающим на несколько секунд, или даже минут - это путь к потере денег.
Вряд ли возможно стратегию, созданную для индексов, распространить на торгуемые рынки. Я имею в виду, что если вы возьмете систему, такую как VIX RSI, и перенесете ее на фьючерсы VIX, оптимизируете параметры с надеждой создать прибыльную систему, вас ждет разочарование. Как я уже показал, вы можете создать прибыльную стратегию на индексах, используя простейшие и устаревшие торговые методики ( как индикатор RSI), которые уже давно потеряли предсказательную способность на торгуемых рынках. Индексные рынки действительно неэффективны - цены индексов часто не отражают всю поступающую информацию немедленно. Такие простые неэфективности могут быть легко выявлены такими индикаторами, как, например, скользящая средняя. Торгуемые рынки, с другой стороны, высоко эффективны и, за исключением HFT, требуют гораздо более сложных конструкций, чем скользящая средняя, для использования тех немногих неэффективностей, что на них возникают.
Лучше представлять индексы не в смысле торговли ими, а как о средних, предоставляющих некоторое руководство об общем состоянии рынка и наиболее вероятном направлении на длительном промежутке времени. Если взять VIX в качестве примера, то можно увидеть, что каждая "сделка" длится несколько недель. Так что можно интерпретировать сигнал на покупку от торговой стратегии на VIX как индикатор, что волатилность будет расти один или два следующих месяца. Трейдер может использовать эту информацию для добавления веса в сорону покупки волатильности, например просто избегая коротких позиций по волатильности в следующие несколько недель. Следование этому указанию могло бы существенно помочь многим трейдерам в период снижения рынка в августе 2015, в качестве примера:
Модель на S&P Index одна из тех, что я использую как рекомендацию по сотоянию рынка для текущего торгового дня. Это полезный индикатор для понимания, насколько агрессивной должна быть моя торговая модель в предстоящей сессии. Если индексная модель предполагает позитивный фон для рынка, когда затухает волатильность, я могу занимать позицию более агрессивно. Если же модель входит в короткую позицию , я стараюсь быть более осторожным. Например, 16 мая 2016 года индексная модель вошла в длинную позицию, подтверждая позитивную тенденцию на рынке, и сподвигла меня торговать волатильностью вкороткую более активно.
В целом, я классифицирую индексную торговую модель как инструмент "поддержки решения", который позволяет дать оценку скрытой тенденции на рынке, или для калибровки торговых систем к текущим условиям на рынке. Тем не менее такой инструмент можеть быть использован и более прямо, непосредственно в боевой торговле. Например, одна из наших систем торговлей волатильностью применяет торговые сигналы из модели, созданой для индекса VVIX (волатильность волатильности). Другое применение состоит в использовании сигналов из индексной системы для определения режима рынка в модели переключения режимов.
Создание индексной торговой системы
В то время, как прибыльность является основным критерием при создании обычной торговой системы, для индексной модели существуют другие, не менее важные критерии.
Очевидно, учитывая сказанное ранее, что мы хотим создать индексную модель, которая торгует менее часто, чем система, участвующая в боевых торгах: если это свинг-торговля eMini на дневных барах, то ей не помогут 50 сигналов внутри дня индексной системы. То, что нужно - это индикация движения рынка на следующие несколько дней в положительную или отрицательную сторону. Это предполагает, обычно, что нужно делать индексную систему на барах длительностью не менее, чем в боевой системе.
Другой путь замедлить сигналы с индексной системы - это сделать ее с очень высокой вероятностью выигрыша - 70% или более. Это достаточно легко сделать - у меня есть системы на дневных барах с такой вероятностью более 90%. Трюк в том, что вы можете ждать достаточно долгое время для того, чтобы сделка стала прибыльной. Для рабочей системы это часто может быть проблемой - никто не любит держать проигрышные позиции дни или недели. Но для индексной системы это гораздо менее значимо : так как вам нужны торговые сигналы с большей длительностью, чем интервал торговли в боевой системе.
Так как индексная модель не торгует по-настоящему, то комиссия и проскальзывания, конечно, не учитываются. Преимущество здесь в том, что концепция такой модели может не быть выгодна экономически в реальном мире, но работать идеально в эмулируемой торговле индексом. Недостатком может быть желание создать индексную систему с высокой частотой сделок. Таким образом, даже если затрат нет, вы можете их внедрить в систему для уменьшения частоты торговли и получения преимуществ более медленных сигналов.
Создание индексных систем это область, в которой алгоритмы генетического программирования имеют превосходство. Есть две основных причины для этого. Во-первых, как ранее упоминалось, простые технические индикаторы, применяемые в моделях генетического программирования, хорошо работают на индексных рынках. Вторая, и более важная причина в том, что вы можете использовать генетическое программирование для создания системы, отвечающей необходимым критериям, таким как процент прибыльных сделок, частота сделок и т.п.
Прекрасный продукт, который можно рекомендовать для создания таких систем -это Adaptive Builder Майка Брайанта. Это продукт, чья мощь и простота применения отражает инженерную подготовку Майка и его опыт в создании моделей.
http://www.quantalgos.ru/ Источник
Не является индивидуальной инвестиционной рекомендацией | При копировании ссылка обязательна | Нашли ошибку - выделить и нажать Ctrl+Enter | Жалоба