Алгоритмическая торговля на фондовом рынке. Алгоритмическая торговля. Научный подход. Зачем нужны алгоритмы

Главный технологический тренд мирового фондового рынка последних лет – бурное развитие так называемой алгоритмической, или высокоскоростной торговли. Теперь на биржах соревнуются не люди, а торговые роботы, совершающие сотни и тысячи операций за одну торговую сессию. Как обычно, зародившись на Западе, этот тренд уже добрался и до России – алгоритмических торговцев на Московской бирже стало очень много. Сегодня мы поговорим о перспективах развития данной области в нашей стране.

Высокочастотный трейдинг

Начнем с того, что определимся с тем, кто вообще такие высокоскоростные торговцы (HFT-трейдеры- от HightFrequenceyTrading) и каково их место в экосистеме фондового рынка . На любой бирже встречаются несколько типов торговцев:
  • Прежде всего – это инвесторы , которые совершают долгосрочные операции – покупают акции тех или иных предприятиях, основываясь на глубоком анализе их деятельности, и чья цель может вовсе не заключаться в продаже этих бумаг. Существует и отдельный подвид – так называемые краткосрочные инвесторы , «длительность» сделок которых лежит в диапазоне от недели до месяца.
  • Спекулянты и дей-трейдеры , которые совершают операции с ценными бумагами именно для того, чтобы заработать на разнице цен между покупкой/ продажей и короткой продажей/откупом. Их сделки носят среднесрочный характер.
  • Скальперы – это тип торговцев, которые совершают множество сделок в течение небольшого временного промежутка от нескольких секунд до пары минут. Прибыль от каждой такой операции, как правило, не очень большая, так что доход складывается из множества транзакций.
  • Собственно, HFT-трейдеры , которые создают торговых роботов, действующих по определенным алгоритмам.

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

По идее данная схема представляет собой «кормовую цепочку», т.е. для краткосрочных инвесторов источником денег случат инвесторы, краткосрочные инвесторы – для спекулянтов и дей-трейдеров и так далее. Это верно в случае, если рынок устроен правильно и на нем присутствуют в верных пропорциях все перечисленные группы торговцев.

Стабильный, устойчивый рынок всегда фрактален – рядом с более крупными участниками всегда есть более мелкие, которые работают и с меньшими объемами средств и на меньших временных промежутках (таймфреймах), но совершают большее количество сделок, так что их оборот, в целом, даже может превосходить обороты крупных инвесторов. В конце этой цепочки находятся HFT-трейдеры.

Текущая ситуация

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

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

* Данные за каждый год соответствуют октябрю т.е. каждый год представлен данными за октябрь

Если судить даже по нашим собственным данным – развитие алгоритмической торговли налицо. За три года (2010 - 2013) доля алгоритмического оборота клиентов выросла на 15%, а текущий алгоритмический оборот на срочном рынке составляет порядка 60%.

К чему это ведет?

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

В целом, цикл развития HFT-торговли характеризуется следующей схемой:

  1. Увеличилось число HFT-трейдеров.
  2. Это привело к росту мгновенной ликвидности и эффективности рынка.
  3. Мгновенная ликвидность повлекла снижение доходности операций HFT-торговцев.
  4. Как результат – выросли их расходы, которые вообще имеют тенденцию только расти, и становиться многим просто не по карману. В результате некоторые торговцы уходят с рынка или переориентируют свои стратегии. А общее число HFT-трейдеров сокращается. Сейчас мы как раз находимся в этой точке.
  5. Все это приводит к снижению ликвидности и эффективности рынка, которая вызывает увеличение числа HFT-трейдеров, и все начинается заново.

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

Доходность

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

Yildness= F(R, Fees, Liquidity, Bid – Ask, Size, Hurst, Leverage) , где

  • R – безрисковая ставка, действующая на рынке. Чем больше эта ставка, тем доходность будет выше.
  • Fees – размер комиссии брокера и биржи. От этого показателя, как и от безрисковой ставки, доходность зависит обратным образом..
  • Liquidity – ликвидность. С одной стороны – чем она выше, тем доходность ниже. С другой стороны – при низкой ликвидности рассчитывать на высокую доходность также не приходится. Это значит, что HFT-трейдерам нужно находить золотую середину и не бросаться на чересчур ликвидные, или наоборот крайне непопулярные бумаги и биржевые инструменты.
  • Bid/Askспред – цена продажи финансового инструмента, а Ask–цена продажи.
  • Size – размер торгового лота.
  • Hurst – показатель фрактальности рынка Херста.
  • Leverage – брокерское плечо, которое трейдер может получить для реализации своей стратегии.

Быстродействие

Даже самая удачная скоростная алгоритмическая стратегия не может быть полностью реализована без высокой скорости исполнения транзакций. То есть быстродействие для HFT-трейдеров играет ключевую роль.

И здесь динамика вырисовывается вполне очевидная. Для начал взглянем на время исполнения ордеров (latency), которое существовало на зарубежных и отечественных биржевых площадках в 2010 году.

*ASTS – фондовый рынок ММВБ, а FORTS–РТС, которые позднее объединились в Московскую биржу.

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

Биржи все прошедшие годы инвестировали значительные средства в инфраструктуру, которая позволила бы снизить время обработки клиентских заявок. К примеру, затраты на обновление торговой системы Singapore Exchange в 2010-2011 гг., позволившие сократить скорость обработки ордера с 16 ms до 90 mks, составили $250 млн.

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

В результате, в 2013 году (данные на весну-лето) ситуация изменилась довольно существенным образом:

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

Развитие торговых систем Московской биржи продолжается довольно быстрыми темпами, и уже в декабре этого года время исполнения заявок удалось довести до 50 микросекунд на ASTS и 35 в системе Spectra (Forts).

Выводы

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

P. S. Текст подготовлен на записи доклада, сделанного председателем правления ITinvest Владимиром Твардовским на

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

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

Майкл Халлс-Мур, эксперт по Quantitative trading (цитата из поста в блоге)

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

По роду занятий я читаю довольно специфическую литературу, в основном, связанную со сложными моделями математической статистики. А поскольку в РФ эта тема не очень развита, то литература моя, в основном, на английском.

Из более «популярных» по жанру книг читал «Долгосрочные секреты краткосрочной торговли », но так и не применил никакие из перечисленных там идей на практике.

Всем начинающим трейдерам (неважно, алгоритмическим, или «простым»), я бы рекомендовал почитать Нассима Талеба, особенно книгу «Одураченные случайностью » - она тонкая, но на многие вещи заставляет взглянуть по-новому.

Из того, что мне реально помогло, могу посоветовать следующие материалы:

  • методички Московской биржи по фьючерсам и опционам (

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

Эффективность алгоритмической торговли зависит не только от используемой стратегии, но и рыночных условий, настроений игроков, новостей и других переменных.

Программы, используемые для алгоритмической торговли на Форекс могут составляться самим трейдером (оптимальный вариант) или другими людьми. Обычно это советники, которые устанавливаются в торговый терминал MT4.

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

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

Рисунок 1. На Форекс алготрейдинг чаще всего реализуется в форме советников

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

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

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

Потом алгоритмическая торговля стала усложняться, программы стали обновляться. Но даже сейчас она неидеальна. Например, в 2012 году компания Knight Capital потеряла 460 миллионов долларов после ошибки компьютера. На следующий день она объявила о банкротстве. Так что использовать советников нужно осторожно.

Алгоритмическая торговля может осуществляться и на VPS-сервере. Преимущества очевидны: торговля может осуществляться в режиме 24/5, проскальзывания минимальны за счет физически близкого нахождения сервера к мощностям брокера, предоставляющего эту услугу, а также нет привязки к месту торговли. Вы можете изменить настройки советника или выключить его, где бы вы ни находились.

Количественный трейдинг

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

Все, что они пытаются сделать – это создать идеальную математическую модель, которая поможет описать все происходящее на финансовых рынках и предсказать движения котировок.

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

А вот с техническим анализом робот справится значительно лучше. Он сможет параллельно проанализировать тысячи активов, основываясь на сотнях индикаторах, свечных паттернах, и графических фигурах (которые тоже можно свести к числовым закономерностям).

В широком смысле количественный трейдер – это тот человек, который совершенствует технический анализ (математики и экономисты) или разрабатывает алгоритмы, в основе которых лежат созданные первыми модели.

Классификация стратегий алгоритмического трейдинга

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

Стратегии маркетмейкинга

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

Их задача – усредняться. То есть, увеличивать объем сделок при появлении убыточной позиции, дожидаясь, что она откатится назад после достижения перекупленности или перепроданности рынка. Зачем он это делает? Для обеспечения ликвидности рынка, чтобы трейдеры могли покупать и продавать. Чтобы обеспечивать такую стратегию, требуются колоссальные деньги.

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

Трендследящие

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

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

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

Арбитражные стратегии

Эти стратегии основаны на извлечении прибыли из разницы между разными биржами, коррелирующими активами, базовым активом и производным инструментом (нефтью и фьючерсом на черное золото, например).

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

Алгоритмическая торговля в арбитраже используется особенно активно, потому что необходимо очень быстро обнаруживать неэффективности рынка. Ведь при больших объемах торгов котировка выравнивается почти сразу.

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

Мартингейл

Рисунок 2. Стратегия «Мартингейл»

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

Эта стратегия пошла из казино. В ее основе лежит идея, что вероятность, что следующий бросок костей будет выигрышным, больше, чем предыдущий. В случае с ними, она оказывается такой же (1:6), но зато очень много людей повелось, и игровые дома стали зарабатывать колоссальные деньги.

На Форекс она может быть даже меньшей. Например, в случае высокой волатильности рынка. Представьте, трейдер открывает сделку на покупку. Она оказывается убыточной. Естественно, по чистому мартингейлу нужно увеличить объем где-то в 2,5 раза и открыть позицию на продажу. Но здесь настроения рынка изменились, и опять проигрыш.

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

Скальпинг

Это еще одна популярная высокорисковая стратегия, используемая в торговых роботах. Ее суть заключается в торговле на небольших трендах, имеющихся на краткосрочных таймфреймах. Максимальную эффективность показывает на волатильном рынке (например в европейскую сессию на паре EUR/USD).

Стоит ли использовать?

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

Вообще, при правильном подходе на стабильном рынке вы можете получать неплохой пассивный доход.

Обзор программ для алготрейдинга

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

MQL4 IDE

Рисунок 3. Среда разработки

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

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

Фактически это целая программная система, способная заменить все остальные приложения, необходимые для разработчика. Она включает:

  1. Собственный язык программирования.
  2. Редактор скриптов.
  3. Тестер стратегий. Незаменимый помощник в алготрейдинге, позволяющий осуществить отладку программы.
  4. Документацию. Руководство по написанию советников на MQL 4.

Рассмотрим 5 советников для торговли на валютном рынке, на случай, если вы не хотите разрабатывать собственную алгоритмизированную торговую систему.

  1. Aladdin FX. Этот советник абсолютно бесплатный, работает одновременно на нескольких валютах. Считается многими одним из лучших роботов среди бесплатных.
  2. Auto Profit. Его можно использовать для любых инструментов, в его основе заложена стратегия с минимальными рисками. Трейдер может контролировать каждый шаг, сделанный этой программой.
  3. Ilan. Эта алгоритмизированная торговая система предусматривает фиксированный тейк-профит без стоп-лосса. Стратегия основана на усреднении, поэтому для ее работы требуется большой депозит.
  4. COBRA. Основывается на скользящей средней, на определенном отступе от которой выставляется отложенный ордер. Для избавления от убыточных позиций используется мартингейл, так что будьте осторожны.
  5. GEPARD. Советник торгует на 28 валютных парах, риски хеджируются и диверсифицируются, благодаря чему они минимальные.

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

Обучение алготрейдингу

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

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

Преимущества и недостатки

Рисунок 4. Этот робот все знает о своих преимуществах и недостатках

Преимущества алгоритмической торговли:

  1. Возможность автоматизировать простейшие действия и уделить время более важным, но сложным вещам.
  2. Возможность снять психологическую нагрузку и принимать более адекватные решения. Человек может податься жадности или страху и перестать выполнять данные себе обязательства. Например, резкий откат может быть частью стратегии, но тут трейдер абсолютно глупо выходит из сделки. Робот будет действовать четко.
  3. Возможность получать пассивный доход на стабильном рынке.
  4. Возможность круглосуточной торговли.

Недостатки алготрейдинга на Форекс:

  1. Отсутствие гибкости. Если рынок резко разворачивается, робот будет заключать убыточные сделки.
  2. В алгоритме может быть ошибка, которая приведет к сливу депозита.
  3. Разработка советников – процесс трудоемкий, поскольку требуется хорошее владение навыками программирования и отличное – торговли.

Профессор математики Нью-Йоркского Университета и эксперт по финансовым рынкам Марко Авелланеда (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 - взвешенная по объёму средняя цена) работает по следующей схеме. Объём торгов, как правило выше в начале и конце торговой сессии, а в ее середине он меньше. Чтобы исполнить крупный ордер с минимальными издержками, он разбивается на более мелкие приказы с учетом времени дня.

Для этого:

  1. Алгоритм оценивает средний объём торгов на пятиминутных интервалах.
  2. В рамках каждого интервала проводятся сделки на количество инструмента, пропорциональное нормативному объёму.
К свойствам этого алгоритма относится завершенность (размеры сделок всегда известны заранее), а также использование для оценки функции объёма исторических данных.

Процент объёма (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.

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

На сегодня все, спасибо за внимание!

Алгоритм - это определенный набор четко определенных инструкций, направленных на выполнение задачи или процесса.

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

Предположим, что трейдер следует этим простым торговым критериям:

  • Покупайте 50 акций акции, когда ее 50-дневная скользящая средняя превышает 200-дневную скользящую среднюю
  • Продать акции акции когда его 50-дневная скользящая средняя идет ниже 200-дневной скользящей средней

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

[Если вы хотите узнать больше о проверенных и точных стратегиях, которые в конечном итоге могут быть обработаны в алорифмической торговой системе, ознакомьтесь с курсом «Академия онлайн-трейдеров Академии Investopedia».]

Преимущества Алгоритмическая торговля

Algo-trading предоставляет следующие преимущества:

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

Наибольшая часть сегодняшней алго-трейдинга - высокочастотная торговля (HFT), которая пытается извлечь выгоду из размещения большого количества заказов на очень быстрых скоростях на нескольких рынках и нескольких параметров решения, основанных на по предварительно запрограммированным инструкциям.(Более подробно о высокочастотной торговле см. Стратегии и секреты фирм с высокой частотой торговли (HFT) .)

Algo-trading используется во многих формах торговой и инвестиционной деятельности, в том числе:

  • Средние и долгосрочные инвесторы или покупают сторонние фирмы (пенсионные фонды, паевые инвестиционные фонды, страховые компании), которые покупают акции в больших количествах, но не хотят влиять на цены акций с помощью дискретных крупных инвестиций.
  • Участники краткосрочных торговцев и продавцов (маркет-мейкеры, спекулянты и арбитражники) выигрывают от автоматизированного осуществления торговли; Кроме того, алго-торговля помогает создать достаточную ликвидность для продавцов на рынке.
  • Систематические трейдеры (трейдеры тренда, пар трейдеры, хедж-фонды и т. Д.) Находят гораздо более эффективными для программирования своих торговых правил и позволяют программе торговать автоматически.

Алгоритмическая торговля обеспечивает более систематический подход к активной торговле, чем методы, основанные на интуиции или инстинкте трейдера.

Алгоритмические торговые стратегии

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

  • Стратегии после следующих стратегий:

Наиболее распространенные алгоритмические торговые стратегии следуют тенденциям в скользящих средних, прорывах каналов, изменениях уровня цен и соответствующих технических индикаторах. Это самые простые и простые стратегии для реализации с помощью алгоритмической торговли, поскольку эти стратегии не включают в себя прогнозы или прогнозы цен. Торги инициируются на основе появления желательных тенденций, которые легко и просто реализовать с помощью алгоритмов, не вникая в сложность интеллектуального анализа. Вышеупомянутый пример 50 и 200 дневных скользящих средних является популярной тенденцией после стратегии. (Подробнее о стратегиях трейдинга см. Ниже: Простые стратегии капитализации на тренды .)

  • Арбитражные возможности:

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

  • Рефинансирование фондового индекса :

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

  • Стратегии, основанные на математических моделях:

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

  • Торговый диапазон (средняя реверсия):

Средняя стратегия реверсии основана на идее, что высокие и низкие цены актива являются временным явлением, которое периодически возвращается к их среднему значению. Определение и определение ценового диапазона и алгоритма реализации, основанного на том, что позволяет автоматически размещать сделки, когда цена актива разрывается и выходит за пределы его определенного диапазона.

  • Средневзвешенная по объему цена (VWAP):

Стратегия взвешенной средней цены по току разбивает крупный заказ и выпускает на рынок динамически определенные мелкие куски заказа на рынке с использованием исторических профилей объема запаса. Цель состоит в том, чтобы выполнить заказ, близкий к средневзвешенной цене (VWAP), тем самым выиграв среднюю цену.

  • Средневзвешенная средняя по времени (TWAP):

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

  • Процент объема (POV):

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

  • Нехватка реализации:

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

  • Помимо обычных торговых алгоритмов:

Существует несколько специальных классов алгоритмов, которые пытаются идентифицировать «события» с другой стороны. Эти «алгоритмы обнюхивания», используемые, например, маркет-мейкером на стороне продажи, имеют встроенный интеллект, чтобы идентифицировать существование любых алгоритмов на стороне покупки большого заказа. Такое обнаружение с помощью алгоритмов поможет маркет-мейкеру определить возможности большого заказа и дать ему возможность выиграть, заполнив заказы по более высокой цене. Это иногда называют высокотехнологичным фронтом. (Более подробно о высокочастотной торговле и мошеннических методах см.: Если вы покупаете акции онлайн, вы участвуете в HFT .)

Технические требования к алгоритмической торговле

Реализация алгоритма с использованием компьютера программа - последняя часть, забитая бэктестированием. Задача состоит в том, чтобы преобразовать идентифицированную стратегию в интегрированный компьютеризированный процесс, который имеет доступ к торговому счету для размещения заказов. Требуется следующее:

  • Знания в области компьютерного программирования для программирования требуемой торговой стратегии, нанятых программистов или готового торгового программного обеспечения
  • Сетевое подключение и доступ к торговым платформам для размещения заказов
  • Доступ к каналам рыночных данных, которые будут контролируется алгоритмом для возможности размещения заказов
  • Способность и инфраструктура для проверки системы после ее сборки, прежде чем она выйдет на реальные рынки
  • Доступные исторические данные для проверки бэк-тестинга в зависимости от сложности правил, реализованных в алгоритме

AEX торгуется в евро, тогда как LSE торгуется в фунтах стерлингов

  • Из-за разницы в часах AEX открывается на час раньше, чем LSE, после чего оба биржи торгуют одновременно в течение следующих нескольких часов и затем торгуется только в LSE в течение последнего часа, когда AEX закрывается
  • Можем ли мы изучить возможность арбитражной торговли на фондовых рынках Royal Dutch Shell, перечисленных на этих двух рынках в двух разных валютах?

Требования:

  • Корреспонденты с LSE и AEX
  • Курс курса форекс для курса GBP-EUR
  • Возможность размещения заказов, которая может маршрутизировать порядок для правильного обмена
  • Возможность повторного тестирования по историческим ценовым каналам
  • Компьютерная программа должна выполнить следующее:
  • Использование доступных обменных курсов, конвертировать цену одной валюты в другую
  • Если существует достаточно большое расхождение в цене (дисконтирование брокерских расходов), что приводит к выгодной возможности, затем размещайте заказ на покупку по более низкому тарифу на продажу и продажу по более выгодному обмену > Если заказы выполняются по желанию, арбитражная прибыль будет следовать
  • Простой и простой! Однако практика алгоритмической торговли не так проста в обслуживании и исполнении. Помните, что если вы можете разместить торговлю, генерируемую алго, то и другие участники рынка. Следовательно, цены колеблются в милли- и даже микросекундах. В приведенном выше примере, что произойдет, если ваша покупка торговли будет выполнена, но продавать торговлю не так, как цены на продажу меняются к моменту поступления вашего заказа на рынок? Вы закончите сидеть с открытой позицией, делая свою арбитражную стратегию бесполезной.
  • Существуют дополнительные риски и проблемы: например, риски сбоя системы, ошибки сетевого подключения, временные задержки между торговыми ордерами и исполнением и, самое главное, несовершенные алгоритмы. Чем сложнее алгоритм, тем более строгий бэктестинг необходим, прежде чем он будет введен в действие.

Нижняя линия

Количественный анализ производительности алгоритма играет важную роль и должен быть рассмотрен критически. Увлекательно заниматься автоматизацией с помощью компьютеров с идеей легко зарабатывать деньги. Но необходимо убедиться в том, что система тщательно протестирована и требуются ограничения. Аналитическим трейдерам следует рассмотреть возможность самостоятельного изучения программ и систем построения, чтобы быть уверенными в правильном осуществлении правильных стратегий. Осторожное использование и тщательное тестирование алго-трейдинга могут создать выгодные возможности. (Подробнее см. В разделе «Как закодировать свой собственный торговый робот Algo».)

Поделиться: