17 ноября 2015 ITI Capital
Профессор математики Нью-Йоркского Университета и эксперт по финансовым рынкам Марко Авелланеда (Marco Avellaneda) составил презентацию, в которой рассказал о том, как с помощью алгоритмов крупные инвесторы «скрывают» свои масштабные сделки, а другие трейдеры занимаются предсказанием изменений цен акций.
В нашем сегодняшнем материале — основные моменты этой работы.
Зачем нужны алгоритмы
Алгоритмическая торговля с самого своего появления в начале 90-х годов прошлого века была инструментом крупных инвесторов и хедж-фондов. Децимализация (переход на Нью-Йоркской бирже к использованию в торговле акциями на десятичную систему — минимальный шаг цены стал равняться 1 центу, а не 1/16 доллара), технологии прямого доступа на рынок (Direct Market Access, DMA), 100% электронные биржи, снижение комиссий бирж и брокеров, появление различных биржевых площадок в США и в других странах — все это привело к взрывному росту числа трейдеров, использующих алгоритмы.
Авелланеда описывает цели использования алгоритмов в биржевой торговле следующим образом. По мнению профессора, в случае крупных институциональных инвесторов они применяются главным образом не для максимизации возможной прибыли с конкретной сделки, а для контроля рыночного риска и издержек исполнения ордера.
Проще говоря, обычно крупным инвесторам нужно совершать операции с большим объёмом акций. Часто объём сделки выше, чем рынок может «переварить» без изменения цены акции. Необходимость совершить покупку огромного количества акций приведет к изменению их цены и появлению так называемого «проскальзывания». Таким образом, исполнить весь приказ по одной цене не удастся — сначала сделки будут проходить по нужной цене, но постепенно она будет становиться все менее выгодной.
Чтобы этого избежать, необходимо разбивать крупные ордера на более мелкие, которые исполняются через интернет в течение минут, часов или дней.
Чтобы сделать это максимально выгодно, алгоритм должен контролировать среднюю стоимость акции. Оценить ее можно сравнив с рыночным «бенчмарком» — глобальной средней ценой за день, ценой закрытия или открытия и т.п.
Но проблема определения того, как именно разбивать крупный приказ на более мелкие, является не единственной. Алгоритм также должен решить, как именно выводить ордер на рынок — в виде лимитного или рыночного приказа — и по какой цене. Необходимо добиться наилучшей цены для каждого такого дочернего приказа.
Развитие финансовых рынков и появление новых торговых инструментов сделали эту задачу куда более сложной и интересной.
Времена, когда клиенты могли передать заявки своим брокерам только по телефону или факсу, ушли в прошлое. Сейчас существуют разные способы подключения к электронным торгам. Например, существует возможность подключения торгового робота к брокерской системе с помощью API — в таком случае приказы отправляются в брокерскую систему, а оттуда попадают на биржу (у ITinvest есть свой API-интерфейс SmartCOM).
В случае алгоритмической торговли, как правило, важна скорость работы стратегии, поэтому многие трейдеры предпочитают использовать технологию прямого доступа на рынок (direct market access, DMA — ITinvest предоставляет такой доступ к российским и зарубежным биржам). В случае ее применения торговый робот взаимодействует напрямую с торговой системой биржи, минуя систему брокера, что позволяет выиграть время.
Но это далеко не самый сложный вариант торговли. Появление большого количества различных торговых площадок привело к развитию алгоритмов «умной маршрутизации» приказов — такие системы не только пытаются совершать самые выгодные сделки на конкретной бирже, но еще и анализируют, на какой из доступных площадок в настоящий момент условия лучше, чтобы направить приказ именно туда.
Таким образом, существует три уровня развития современных алгоритмов.
Алгоритмы макротрейдинга — определяют торговую стратегию;
Алгоритмы микротрейдинга — собственно, торговые «движки» выставления ордеров;
Алгоритмы умной маршрутизации — в случае, если работа ведется на нескольких биржах одновременно.
Примеры торговых алгоритмов
Существует несколько типов алгоритмических стратегий. Один из них — экзекьюшн-стратегии, которые направлены на решение задачи покупки или продажи большого объёма финансового инструмента (например, акций) с минимальным отклонением итоговой средневзвешенной цены сделки от текущей рыночной цены.
Примерами алгоритмов, решающих эту задачу являются алгоритмы TWAP и VWAP.
Алгоритм TWAP
Использование TWAP (Tie Weighted Average Price — взвешенная по времени средняя цена) подразумевает равномерное исполнение приказа на покупку или продажу за заданное число итераций в течение заданного промежутка времени. Для этого постоянно выставляются маркет-заявки по ценам лучшего спроса или предложения, скорректированные на заданную величину процентного отклонения.
Например, покупка 100 тысяч акций в течение дня может выглядеть так (используются пятиминутные последовательные интервалы):
Алгоритм VWAP
VWAP (Volume weighted average price — взвешенная по объёму средняя цена) работает по следующей схеме. Объём торгов, как правило выше в начале и конце торговой сессии, а в ее середине он меньше. Чтобы исполнить крупный ордер с минимальными издержками, он разбивается на более мелкие приказы с учетом времени дня.
Для этого:
Алгоритм оценивает средний объём торгов на пятиминутных интервалах.
В рамках каждого интервала проводятся сделки на количество инструмента, пропорциональное нормативному объёму.
К свойствам этого алгоритма относится завершенность (размеры сделок всегда известны заранее), а также использование для оценки функции объёма исторических данных.
Процент объёма (POV)
Алгоритм Percentage of Volume (POV) решает ту же проблему, что и VWAP, но с использованием в качестве бенчмарка информации об объёме торгов в конкретный текущий день. Идея заключается в том, чтобы иметь постоянный процент участия в торгах на протяжении выбранного периода.
Если нужно «проторговать» еще акции объёма Q, а «коэффициент участия» в торгах γ, то алгоритм вычисляет объём торгов V, проторгованный в период (t – ΔT, t) и исполнит ордера на количество финансового инструмента q = min(Q,V* γ).
V(t) = общий объём торгов, имевший место на рынке к моменту времени t;
Q(t) = число акций, которое еще нужно купить/продать ( Q(0) = начальное количество).
В итоге:
Как еще используются алгоритмы
Помимо экзекьюшн-стратегий, существует и целый ряд стратегий, направленных на извлечение прибыли с помощью других моделей. Вот некоторые из них:
Арбитражные стратегии — подмножество стратегий парного трейдинга, которые основаны на анализе соотношений цен двух высоко коррелированных между собой финансовых инструмента. В случае арбитража, такая пара состоит из одинаковых или связанных активов, корреляция которых близка к единице — например, акций одной и той же компании на разных биржах. Для успешной торговли в рамках арбитражных стратегий критически важна скорость получения данных и выставления/изменения заявок на покупку или продажу.
Предоставление ликвидности (маркет-мейкинг) — маркетмейкинг предполагает поддержание спредов на покупку и продажу финансового инструмента. Маркетмейкеры являются основными поставщиками моментальной ликвидности, поэтому биржи часто привлекают их к работе с неликвидными инструментами с помощью предоставления льготных условий.
Предсказание цены — стратегии, которые анализируют различные данные (в том числе с помощью индикаторов технического анализа) для построения гипотез о том, в какую сторону может двинуться цена финансового инструмента в заданный промежуток времени.
Предсказание цен в высокочастотной торговле
Для того, чтобы «предсказать» движение цены, алгоритм должен смоделировать скрытую ликвидность рынка при данной ликвидности заявок на покупку и продажу. «Истощение» очереди заявок на покупку или продажу может свидетельствовать о скором движении цены.
Изменение цены возникает, когда на одном из уровней цены исчезают все заявки на покупку или продажу, и существует следующий уровень цен бид и аск.
Вероятность того, что очередь заявок аск истощится ранее, чем очередь заявок бид, высчитывается так:
Итоговая формула вероятности повышения цены:
, где H — скрытая ликвидность рынка, то есть сделки, которые неизвестны широкой общественности (например, сделки крупных финансовых организаций, которые заключаются за пределами бирж).
Процедура оценки выглядит следующим образом:
На первом этапе собранные данные разделяются по биржам, за один раз анализируется один торговый день;
Котировки значений бид и аск компонуются по децилям. Для каждого такого набора (i,j) вычисляется частота повышения цены u_ij.
Подсчитывается число появлений каждой величины d_ij.
Производится анализ соответствия модели с помощью метода наименьших квадратов:
Заключение
На многих фондовых площадках (например, в США и России) оборот алгоритмической торговли уже довольно давно составляет более 50%. При этом часто алгоритмы используются не только для того, чтобы «опередить» конкурентов в скорости совершения транзакций и заработать на этом.
Крупные игроки могут применять этот инструмент для того, чтобы разбивать крупные сделки на более мелкие, которые позволяют осуществить операцию с заданным количеством финансового инструмента, не сдвигая его рыночную цену в ту или иную сторону. Для этого используются алгоритмы TWAP, VWAP и PoV.
Кроме того, алгоритмы используются для реализации «квантовых стратегий», таких как, арбитраж или маркетмейкинг. Помимо этого, существуют возможности по подсчету вероятности изменения цены конкретных финансовых инструментов.
https://iticapital.ru/ (C) Источник
Не является индивидуальной инвестиционной рекомендацией | При копировании ссылка обязательна | Нашли ошибку - выделить и нажать Ctrl+Enter | Отправить жалобу