Добрый день!
В очередной раз выкладываю одну из своих разработок, на сей раз в области парного трейдинга. Потратил немало времени на изучение данной тематики и проработал множество вариантов по реализации стратегий. В интернете в открытом доступе лежит достаточно материалов, исследований в этой области, но не нашел ничего, что бы в итоге помогло получить конечный алгоритм с качественными параметрами .
Начну с исследования поведения спрэда инструментов с высокой степенью корреляции. На РФР существует множество инструментов с высокой корреляцией поведения цены, такие как Сбербанк и ВТБ, Газпром и Лукойл, Сбербанк и Сбербанк п, и многие другие. Для конкретики возьмем одну пару фьючерсов со средней степенью корреляции >0.5 Сбербанк и ВТБ.
На картинке изображен характерный участок спрэда этих инструментов (Close(SBRF)/Сlose(VTB)).
Как видно, он имеет ярко выраженный трендовый характер, а именно если Сбербанк растет сильнее ВТБ, то эта тенденция продолжается длительное время. Поэтому рассматривать стратегии на расхождение/ схождение спреда относительно своей средней не будем, т.к. данные стратегии не устойчивы в долгосрочном плане. Это касается многих инструментов на РФ.
Было проведено множество тестов с целью отделения направленной составляющей от флэтовой и спроектирован алгоритм по покупке /продаже спрэда. А именно при росте спрэда покупаем SBRF, продаем VTB. И при падении спрэда продаем SBRF, покупаем VTB. В качестве идентификации тренда использовал прорывы канала, прорывы волатильности, средние. На примере рассмотрим быструю и медленную SMA.
Для полностью автоматической торговли и тестирования все реализовано на C# под ТСлаб.
Так же очень важно автоматическое выравнивание позиции. Не буду приводить сложные конструкции, выравнивание позиции на коррекциях и т.п. Реализован пересчет на каждый день коэффициента объема, т.е в момент открытия биржи (10.00 мск) расчитывается Close(SBRF)/Сlose(VTB) и умножается на объемы соответствующих бумаг. Например, Close(SBRF)/Сlose(VTB)=1,7 , то 10к Сбербанка=17 к ВТБ.
На картинке пример сделки покупки спрэда.
После выравнивания позиции получаем эквити (сырой вариант)
Доход составил 51415п, если принять ГО по торговому кол-ву бумаг + запас по просадке получаем 50000р. Т.е за 3 года доходность 100%, но этот вариант не пригоден к торговле, абы имеет не качественные параметры. Но доработанный алгоритм (фильтрация флэтовой динамики, введение времени по удержании позиции и т.п) + портфель из пар инструментов может давать довольно не плохие результаты.
Могу поделиться кодом данного алгоритма, либо у кого-то будут идеи по доработке.
Вопросы на почту vanilov83@mail.ru
Так же выкладываю свои качественные разработки на площадки для аренды биржевых роботов
www.algolaba.com
а обычные спекуляции, как с обычным активом
выкинтье это в мусорку и ищите дальше
«Здесь рыбы нет! ...» :-)
парный трейдинг, как разновидность арбитража — это когда у вас колебания синтезированного инструмента принципиально отличаются от колебаний обычного актива, когда в нем стохастики на порядки больше относительно трендов — тогда торговля контр-трендовая имеет смысл, а иначе это в точности такие же направленные спекуляции (ко-трендовые и контр-трендовые)
по своему опыту скажу что корелляцию лучше брать в пределах 0,7-0,9 (если больше, то столкнёшься с биржевыми роботами — это их хлеб) и обязательный параметр — коинтеграция за последние 1-3 месяца (больше 60%). А так же надо смотреть на величину спрэда, чтобы не попасть на комиссиях.
С высокочастотниками соревноваться бесполезно, ну а 1 сделку в день по инструменту — здесь проблем не будет и супержелеза с навороченым софтом тоже не нужно.
Вообще любой биржевой временной ряд не стационарен по определению, но можно выявить такие точки в некоторых местах. Задача, мягко говоря, не тривиальная.