В этой статье я хочу рассказать об одной стратегии парного трейдинга и торговом роботе MultiConnect с помощью которого наши друзья и партнеры «ФК Викинг» активно торгуют арбитражные стратегии на Санкт-Петербургской Бирже.
Парный трейдинг и статистический арбитраж зародился в Америке в шестидесятых годах прошлого века, сначала такой принцип торговли был доступен ограниченному кругу трейдеров, пришедших в этот бизнес с кафедр математических университетов. С помощью статарбитража сколачивались огромные состояния, открывались транснациональные хедж фонды. Во многом электронная биржевая торговля, какой мы видим ее сейчас, обязана статистическому арбитражу. Об этих временах и нравах на Уолл-стрит, о зарождении, взлетах и падениях некоторых хеджфондов очень интересно написал Скотт Паттерсон в своей книге «Кванты» https://smart-lab.ru/books/kvanty-patterson/.
В основе нашей стратегии также лежит идея торговли акциями друг против друга – т.е. когда мы покупаем одну компанию, одновременно продаем другую, торгуем спред акций. По сути, создается синтетический инструмент, который менее подвержен трендовым движениям, стремится к паритету. Были отобраны акции одного сектора, банковского – JP MorganChase (JPM) и Bank of Amerika (BAC). Компании фундаментально схожи между собой, два крупнейших банка, воздействие на сектор вызывает движение в обеих бумагах, что обеспечивает приемлемые риски, но при этом мы ловим расхождения в цене, вызванные факторами, воздействующими лишь на одну из компаний или рыночными неэффективностями. При этом есть одна интересная идея – торговать через Санкт-Петербургскую Биржу, где торги начинаются с 10 утра по Москве и продолжаются до закрытия постмаркета в Америке. Это позволяет ловить ценовые неэффективности до того, как подключатся американские «коллеги» — зачастую утром выходит отчетность и появляются новости, напрямую влияющие как на отдельно взятую компанию, так и на весь рынок в целом. Комиссии на СПБирже более чем конкурентны: 0.01 процент от суммы сделки, что дает возможность торговать пары акций с небольшим шагом спреда между этими бумагами.
Взято соотношение 1 к 3 – по стоимости компаний JPM/BAC на сентябрь 2018. Бумаги среди прочих топ-500 американских акций торгуются на СПБирже. Поведение пары можно проверить с помощью сервиса www.pairtradinglab.com, описание сервиса https://smart-lab.ru/blog/460762.php
Пара вполне подходит для нашей стратегии.
Специалисты «ФК Викинг» проводили тестирование с помощью своего специализированного ПО «Viking strategy tester», программа позволяет на высокоточных исторических данных смоделировать поведение стратегии, подобрать приемлемые параметры для торговли, оценить риски. Была создана модель торговли спреда между JPM и BAC, т.е. торгуем этот спред как один инструмент, набирая позицию дешевле и постепенно раздавая дороже. Робот MultiConnect имеет исчерпывающий спектр настроек для различных стратегий маркетмейкинга как по одной бумаге, так и по корзинам бумаг. Серверная, торговая часть робота находится в дата-центре НП РТС. Торговать с помощью робота можно на различных скоростях, при этом важна скорость получения и обработки данных, чтобы отработать возникающие рыночные неэффективности, в том числе и на резких движениях — поднять деньги первым. Запустили две версии – одну с более крупным шагом, вторую по более оптимизированным на истории настройкам. Набор у каждой версии алгоритма или же портфеля по четыре входа в каждую сторону, чтобы позиция не «давила» при расхождении спреда. Комиссии учтены 0,02% от сделки – биржа + брокер.
Подробнее в кабинете инвестора https://investcab.ru/ru/algotrading/internet-trading/MultiConnect/
Примерный диапазон частоты торговли – несколько сделок в день, использован принцип возврата спреда к среднему с различными коэффициентами набора и раздачи позиции. Торговля ведется стандартным лотом 100 акций. Стоит на этом остановиться подробнее. Биржа рекомендует активным трейдерам в период дополнительной ликвидности (с начала американского премаркета до окончания торгов) торговать полными лотами. Эта рекомендация вызвана особенностями американского биржевого законодательства – считается, что неполными лотами торгует небогатый инвестор, управляя своим портфелем бумаг, при этом он совершает мало сделок. Активная внутридневная торговля клиента неполными лотами вызывает у регулятора подозрения в манипулировании рынком и, как следствие вопросы регулятора к Бирже. Этот неофициальный «порог» составляет примерно 100 заявок с неполными лотами в день на американских торгах. До периода дополнительной ликвидности (сейчас это 14-30 по Москве), Вы можете подавать практически неограниченное количество заявок с неполными лотами – на Санкт-Петербургской Бирже ограничений к торговле неполными лотами нет.
За прошедший месяц стратегии заработали – 1850 долларов базовая (JPM_BAC) и 550 долларов более оптимизированная (JPM_BAC_OPTIM). Вчера оба портфеля обнулили свои позиции, сегодня запускаем заново, взято соотношение 1 к 4 – по стоимости компаний JPM/BAC на сегодня. Отчеты с результатами торговли этих портфелей буду выкладывать в этом разделе. В следующем своем посте подробнее расскажу о настройках и возможностях арбитражного робота MultiConnect и принципах построения портфелей, думаю, коллеги не будут против. По интересующим Вас вопросам, связанным с алгоритмической торговлей на Санкт-Петербургской Бирже пишите мне на почту здесь или на algo@rts.ru
Насчёт «неполных лотов».
В одной из переписок биржа упомянула:
Если заявка подается после 14:30 в Период стандартной дополнительной ликвидности, она содержит одну из Инструкций: «Сводить только с Заявками дополнительной ликвидности» (доступ к американской биржевой ликвидности) или «Не сводить с Заявками дополнительной ликвидности». Заявки с первой из Инструкций исполняются в случае, если Центральный контрагент подает встречную к выставленной Заявку дополнительной ликвидности.
Также, в фикс-протоколе биржи имеется поля ExDestination и ExchangeSpecialInstructions с указанием пулов ликвидности для нового ордера
3.3. Идентификаторы пулов ликвидности
Идентификаторы пулов ликвидности могут являться значением полей ExDestination[100], LastMkt[30] и
ExchangeSpecialInstructions[1139].
0 (DEFAULT) — пул ликвидности на усмотрение торговой системы
1001 (TRADSYS) — все доступные пулы ликвидности
1000 — пул ликвидности ОАО «Санкт-Петербургская биржа»
1010 — пул ликвидности Московской биржи
1015 — исполнение на пулах ликвидности США
1016 — рыночная информация с пулов ликвидности США
1030 — пул ликвидности NYSE
1031 — пул ликвидности ARCA
1032 — пул ликвидности NASDAQ
1033 — пул ликвидности BATS
Спасибо, весьма интересно.
Базовая заработала больше чем оптимизированная)