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

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

Одновременная автоматическая проверка нескольких рыночных условий. Снижен риск ручных ошибок при размещении сделок. Алготрейдинг можно протестировать на истории, используя доступные исторические данные и данные в реальном времени, чтобы убедиться, что это жизнеспособная торговая стратегия. Снижена вероятность ошибок трейдеров-людей из-за эмоциональных и психологических факторов. Большая часть алго-трейдинга сегодня — это высокочастотная торговля (HFT), которая пытается извлечь выгоду из размещения большого количества ордеров с высокой скоростью на нескольких рынках и нескольких параметров принятия решений на основе предварительно запрограммированных инструкций.  Алготрейдинг используется во многих формах торговой и инвестиционной деятельности, включая: Среднесрочные и долгосрочные инвесторы или фирмы-покупатели — пенсионные фонды, взаимные фонды, страховые компании — используют алготрейдинг для покупки акций в больших количествах, когда они не хотят влиять на цены акций с помощью дискретных крупных инвестиций. Краткосрочные трейдеры и участники продаж — маркет-мейкеры (такие как брокерские конторы),  спекулянты и арбитражеры — получают выгоду от автоматического исполнения сделок; кроме того, алгоритмическая торговля помогает создать достаточную ликвидность для продавцов на рынке.

Систематические трейдеры — последователи тренда, хедж-фонды или  парные трейдеры  (рыночно-нейтральная торговая стратегия, которая сопоставляет длинную позицию с короткой по паре инструментов с высокой степенью корреляции, таких как две акции, биржевые фонды (ETF) или валюты) — считают гораздо более эффективным запрограммировать свои торговые правила и позволить программе торговать автоматически. Алгоритмическая торговля обеспечивает более систематический подход к активной торговле, чем методы, основанные на интуиции или чутье трейдера. Алгоритмические торговые стратегии Любая стратегия алгоритмической торговли требует выявленной возможности, которая выгодна с точки зрения повышения прибыли или снижения затрат. Ниже приведены общие торговые стратегии, используемые в алго-трейдинге: Стратегии следования за трендом Наиболее распространенные алгоритмические торговые стратегии следуют тенденциям скользящих средних, прорывов каналов, движений ценовых уровней и соответствующих технических индикаторов . Это самые простые и простые стратегии для реализации с помощью алгоритмической торговли, потому что эти стратегии не предполагают никаких прогнозов или прогнозов цен. Сделки инициируются на основе появления желаемых тенденций, которые легко и просто реализовать с помощью алгоритмов, не вдаваясь в сложность прогнозного анализа. Использование 50- и 200-дневных скользящих средних является популярной стратегией следования за трендом.

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

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

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

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

Возможность и инфраструктура для тестирования системы после ее создания до того, как она будет запущена на реальных рынках. Доступные исторические данные для тестирования на истории в зависимости от сложности правил, реализованных в алгоритме. Пример алгоритмической торговли Royal Dutch Shell (RDS) зарегистрирована на Амстердамской фондовой бирже (AEX) и Лондонской фондовой бирже (LSE). 1 Мы начнем с построения алгоритма для определения возможностей арбитража. Вот несколько интересных наблюдений: AEX торгуется в евро, а LSE торгуется в британских фунтах стерлингов. 1 Из-за разницы во времени в один час AEX открывается на час раньше, чем LSE, после чего обе биржи торгуют одновременно в течение следующих нескольких часов, а затем торгуются только на LSE в течение последнего часа, когда AEX закрывается. Можем ли мы изучить возможность арбитражной торговли акциями Royal Dutch Shell, котирующимися на этих двух рынках, в двух разных валютах? Требования: Компьютерная программа, которая может считывать текущие рыночные цены.

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

Если ордера исполняются по желанию, последует арбитражная прибыль. Просто и легко! Однако практику алгоритмической торговли не так просто поддерживать и выполнять. Помните, что если один инвестор может разместить сгенерированную алгоритмом сделку, то же самое могут сделать и другие участники рынка. Следовательно, цены колеблются в милли- и даже микросекундах. Что произойдет в приведенном выше примере, если сделка на покупку будет исполнена, а сделка на продажу — нет, потому что цены продажи изменятся к тому времени, когда ордер попадет на рынок? Трейдер останется с открытой позицией, что сделает арбитражную стратегию бесполезной. Существуют дополнительные риски и проблемы, такие как риск сбоя системы, ошибки подключения к сети, временные задержки между торговыми приказами и их исполнением и, что наиболее важно, несовершенные алгоритмы. Чем сложнее алгоритм, тем более строгое тестирование требуется перед его применением.

.