Алгоритмическая торговля (также называемая автоматической торговлей, чёрным ящиком или алгоритмом торговли) использует компьютерную программу, которая следует определенному набору инструкций (алгоритму) для размещения сделки. Торговля, в теории, может генерировать прибыль со скоростью и частотой, что невозможно для человеческого трейдера.
Определенные наборы инструкций основаны на времени, цене, количестве или любой математической модели. Помимо возможностей получения прибыли для трейдера, algo-trading делает рынки более ликвидными, а торговля более систематической, исключая влияние человеческих эмоций на торговую деятельность.
Алгоритмический трейдинг на практике
Предположим, трейдер следует этим простым торговым критериям:
- Покупайте 50 акций, когда 50-дневная скользящая средняя становится выше 200-дневной скользящей средней. (Скользящее среднее - это среднее из прошлых точек данных, которое сглаживает ежедневные колебания цен и тем самым выявляет тренды.) Продавайте акции, когда 50-дневная скользящая средняя опускается ниже 200-дневной скользящей средней.
Используя эти две простые инструкции, компьютерная программа автоматически отслеживает цену акций (и индикаторы скользящей средней) и размещает ордера на покупку и продажу, когда выполняются определенные условия. Трейдеру больше не нужно отслеживать реальные цены и графики или выставлять ордера вручную. Алгоритмическая торговая система делает это автоматически, правильно идентифицируя торговые возможности.
Основы алгоритмического трейдинга
Преимущества алгоритмического трейдинга
Алго-трейдинг предоставляет следующие преимущества:
- Сделки заключаются по наилучшим возможным ценам. Размещение торговых заявок происходит мгновенно и точно (существует высокая вероятность исполнения на желаемых уровнях). Торги рассчитываются правильно и мгновенно, чтобы избежать значительных изменений цен. Снижение затрат на транзакции. Одновременные автоматические проверки на множественные рыночные условия. Сниженный риск ручных ошибок при размещении сделок. Алго-трейдинг может быть протестирован с использованием доступных исторических данных и данных в реальном времени. чтобы увидеть, является ли это жизнеспособной торговой стратегией. Уменьшается вероятность ошибок человеческих трейдеров на основе эмоциональных и психологических факторов.
Сегодня большая часть алго-трейдинга - это высокочастотная торговля (HFT), которая пытается извлечь выгоду из размещения большого количества ордеров с быстрой скоростью на нескольких рынках и множественных параметров принятия решений на основе предварительно запрограммированных инструкций.
Алго-трейдинг используется во многих формах торговой и инвестиционной деятельности, включая:
- Среднесрочные и долгосрочные инвесторы или фирмы-покупатели - пенсионные фонды, паевые инвестиционные фонды, страховые компании - используют algo-трейдинг для покупки акций в больших количествах, когда они не хотят влиять на цены акций с помощью дискретных крупных инвестиций. трейдеры и участники продаж - маркет-мейкеры (например, брокерские конторы), спекулянты и арбитражеры - выигрывают от автоматического исполнения сделок; Кроме того, алго-трейдинг помогает создать достаточную ликвидность для продавцов на рынке. Системные трейдеры - последователи тренда, хедж-фонды или парные трейдеры (нейтральная к рынку торговая стратегия, которая сочетает длинную позицию с короткой позицией в паре коррелированные инструменты, такие как две акции, торгуемые на бирже фонды (ETF) или валюты) - гораздо эффективнее программировать свои правила торговли и позволить программе торговать автоматически.
Алгоритмическая торговля обеспечивает более систематический подход к активной торговле, чем методы, основанные на интуиции или инстинкте трейдера.
Алгоритмические торговые стратегии
Любая стратегия для алгоритмической торговли требует определенной возможности, которая является выгодной с точки зрения увеличения прибыли или снижения затрат. Ниже приведены общие торговые стратегии, используемые в algo-трейдинге:
Следующие за трендом стратегии
Наиболее распространенные алгоритмические торговые стратегии следуют за тенденциями в скользящих средних, прорывах канала, движениях уровня цен и связанных технических индикаторах. Это самые простые и простые стратегии для реализации через алгоритмическую торговлю, потому что эти стратегии не предполагают никаких прогнозов или ценовых прогнозов. Торги инициируются на основе появления желательных трендов, которые легко и просто реализовать с помощью алгоритмов, не вдаваясь в сложность прогнозного анализа. Использование 50- и 200-дневных скользящих средних является популярной стратегией следования за трендом.
Арбитраж Возможности
Покупка акций с двойным списком по более низкой цене на одном рынке и одновременная продажа по более высокой цене на другом рынке предлагает разницу в цене как безрисковую прибыль или арбитраж. Одну и ту же операцию можно повторить для акций по сравнению с фьючерсными инструментами, поскольку время от времени существуют разницы в ценах. Реализация алгоритма для выявления таких различий в ценах и эффективного размещения заказов дает выгодные возможности.
Индексный фонд ребалансировки
Индексные фонды определили периоды перебалансировки, чтобы привести свои авуары в соответствие с их соответствующими базовыми индексами. Это создает выгодные возможности для алгоритмических трейдеров, которые извлекают выгоду из ожидаемых сделок, которые предлагают прибыль от 20 до 80 базисных пунктов в зависимости от количества акций в индексном фонде непосредственно перед перебалансировкой индексного фонда. Такие торги инициируются через алгоритмические торговые системы для своевременного исполнения и лучших цен.
Стратегии на основе математической модели
Проверенные математические модели, такие как дельта-нейтральная торговая стратегия, позволяют торговать на комбинации опционов и базовой ценной бумаги. (Дельта-нейтральный - это портфельная стратегия, состоящая из нескольких позиций со смещением положительных и отрицательных дельт - отношения, сравнивающего изменение цены актива, обычно рыночного актива, с соответствующим изменением цены его производного инструмента, так что в целом дельта рассматриваемых активов составляет ноль.)
Торговый диапазон (средняя реверсия)
Стратегия возврата к среднему основывается на концепции, согласно которой высокие и низкие цены актива являются временным явлением, периодически возвращающимся к их среднему значению (среднему значению). Идентификация и определение диапазона цен и реализация алгоритма на его основе позволяет автоматически размещать сделки, когда цена актива входит и выходит из своего определенного диапазона.
Средневзвешенная цена (VWAP)
Стратегия средневзвешенной по объему цены разбивает большой заказ и выпускает динамически определенные меньшие порции заказа на рынок, используя специфические для акций профили исторических объемов. Цель состоит в том, чтобы выполнить заказ, близкий к средневзвешенной цене (VWAP).
Средневзвешенная цена (TWAP)
Средневзвешенная по времени стратегия цен разбивает большой заказ и выпускает динамически определенные меньшие порции заказа на рынок, используя равномерно разделенные временные интервалы между временем начала и окончания. Цель состоит в том, чтобы выполнить ордер, близкий к средней цене между временем начала и окончания, тем самым минимизируя влияние на рынок.
Процент объема (POV)
Пока торговый ордер не будет полностью заполнен, этот алгоритм продолжает отправлять частичные ордера в соответствии с установленным коэффициентом участия и в соответствии с объемом торгов на рынках. Соответствующая «стратегия шагов» отправляет заказы с определенным пользователем процентом от объема рынка и увеличивает или уменьшает этот коэффициент участия, когда цена акций достигает определенных пользователем уровней.
Недостаток реализации
Стратегия дефицита реализации направлена на минимизацию затрат на исполнение заказа путем обмена с рынка в реальном времени, тем самым экономя на стоимости заказа и извлекая выгоду из альтернативных издержек отложенного исполнения. Стратегия будет увеличивать целевой уровень участия, когда цена акций будет благоприятно изменяться, и уменьшать его, когда цена акций будет двигаться отрицательно.
Помимо обычных торговых алгоритмов
Есть несколько специальных классов алгоритмов, которые пытаются идентифицировать «события» с другой стороны. Эти «алгоритмы сниффинга», используемые, например, маркет-мейкером на стороне продажи, имеют встроенный интеллект, позволяющий идентифицировать наличие любых алгоритмов на стороне покупки большого ордера. Такое обнаружение с помощью алгоритмов поможет маркет-мейкеру определить большие возможности заказа и даст им возможность получать выгоду, выполняя заказы по более высокой цене. Это иногда идентифицируется как высокотехнологичный фронт-энд.
Технические требования для алгоритмического трейдинга
Реализация алгоритма с использованием компьютерной программы является последним компонентом алгоритмической торговли, сопровождаемой тестированием на истории (тестирование алгоритма на исторических периодах прошлых результатов фондового рынка, чтобы увидеть, было ли его использование выгодным). Задача состоит в том, чтобы преобразовать указанную стратегию в интегрированный компьютеризированный процесс, который имеет доступ к торговому счету для размещения заказов. Ниже приведены требования к алгоритмической торговле:
- Знания в области компьютерного программирования для программирования требуемой торговой стратегии, наемных программистов или готовых торговых программ. Подключение к сети и доступ к торговым платформам для размещения заказов. Доступ к каналам рыночных данных, которые будут отслеживаться алгоритмом на наличие возможностей для размещения заказов. Возможность и инфраструктура для тестирования системы после того, как она будет построена, прежде чем она будет запущена на реальных рынках. Доступны исторические данные для тестирования на истории в зависимости от сложности правил, реализованных в алгоритме.
Пример алгоритмического трейдинга
Royal Dutch Shell (RDS) котируется на Амстердамской фондовой бирже (AEX) и Лондонской фондовой бирже (LSE). Мы начнем с построения алгоритма для определения арбитражных возможностей. Вот несколько интересных наблюдений:
- AEX торгует евро, в то время как LSE торгует британским фунтом стерлингов. Из-за разницы во времени в один час AEX открывается на час раньше, чем LSE, после чего обе биржи торгуют одновременно в течение следующих нескольких часов, а затем торгуют только на LSE в течение последнего часа, как AEX закрывается.
Можем ли мы изучить возможность арбитражной торговли акциями Royal Dutch Shell, котирующимися на этих двух рынках, в двух разных валютах?
Требования:
- Компьютерная программа, которая может считывать текущие рыночные цены. Фид цен от LSE и AEX. Фид форекс (иностранной валюты) для GBP-EUR. Возможность размещения заказа, которая может направить заказ на правильный обмен. Возможность тестирования на исторической цене каналы.
Компьютерная программа должна выполнять следующее:
- Прочитайте входящий ценовой поток акций RDS с обеих бирж. Используя доступные курсы иностранных валют, конвертируйте цену одной валюты в другую. Если существует достаточно большое расхождение цен (дисконтирование брокерских расходов), приводящее к выгодной возможности, тогда программа должна разместить ордер на покупку на бирже с более низкой ценой и продать ордер на бирже с более высокой ценой. Если ордера выполняются по желанию, арбитражная прибыль последует.
Просто и легко! Однако практика алгоритмической торговли не так проста в обслуживании и исполнении. Помните, что если один инвестор может разместить сделку, сгенерированную с помощью альго, то и другие участники рынка могут. Следовательно, цены колеблются в миллионах и даже микросекундах. В приведенном выше примере, что произойдет, если сделка на покупку будет исполнена, а сделка на продажу - нет, потому что цены продажи изменятся к тому моменту, когда ордер достигнет рынка? Трейдера останется с открытой позицией, что делает арбитражную стратегию бесполезной.
Существуют дополнительные риски и проблемы, такие как риски сбоев системы, ошибки сетевого подключения, временные задержки между торговыми заказами и исполнением и, что наиболее важно, несовершенные алгоритмы. Чем сложнее алгоритм, тем более жесткое тестирование необходимо выполнить до его запуска.
