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

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

Алгоритмическая торговля , или Алгоритмический трейдинг (англ. Algorithmic trading ) - это метод исполнения большой заявки (слишком большой, чтобы быть исполненной за раз), когда с помощью особых алгоритмических инструкций большая заявка (parent order ) делится на несколько под-заявок (child orders ) со своими характеристиками цены и объёма и каждая из под-заявок отправляется в определённое время на рынок для исполнения. Такие алгоритмы были придуманы для того, чтобы трейдерам не приходилось постоянно следить за котировками и делить большую заявку на маленькие вручную. Популярные алгоритмы носят названия "Percentage of Volume", "Pegged", "VWAP", "TWAP ", "Implementation Shortfall", "Target Close".

Алгоритмическая торговля не ставит целью получить прибыль. Её цель - уменьшить стоимость исполнения крупной заявки (transaction cost ), минимизировать её влияние на рынок (market impact ) и уменьшить риск её неисполнения .

Термин "алгоритмическая торговля" часто ошибочно используется в тех случаях, когда речь идёт об автоматизированных торговых системах . Перед такими системами действительно ставится цель получить прибыль. Они также известны под названием "торговых роботов " ("black box trading"), в которых торговые стратегии строятся на базе сложных математических формул и быстрой обработки данных .

Применение и реализация

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

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

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

С середины 2000-ых годов ведущие брокеры стали предоставлять доступ к своим алгоритмическим движкам своим крупным клиентам, так что клиентам не надо было создавать такие движки самостоятельно. Комиссия за пользование алгоритмическим движком брокера выше, чем за пользование услугой прямого доступа к рынку (direct market access (DMA)), но меньше, чем high touch -услуга.

Передача заявки между клиентом и брокером осуществляется, как правило, с помощью сообщения по протоколу FIX . Для передачи заявок, предназначенных для алгоритмических движков, в 2004 году был предложен стандарт FIXatdl - расширение протокола FIX, но до сих пор этот стандарт так и не получил широкого распространения. Сообщение регистрируется в системе управления заявками брокера и перенаправляется автоматически в алгоритмический движок брокера. Сообщение FIX содержит в особых тегах (custom tags) параметры исполнения алгоритма, например: время начала и конца исполнения, целевая цена исполнения, агрессивность/пассивность исполнения, участие/неучастие в аукционах открытия и закрытия торговых сессий. По мере исполнения заявки на рынке инвестор получает FIX-сообщения от брокера об исполнении (Partial Fills ) и в конце дня сообщение о полном исполнении заявки (Fill ) или отмене её оставшейся неисполненной части (Cancellation ).

Каждый брокер называет свои алгоритмы по-разному, что приводит к трудностям сравнения услуг алгоритмической торговли для выбора лучшей. Впрочем, у всех брокеров реализованы самые распространённые и хорошо известные алгоритмы, например TWAP, VWAP, POV и проч., и отличия между их реализациями минимальны.

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

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

Во избежание таких случаев регулирующие органы и биржи требуют от владельцев алгоритмических торговых систем оборудовать их системами быстрого отключения kill switch , которые позволяют моментально отключить систему от канала связи и автоматически отменить выставленные на бирже заявки с помощью механизма cancel-on-disconnect . Это требование относится не только к системам алгоритмического исполнения заявок, но и к системам автоматизированной торговли и системам прямого доступа к рынку .

Алгоритмическая и высокочастотная торговля стали предметом многочисленных разбирательств, инициированных американскими регуляторами SEC (U.S. Securities and Exchange Commission) и CFTC в связи с обвинением в их причастности к событиям 6 мая 2010 года (2010 Flash Crash ), когда ведущие фондовые индексы США кратковременно испытали крупнейшее за всю свою историю внутридневное падение .

Влияние алгоритмических систем на ликвидность финансовых рынков

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

Существует два основных принципа выставления заявок:

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

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

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

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

Влияние алгоритмических систем на биржевую инфраструктуру

С точки зрения нагрузки на биржевую торговую инфраструктуру алгоритмические системы, использующие рыночный принцип работы с заявками, практически не несут рисков, так как редко выставляют больше одной заявки в секунду из расчета на один инструмент, к тому же, почти каждая заявка, выставленная этими системами, приводит к сделке. [ ] В случае же с алгоритмическими системами, использующими котировочный принцип работы, картина совершенно иная. Во-первых, при перестановке заявок эти системы могут выставлять по несколько заявок в секунду по одному инструменту, а во-вторых, лишь малая часть этих заявок приводит к сделкам (по информации предоставленной ММВБ, более 95 % заявок от высокочастотных роботов снимаются без исполнения ). Таким образом, при высокочастотном котировании, биржевая инфраструктура нагружается в максимальной степени, причем большую часть времени вхолостую. Поскольку чрезмерная нагрузка биржевой инфраструктуры может повлиять на стабильность её работы, биржи используют такие защитные механизмы, как задержка в трансляции рыночной информации, ограничение числа допустимых транзакций, введение минимального времени «жизни» заявки, а также сдерживание активности роботов через тарифную политику .

Спекулятивные стратегии

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

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

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

Способы подключения к торгам

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


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

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

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

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

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

Как торговать криптовалютой?

Как правило, трейдеры склоняются к одному из трех подходов:

Фундаментальный анализ

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

Анализ настроений

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

Технический анализ

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


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


Технические индикаторы MACD и RSI помогают оценить направление и оценку криптоактива

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

Правильный подход к успешной торговле

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

Давайте рассмотрим пример алгоритмической торговой стратегии. На разработку ее концепции, анализ и настройку ушло более семи месяцев.

Гипотеза: если цена криптоактива опустилась до «необоснованно низкого» уровня, она с высокой вероятностью отскочит назад.

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


Обратите внимание, как отскакивает цена после прокола зеленой линии

Сигнальная линия на графике выше обозначена как «2 стандартных отклонения от скользящей средней». Давайте разберемся, что это значит.

Основы статистики: Среднеквадратическое (стандартное) отклонение

Любая нормальная случайная величина удовлетворяет распределению вероятностей Гаусса. Пик распределения соответствует среднему значению, а стандартное отклонение определяет возможный разброс значений.

Из статистики мы знаем, что 96% значений нормального распределения находятся в пределах двух стандартных отклонений (σ) от среднего. Другими словами, вероятность, что некая цена выйдет за пределы 2σ-интервала с той или иной стороны, составляет менее 2%.

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

Подход

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

Например, можно проверить работу алгоритма на разных временных интервалах (5 мин, 15 мин, 30 мин, 1 час) и для различных пороговых значений (2σ, 2,5σ, 3σ) на множестве разнообразных криптоактивов. Это позволит определить, какая комбинация значений дает наибольший процент надежных сигналов без ущерба для прибыльности каждой сделки.


Процесс разработки алгоритмической торговой стратегии

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

Выводы

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

  • Со временем прибыльность алгоритма снижается.
  • Алгоритмы, отлично работающие с небольшим капиталом (скажем, $10 000), перестают приносить прибыль, если его сильно увеличить (например, до $100 000).
  • Чем труднее концептуализировать и программировать алгоритм, тем дольше он сохраняет свое преимущество.
  • Большинство алгоритмов коррелируют с ценами - некоторые лучше работают на растущем рынке, другие хорошо справляются с падающим. Необходимо разумно скомпоновать портфель, состоящий из различных алгоритмов, чтобы они компенсировали возможные слабости друг друга.

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

Будь в курсе! Подписывайся на Криптовалюта.Tech в
Обсудить актуальные новости и события на

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

Популярные алгоритмы биржевой торговли носят названия:

  • Percentage of Volume;
  • Pegged;
  • VWAP»;
  • TWAP;
  • Implementation Shortfall;
  • Target Close.

Алгоритмическая торговля не ставит целью получить прибыль . Её цель - уменьшить стоимость исполнения крупной заявки, минимизировать её влияние на и уменьшить её неисполнения.

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

Применение и реализация алгоритмической торговли

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

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

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

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

Реализация механизма алгоритмической торговли

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

  • время начала и конца исполнения;
  • целевая цена исполнения;
  • агрессивность/пассивность исполнения;
  • участие/неучастие в аукционах открытия и закрытия торговых сессий.

По мере исполнения своей заявки на рынке получает FIX-сообщения от брокера об исполнении и в конце дня сообщение о полном исполнении заявки или отмене ее оставшейся неисполненной части.

Использование алгоритмов в трейдинге (алготрейдинг) - тренд последних десятилетий, во многом изменивший рынок. Любая автоматическая система может с лёгкостью превзойти человека в скорости, производительности и выносливости, конкурировать с машиной при этом будет практически невозможно.

Содержание статьи:

Что такое алгоритмическая торговля, её особенности и использование на различных рынках – далее.

Что такое алготрейдинг (алгоритмическая торговля)

Алгоритмический трейдинг (с англ. Algorithmic trading) может иметь два значения:

  1. Алготрейдинг – это автоматическая система, которая открывает сделки без участия трейдера в рамках заданного алгоритма;
  2. – это методика исполнения крупной заявки на рынке, когда она автоматически делится на части и открывается постепенно по заданным правилам.

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

Во втором случае система применяется для того, чтобы облегчить ручной труд трейдеров в инвестиционных фондах при совершении чрезмерно больших сделок, которые желательно совершить менее заметно. Например, если задачей стоит закупить 100000 акций компании, а открывать позиции нужно по 1-4 акции за раз, чтобы не привлекать внимание в ленте и стакане заявок.

О том что такое алготрейдинг, пишет :

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

Основной формой алгоритмической торговли является HFT-трейдинг (с англ. High-frequency trading - «высокочастотный алготрейдинг» ). Его суть заключается в совершении сделок за доли секунды. Иными словами, такие системы используют своё основное преимущество - скорость.

Суть алготрейдинга

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

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

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

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

Когда и как появился алготрейдинг

Официальным началом использования алгоритмов является 1998 год, когда SEC (Комиссия по ценным бумагам ) в США разрешила применение электронных площадок. После этого стартовала настоящая технологическая гонка.

Ключевые моменты :

  • 2000-е - время совершения автоматических сделок в несколько секунд, доля роботов на рынке США менее 10%;
  • 2009 - сделки осуществляются со скоростью быстрее миллисекунды (доли микросекунд), доля на рынке свыше 60%;
  • 2012 и более поздний период - из-за массовых ошибочных действий алгоритмов их рыночный объём сократился до 50% от всех сделок.

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

Алгоритмическая торговля на фондовом рынке

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

  • Системы на основе технического анализа - подразумевают использование рыночной неэффективности и выявление трендов с помощью нескольких индикаторов. В большинстве случаев такие стратегии нацелены на извлечение прибыли за счёт приёмов из классического технического анализа.
  • Парный и баскет-трейдинг - в такой системе используется соотношение двух или более инструментов, которые имеют относительно высокий процент корреляции, но не равный единице. Соответственно, если один из инструментов отклонился от заданного курса, то высока вероятность, что он вернётся к своей группе. За счёт отслеживания таких отклонений алгоритмы осуществляют сделки и приносят прибыль своим владельцам.
  • Market making - иной род стратегий, направленный на поддержание рыночной ликвидности. Маркет-мейкеры удовлетворяют спрос на различных инструментах даже против своей выгоды, за что получают вознаграждение от биржи. Тем не менее, это не мешает таким алгоритмам извлекать прибыль с помощью специальной стратегии на основе быстрого потока и учёта рыночных данных.
  • Front running - в рамках подобных систем используется анализ объёма сделок по инструменту и выявление крупных заявок. Алгоритмы берут в расчёт, что крупная заявка удержит цену и спровоцирует появление встречных сделок в противоположную сторону. Таким образом, они ловят колебания за счёт скорости анализа рыночных данных в стакане и ленте, стараясь обогнать других участников и забирая небольшие движения во время исполнения очень крупных заявок.
  • Арбитраж - торговля финансовыми инструментами, корреляция между которыми близка к единице. Обычно в таких инструментах отклонение минимально, это может быть акция и фьючерс одной компании или одинаковые акции, но на разных рынках. Система отслеживает изменение цен связанных инструментов и производит арбитражные сделки, которые уравнивают цену.
  • Торговля волатильностью - самый сложный вид торговли, основанный на покупке опционов различных типов, с расчётом на то, что волатильность определенного инструмента вырастет. Подобный алготрейдинг требует высоких вычислительных мощностей и команды специалистов.

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

Алгоритмическая торговля на Форекс


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

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

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

Опрос: Какой тип трейдинга вы предпочитаете?

Poll Options are limited because JavaScript is disabled in your browser.

    Позиционную торговлю 17%, 24 голоса

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

Существует небольшой перечень софта для алгоритмической торговли и написания кода для роботов.

TSLab

TSLab - это отечественный софт на языке C#, совместимый с большинством Форекс и фондовых брокеров. Имеет довольно простой и лёгкий в изучении интерфейс благодаря специальным блок-схемам.

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

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

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

TWAP (с англ. Time Weighted Average Price - «взвешенная по времени средняя цена» ) - такой алгоритм открывает заявки через равные промежутки времени по ценам с лучшим спросом или предложением.

VWAP (с англ. Volume Weighted Average Price – «взвешенная по объёму средняя цена» ) - нужен для равномерного открытия позиции по равным частям определенного объёма в течение конкретного времени, а также по ценам, не выше, чем средневзвешенное значение с момента запуска.

Iceberg - используется для выставления заявок с суммарным объёмом, не выше, чем заданное в параметрах количество. На многих биржах алгоритм встроен в ядро системы, что позволяет указать «видимый» объём в параметрах заявки.

Execution Strategy - требуется для покупки актива по средневзвешенной цене в большом объёме, как правило, используется крупными игроками (хедж-фондами и брокерами).

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

Data Mining - это поиск новых закономерностей для новых алгоритмов. Более 75% дата майнинга приходится на сбор данных до запуска тестирования. Итог поиска зависит только от профессионального и глубокого подхода. Сам же поиск осуществляют различные алгоритмы по ручным настройкам. К примеру софт Stock Pattern Viewer – сюда можно загрузить котировки и найти определенные свечные паттерны (и не только свечные), после которых происходит заданная реакция рынка. Например, найти паттерн, после которого в течение трех свечей рынок рос 2000 раз, а падал всего 200 раз. После этого найденные паттерны встраиваются в алгоритмы торговых роботов и успешно (либо не очень) торгуются.

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


Сфера обучения и литературы по автоматической торговле довольно узкая. Выделить надёжные и качественные специализированные исследования довольно сложно. Обычно всё сводится к изучению:

  1. математических моделей и экономического моделирования;
  2. языков программирования - Python, C++, MQL4 (для Forex );
  3. информации о контрактах на бирже и особенности инструментов (акций, опционов, фьючерсов).

Всё же следует выделить хорошие книги по алготрейдингу:

Барри Джонсон и его книга «Алгоритмическая торговля и прямой доступ к бирже » (Algorithmic Trading & DMA, Barry Johnson).

Эрнест Чан «Квантовая торговля » (Quantitative Trading, Ernest Chan).

Люу Ю-Дау «Методы и алгоритмы финансовой математики » (Financial Engineering and Computation, Yuh-Dauh Lyuu).

Риши Наранг «Внутри черного ящика» (Inside the Black Box, Rishi K. Narang)

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

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

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

  • Отсутствие знаний и правильного понимания рынка . Это касается подавляющего большинства новичков, а не профессиональных трейдеров. 95% людей теряют деньги, торгуя руками, как следствие, нельзя упустить этот факт.
  • Психология и несистемность . Человек по своей натуре склонен к срывам, азарту и прочим эмоциональным всплескам. Трейдинг является очень психологически затратной деятельностью, людям трудно следовать своей же системе строго, как это должно быть. Итог - потерянные деньги.
  • Физиологические ограничения . Люди не могут следить за рынком в режиме 24 на 7, поскольку вынуждены есть, спать и отдыхать.
  • Влияние личностных характеристик на результаты торговли . К сожалению, у каждого трейдера должна быть своя торговая система, которая подходит конкретно ему. Редко бывает так, что целая группа людей спокойно торгует по одной и той же системе. По одной и той же стратегии, два трейдера всегда будут торговать по разному.

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

Тем не менее, роботы тоже неидеальны, обратим внимание на их недостатки:

  • Вероятность ошибки в алгоритме . Если разработчик робота допустит неточность или иной недочёт в коде, то робот всё равно продолжит работать и потеряет деньги.
  • Сложность алгоритмов . Для составления и программирования робота нужно понимать не только код (программный язык), но и сам трейдинг. В целом это довольно сложная процедура, и она требует немалого опыта.
  • Недостаток информации . Алгоритмическому трейдингу практически нереально обучиться по каким-либо книгам или курсам, информации попросту отсутствует в свободном доступе.
  • Отсутствие гибкости . Ручному трейдеру будет проще приспособиться к изменениям на рынке, чем алготрейдеру перестраивать весь алгоритм робота.

Таким образом, у роботов есть свои проблемы, но они менее значимы, нежели недостатки в ручном трейдинге, которые приводят большинство к огромным потерям на финансовых рынках. Только не всё так однозначно, на практике часто оказывается, что алгоритмическая торговля приносит убытки. Явным примером является Barclay’s Systematic Trader Index



На графике показано, что с 2010 по 2013 год системные трейдеры находились в просадке и прилично сливали. Картина становится очевидной, если взглянуть на следующий график, который аналогичный, но только для ручных трейдеров (несистемных):



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

Известные мифы об алготрейдинге

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

  1. Алготрейдинг не даёт прибыли и является обманом . К сожалению, многие подвержены этому мнению, в особенности те, кто сталкивался с покупкой советников, не оправдавших вложения. Опровергает это указанный выше индекс доходности алготрейдеров, которые на протяжении 20 лет зарабатывают деньги.
  2. Трейдинг - это психология, а не системная торговля для роботов . Как уже отмечалось, неэффективность у рынка есть, и алгоритмы для их выявления существуют.
  3. Тестирование систем не работает . Многие говорят, что бек-тестинг на истории не даёт никакой пользы, поскольку на реальном счёте робот будет терять всё равно. Это также заблуждение, если правильно подходить к процессу тестирования с учётом всех особенностей и нюансов, то оно играет важную роль.
  4. Мартингейл-системы и сетки ордеров - единственный способ заработать . Они действительно могут приносить прибыль, но недолго. Такая доходность крайне нестабильна, и обязательно приведет к сливу.
  5. Индикаторы не работают . Ещё одно заблуждение, индикаторы были созданы, чтобы помочь трейдеру визуально оценивать поведение цен, а не слепо надеяться на них. Поэтому, при разумном подходе они обязательно дадут результат.

Перечень не является исчерпывающим, это лишь самые известные мифы.

Заключение

Что такое алгоритмическая торговля на биржах? Алготрейдинг - это торговля с использованием автоматических запрограммированных систем для открытия сделок. Она может применяться для извлечения прибыли с рынка или для снижения ручной нагрузки на трейдера при открытии очень крупной позиции.

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter .


Почему Роботы и алгоритмическая торговля?

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

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

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

Сколько процентов доходности может показать Робот?

От нуля до 8000% и больше. Многое зависит от алгоритма Робота, его параметров и от характера рынка. Если эти факторы максимально коррелируют, то и доходность Робота будет максимальной.

Как начать торговать на бирже с помощью Робота или Советника

Есть несколько вариантов:

  • Разработать своего торгового Робота самостоятельно и начать торговать
  • Заказать торгового Советника или Робота
  • Приобрести готового торгового Советника или Робота

Сразу нужно понимать, что разработка торгового Робота связана с изучением языка программирования, например QPILE, или C++ с API для QUIK. Это необходимое условие, но не достаточное для доходного Робота. Необходимо разработать правильный алгоритм, чтобы Робот в нужное время выставлял заявки на куплю-продажу и отслеживал текущую позицию, чтобы не купил лишнего или не продал меньше положенного. Он должен уметь выставлять стоп-заявки, проверять наличие соединения с биржей, учитывать интервалы торговых сессий и перерывы, закрывать или переносить позиции по сессиям, работать с разными таймфреймами, свечами, с различными Индикаторами и многое другое.

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

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

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

При покупке торгового Робота Вы экономите свои средства и время.

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

Преимущества Роботов

Низкочастотный Робот – малое количество сделок, одна-две в день или меньше. Следовательно экономия на комиссии, но большой доходности ждать не приходится. Так как большие движения на рынке происходят редко (примерно 30% времени и меньше).

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

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

Что такое Робот и как он работает

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