Алгоритмическая стратегия торговли на фондовом рынке. Тенденции и перспективы алгоритмической торговли в россии. Влияние алгоритмических систем на биржевую инфраструктуру
Алгоритмическая торговля (или алгоритмический трейдинг ) - это метод исполнения большой заявки (слишком большой, чтобы быть исполненной за раз), когда с помощью особых алгоритмических инструкций большая заявка делится на несколько под-заявок со своими характеристиками цены и объема и каждая из под-заявок отправляется в определенное время на для исполнения. Такие алгоритмы были придуманы для того, чтобы трейдерам не приходилось постоянно следить за и делить большую заявку на маленькие вручную .
Популярные алгоритмы биржевой торговли носят названия:
- Percentage of Volume;
- Pegged;
- VWAP»;
- TWAP;
- Implementation Shortfall;
- Target Close.
Алгоритмическая торговля не ставит целью получить прибыль . Её цель - уменьшить стоимость исполнения крупной заявки, минимизировать её влияние на и уменьшить её неисполнения.
К сожалению, сегодня термин «алгоритмическая торговля » часто ошибочно используется в тех случаях, когда на самом деле речь идет об . Перед такими системами действительно ставится цель получить прибыль. Они также известны под названием «торговых роботов», в которых торговые стратегии строятся на базе сложных математических формул и быстрой обработки данных.
Применение и реализация алгоритмической торговли
Алгоритмическая торговля широко используется инвестиционными банками , пенсионными фондами , хедж-фондами и , так как эти в своей деятельности оперируют заявками большого объема и следовательно не могут выставить такие большие заявки на рынок целиком без риска потерь.
До появления программных комплексов алгоритмической торговли трейдеры институциональных инвесторов или трейдеры брокеров, получавших заявки от таких крупных инвесторов, должны были делить крупные заявки вручную. Существовала даже целая индустрия исполнения крупных заявок, когда сторонние компании принимали заявки от крупных и исполняли их, опираясь на свой собственный опыт.
В середине 2000-х годов эту рутинную работу удалось автоматизировать с помощью создания алгоритмических «движков», которые самостоятельно исполняли все те же действия, что делал . Трейдеру достаточно было перенаправить заявку в такой «движок», выбрать алгоритм исполнения и дальше только отслеживать его работу, сконцентрировавшись на ручном исполнении лишь только некоторых сложных заявок.
С середины 2000-ых годов ведущие стали предоставлять доступ к своим алгоритмическим движкам крупным клиентам, так что клиентам не надо было больше создавать такие движки самостоятельно. Комиссия за пользование алгоритмическим движком брокера выше, чем за пользование услугой прямого доступа к рынку .
Реализация механизма алгоритмической торговли
Передача заявки между клиентом и брокером осуществляется, как правило, с помощью сообщения по протоколу FIX . Для передачи заявок, предназначенных для алгоритмических движков, в 2004 году был преложен стандарт FIXatdl (расширение протокола FIX), но до сих пор этот стандарт так и не получил широкого распространения. Сообщение регистрируется в системе управления заявками брокера и перенаправляется автоматически в алгоритмический движок брокера. Сообщение FIX содержит в особых тегах параметры исполнения алгоритма, например:
- время начала и конца исполнения;
- целевая цена исполнения;
- агрессивность/пассивность исполнения;
- участие/неучастие в аукционах открытия и закрытия торговых сессий.
По мере исполнения своей заявки на рынке получает FIX-сообщения от брокера об исполнении и в конце дня сообщение о полном исполнении заявки или отмене ее оставшейся неисполненной части.
Алготрейдинг – это очень перспективное направление в торговле на финансовых рынках, позволяющее при грамотном подходе зарабатывать больше при меньших усилиях. Фактически это когда ваша или чужая торговая стратегия исполняется роботом. Сложность используемых программой алгоритмов может отличаться. Она может как просто открывать и закрывать позиции при определенных показаниях индикатора, так и проводить сложный , неподвластный человеку.
Эффективность алгоритмической торговли зависит не только от используемой стратегии, но и рыночных условий, настроений игроков, новостей и других переменных.
Программы, используемые для алгоритмической торговли на Форекс могут составляться самим трейдером (оптимальный вариант) или другими людьми. Обычно это советники, которые устанавливаются в торговый терминал MT4.
Но алгоритмический трейдинг одними не ограничивается, это целый набор программ, позволяющих автоматизировать торговую стратегию.
Сами советники могут быть платными и бесплатными. Причем далеко не всегда последние хуже первых. Нередко под видом высокоэффективных программ для алгоритмической торговли подсовывают или банальные пустышки, которые можно скачать и бесплатно, или вовсе стратегии, способные за секунду слить трейдеру депозит.
Рисунок 1. На Форекс алготрейдинг чаще всего реализуется в форме советников
Представьте, что у вас есть подчиненный: очень исполнительный, который готов последовать всем приказам своего создателя. При этом в рамках заложенной в него программы он способен сам принимать решения, причем значительно лучше, чем трейдер. Вот это и есть суть алготрейдинга, открывающего огромные перспективы.
Весь оптимизм использования торговых роботов был понят и крупными банками, пенсионными, паевыми и другими фондами. В их случае алготрейдинг имеет еще одно преимущество – способность оперировать огромным количеством ордеров в минуту, причем с минимальными рисками.
История алготрейдинга довольно давняя, первые движки были созданы еще в 2000-м году. И уже тогда они были довольно эффективными. Не могли они принимать лишь сложные решения, что приходилось делать человеку. Зато ему не нужно было распылять внимание на выполнение мелких задач.
Потом алгоритмическая торговля стала усложняться, программы стали обновляться. Но даже сейчас она неидеальна. Например, в 2012 году компания Knight Capital потеряла 460 миллионов долларов после ошибки компьютера. На следующий день она объявила о банкротстве. Так что использовать советников нужно осторожно.
Алгоритмическая торговля может осуществляться и на VPS-сервере. Преимущества очевидны: торговля может осуществляться в режиме 24/5, проскальзывания минимальны за счет физически близкого нахождения сервера к мощностям брокера, предоставляющего эту услугу, а также нет привязки к месту торговли. Вы можете изменить настройки советника или выключить его, где бы вы ни находились.
Количественный трейдинг
Если буквально понимать значение этого термина, то это торговля, связанная с количественными показателями. Цифрами, проще говоря. И, в принципе, это определение будет правильным. Количественные трейдеры, как правило – это специалисты точных наук: математики, программисты, экономисты. Они постоянно анализируют рыночные инструменты, желая обнаружить недостатки его работы.
Все, что они пытаются сделать – это создать идеальную математическую модель, которая поможет описать все происходящее на финансовых рынках и предсказать движения котировок.
Поскольку технический анализ – это совокупность математических моделей и закономерностей, то фактически можно свести количественный трейдинг к теханализу, а качественный – фундаментальному. Пока что роботы не умеют обрабатывать качественную информацию, и поэтому фундаментальным анализом сейчас занимаются исключительно люди.
А вот с техническим анализом робот справится значительно лучше. Он сможет параллельно проанализировать тысячи активов, основываясь на сотнях индикаторах, свечных паттернах, и графических фигурах (которые тоже можно свести к числовым закономерностям).
В широком смысле количественный трейдер – это тот человек, который совершенствует технический анализ (математики и экономисты) или разрабатывает алгоритмы, в основе которых лежат созданные первыми модели.
Классификация стратегий алгоритмического трейдинга
Алгоритмическую торговлю используют на разных уровнях, начиная рядовыми трейдерами и заканчивая крупными маркетмейкерами. И каждый использует свои стратегии, направленные на достижение похожих, но несколько отличающихся друг от друга задач. В принципе, любая стратегия торговли может быть алгоритмической.
Стратегии маркетмейкинга
Наверно, это один из самых простых способов заработать деньги на Форекс. Многие могли увидеть, что если цена начинает интенсивное движение в определенном направлении, скорость которого только возрастает, то по мере продвижения цены вдаль объемы сделок также увеличиваются. Вот это включаются в работу .
Их задача – усредняться. То есть, увеличивать объем сделок при появлении убыточной позиции, дожидаясь, что она откатится назад после достижения перекупленности или перепроданности рынка. Зачем он это делает? Для обеспечения ликвидности рынка, чтобы трейдеры могли покупать и продавать. Чтобы обеспечивать такую стратегию, требуются колоссальные деньги.
В общем, для обычного алгоритмического трейдера это довольно сложная работа, потому что порой требуется ждать отката очень долго и терпеть гигантские убытки. Так что использовать роботов, основанных на этой стратегии, не рекомендуется.
Трендследящие
Вот эти стратегии используются значительно чаще. Их суть очень проста – как можно раньше обнаружить разворот цены в другом направлении, и открыть соответствующую сделку. Например, как только цена начинает катиться вниз, открывать медвежью сделку, и закрыть – когда начнет лететь вверх.
Не стоит забывать о волатильности рынка, поэтому большинство работающих трендследящих стратегий используется на среднесрочных и долгосрочных периодах.
Обычно программы, настроенные на торговлю по тренду, делают то же, что и человек: анализируют показания индикаторов, свечные паттерны и так далее.
Арбитражные стратегии
Эти стратегии основаны на извлечении прибыли из разницы между разными биржами, коррелирующими активами, базовым активом и производным инструментом (нефтью и фьючерсом на черное золото, например).
Как правило, эта разница получается из-за того, что связанный с базовым актив не успел среагировать. Например, рубль имеет положительную корреляцию с ценой на нефть. Поэтому если цена на нефть падает, можно ожидать снижения стоимости российской валюты. В этом случае быстро заключается сделка в соответствующем направлении, а как только цена скорректируется, выходим из рынка.
Алгоритмическая торговля в арбитраже используется особенно активно, потому что необходимо очень быстро обнаруживать неэффективности рынка. Ведь при больших объемах торгов котировка выравнивается почти сразу.
Кроме того, заработать только на одной неэффективности сейчас почти невозможно, потому что арбитражные стратегии очень популярные. Поэтому необходимо заключать много подобных сделок. На это способен только компьютер.
Мартингейл
![](https://i1.wp.com/iambinarytrader.ru/wp-content/uploads/2018/09/image3-6.jpeg)
Рисунок 2. Стратегия «Мартингейл»
Большинство советников, обещающих сверхбольшие прибыли, основывается на . Это стратегия, предусматривающая увеличение объема позиций с дальнейшим ее открытием в противоположном направлении в случае, если предыдущая сделка оказалась убыточной.
Эта стратегия пошла из казино. В ее основе лежит идея, что вероятность, что следующий бросок костей будет выигрышным, больше, чем предыдущий. В случае с ними, она оказывается такой же (1:6), но зато очень много людей повелось, и игровые дома стали зарабатывать колоссальные деньги.
На Форекс она может быть даже меньшей. Например, в случае высокой волатильности рынка. Представьте, трейдер открывает сделку на покупку. Она оказывается убыточной. Естественно, по чистому мартингейлу нужно увеличить объем где-то в 2,5 раза и открыть позицию на продажу. Но здесь настроения рынка изменились, и опять проигрыш.
Лучше всего использовать мартингейл в совокупности с техническим анализом, причем очень точечно. Если хотите применять робота, базирующемся на этой стратегии, нужно иметь гигантский депозит, который может выдержать серию из 10, а то и больше поражений.
Скальпинг
Это еще одна популярная высокорисковая стратегия, используемая в торговых роботах. Ее суть заключается в торговле на небольших трендах, имеющихся на краткосрочных таймфреймах. Максимальную эффективность показывает на волатильном рынке (например в европейскую сессию на паре EUR/USD).
Стоит ли использовать?
Алготрейдинг – не панацея от всех торговых бед. Фактически является исполнителем, который может ошибаться. Обязательно самостоятельно контролировать его торговлю и ситуацию на рынке, и если вдруг видите, что сделка идет против вас, сразу ее отменяйте.
Вообще, при правильном подходе на стабильном рынке вы можете получать неплохой пассивный доход.
Обзор программ для алготрейдинга
Выбор конкретной программы зависит от ваших задача. Алготрейдинг – слишком широкая сфера, которая требует разных приложений.
MQL4 IDE
Рисунок 3. Среда разработки
Среда разработки советников Форекс – главный инструмент алготрейдера, решившего составить собственную стратегию и автоматизировать ее. Конечно, требуется прокачать навыки программирования, но оно того стоит.
Если советник окажется рабочим, его можно в дальнейшем продать и получать дополнительный доход.
Фактически это целая программная система, способная заменить все остальные приложения, необходимые для разработчика. Она включает:
- Собственный язык программирования.
- Редактор скриптов.
- Тестер стратегий. Незаменимый помощник в алготрейдинге, позволяющий осуществить отладку программы.
- Документацию. Руководство по написанию советников на MQL 4.
Рассмотрим 5 советников для торговли на валютном рынке, на случай, если вы не хотите разрабатывать собственную алгоритмизированную торговую систему.
- Aladdin FX. Этот советник абсолютно бесплатный, работает одновременно на нескольких валютах. Считается многими одним из лучших роботов среди бесплатных.
- Auto Profit. Его можно использовать для любых инструментов, в его основе заложена стратегия с минимальными рисками. Трейдер может контролировать каждый шаг, сделанный этой программой.
- Ilan. Эта алгоритмизированная торговая система предусматривает фиксированный тейк-профит без стоп-лосса. Стратегия основана на усреднении, поэтому для ее работы требуется большой депозит.
- COBRA. Основывается на скользящей средней, на определенном отступе от которой выставляется отложенный ордер. Для избавления от убыточных позиций используется мартингейл, так что будьте осторожны.
- GEPARD. Советник торгует на 28 валютных парах, риски хеджируются и диверсифицируются, благодаря чему они минимальные.
Каким бы ни был хорошим советник, нужно ориентироваться на свою голову и совершенствовать собственные торговые умения.
Обучение алготрейдингу
На рынке Форекс обучение алготрейдингу фактически сводится к изучению языка MQL4. Он довольно прост, и посилен даже начинающим программистам. В описанной выше среде разработки есть собственная справочная система, а в интернете есть полно ресурсов, обучающих написанию торговых советников.
Но перед тем, как это делать, нужно научиться разрабатывать собственные торговые стратегии. Это значительно сложнее, чем выучить язык программирования. Но с этого надо начинать.
Преимущества и недостатки
![](https://i0.wp.com/iambinarytrader.ru/wp-content/uploads/2018/09/image5-6.jpeg)
Рисунок 4. Этот робот все знает о своих преимуществах и недостатках
Преимущества алгоритмической торговли:
- Возможность автоматизировать простейшие действия и уделить время более важным, но сложным вещам.
- Возможность снять психологическую нагрузку и принимать более адекватные решения. Человек может податься жадности или страху и перестать выполнять данные себе обязательства. Например, резкий откат может быть частью стратегии, но тут трейдер абсолютно глупо выходит из сделки. Робот будет действовать четко.
- Возможность получать пассивный доход на стабильном рынке.
- Возможность круглосуточной торговли.
Недостатки алготрейдинга на Форекс:
- Отсутствие гибкости. Если рынок резко разворачивается, робот будет заключать убыточные сделки.
- В алгоритме может быть ошибка, которая приведет к сливу депозита.
- Разработка советников – процесс трудоемкий, поскольку требуется хорошее владение навыками программирования и отличное – торговли.
Использование алгоритмов в трейдинге (алготрейдинг) - тренд последних десятилетий, во многом изменивший рынок. Любая автоматическая система может с лёгкостью превзойти человека в скорости, производительности и выносливости, конкурировать с машиной при этом будет практически невозможно.
Содержание статьи:
Что такое алгоритмическая торговля, её особенности и использование на различных рынках – далее.
Что такое алготрейдинг (алгоритмическая торговля)
Алгоритмический трейдинг (с англ. Algorithmic trading) может иметь два значения:
- Алготрейдинг – это автоматическая система, которая открывает сделки без участия трейдера в рамках заданного алгоритма;
- – это методика исполнения крупной заявки на рынке, когда она автоматически делится на части и открывается постепенно по заданным правилам.
В первом значении алгоритмы нужны, чтобы непосредственно получить прибыль за счёт автоматического анализа рынка и открытия позиций. Подобные алгоритмы также называют «торговыми роботами » или «советниками ». Последнее наименование пришло с рынка Форекс.
Во втором случае система применяется для того, чтобы облегчить ручной труд трейдеров в инвестиционных фондах при совершении чрезмерно больших сделок, которые желательно совершить менее заметно. Например, если задачей стоит закупить 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 голоса
Обзор программ для алготрейдеров
Существует небольшой перечень софта для алгоритмической торговли и написания кода для роботов.
![](https://i2.wp.com/investingnotes.trade/wp-content/uploads/2017/10/TSLab.png)
![](https://i1.wp.com/investingnotes.trade/wp-content/uploads/2017/10/TSLab.png)
TSLab - это отечественный софт на языке C#, совместимый с большинством Форекс и фондовых брокеров. Имеет довольно простой и лёгкий в изучении интерфейс благодаря специальным блок-схемам.
Программой можно пользоваться бесплатно, тестировать и оптимизировать системы, но для реальной торговли необходимо будет купить подписку.
![](https://i1.wp.com/investingnotes.trade/wp-content/uploads/2017/10/WealthLab.png)
![](https://i0.wp.com/investingnotes.trade/wp-content/uploads/2017/10/WealthLab.png)
Программа для разработки алгоритмов на языке 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 раз. После этого найденные паттерны встраиваются в алгоритмы торговых роботов и успешно (либо не очень) торгуются.
Обучение и книги по алготрейдингу
Сфера обучения и литературы по автоматической торговле довольно узкая. Выделить надёжные и качественные специализированные исследования довольно сложно. Обычно всё сводится к изучению:
- математических моделей и экономического моделирования;
- языков программирования - Python, C++, MQL4 (для Forex );
- информации о контрактах на бирже и особенности инструментов (акций, опционов, фьючерсов).
Всё же следует выделить хорошие книги по алготрейдингу:
Барри Джонсон и его книга «Алгоритмическая торговля и прямой доступ к бирже » (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
![](https://i2.wp.com/investingnotes.trade/wp-content/uploads/2017/10/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%BE%D1%85%D0%BE%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B0%D0%BB%D0%B3%D0%BE%D1%82%D1%80%D0%B5%D0%B9%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.jpg)
![](https://i2.wp.com/investingnotes.trade/wp-content/uploads/2017/10/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%BE%D1%85%D0%BE%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D0%B0%D0%BB%D0%B3%D0%BE%D1%82%D1%80%D0%B5%D0%B9%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.jpg)
На графике показано, что с 2010 по 2013 год системные трейдеры находились в просадке и прилично сливали. Картина становится очевидной, если взглянуть на следующий график, который аналогичный, но только для ручных трейдеров (несистемных):
![](https://i1.wp.com/investingnotes.trade/wp-content/uploads/2017/10/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%BE%D1%85%D0%BE%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D1%80%D1%83%D1%87%D0%BD%D1%8B%D1%85-%D1%82%D1%80%D0%B5%D0%B9%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.jpg)
![](https://i1.wp.com/investingnotes.trade/wp-content/uploads/2017/10/%D0%98%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%B4%D0%BE%D1%85%D0%BE%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D0%B8-%D1%80%D1%83%D1%87%D0%BD%D1%8B%D1%85-%D1%82%D1%80%D0%B5%D0%B9%D0%B4%D0%B5%D1%80%D0%BE%D0%B2.jpg)
Как видите, они смогли адаптироваться к рынку и ведут себя более стабильно, чем алгоритмы. Проанализировав оба графика, можно увидеть, что в целом и тот и другой подход дают результат примерно равный. Поэтому, выбор стиля торговли - это личное дело каждого. Например, если вы несильны в программировании, и код навевает скуку, то лучше не связываться с алгоритмами, а работать вручную, и наоборот.
Известные мифы об алготрейдинге
Автоматическая торговля вызывает серьёзный резонанс у трейдеров, в связи с чем появилось множество мифов об алгоритмах. Обратим внимание на некоторые из них:
- Алготрейдинг не даёт прибыли и является обманом . К сожалению, многие подвержены этому мнению, в особенности те, кто сталкивался с покупкой советников, не оправдавших вложения. Опровергает это указанный выше индекс доходности алготрейдеров, которые на протяжении 20 лет зарабатывают деньги.
- Трейдинг - это психология, а не системная торговля для роботов . Как уже отмечалось, неэффективность у рынка есть, и алгоритмы для их выявления существуют.
- Тестирование систем не работает . Многие говорят, что бек-тестинг на истории не даёт никакой пользы, поскольку на реальном счёте робот будет терять всё равно. Это также заблуждение, если правильно подходить к процессу тестирования с учётом всех особенностей и нюансов, то оно играет важную роль.
- Мартингейл-системы и сетки ордеров - единственный способ заработать . Они действительно могут приносить прибыль, но недолго. Такая доходность крайне нестабильна, и обязательно приведет к сливу.
- Индикаторы не работают . Ещё одно заблуждение, индикаторы были созданы, чтобы помочь трейдеру визуально оценивать поведение цен, а не слепо надеяться на них. Поэтому, при разумном подходе они обязательно дадут результат.
Перечень не является исчерпывающим, это лишь самые известные мифы.
Заключение
Что такое алгоритмическая торговля на биржах? Алготрейдинг - это торговля с использованием автоматических запрограммированных систем для открытия сделок. Она может применяться для извлечения прибыли с рынка или для снижения ручной нагрузки на трейдера при открытии очень крупной позиции.
Существуют разные стратегии алгоритмической торговли. Это может быть арбитраж или парный трейдинг, а также множество иных вариаций. Такой стиль торговли доступен как на фондовой бирже, так и на валютном рынке Forex.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter .
Сформулированный трейдером порядок открытия и закрытия сделок, в основу которого закладывается четкий алгоритм работы автоматических либо механических торговых систем - АТС И МТС соответственно.
Специфика и применение алготрейдинга
Алготрейдинг представляет собой удобную возможность автоматизации обыденных манипуляций трейдера, в результате сокращается время, необходимое для анализа биржевой ситуации, выполнения операций, математического расчета. АТС помогают свести к минимуму влияние человеческого фактора — эмоций, паники, спешки, домыслов, которые зачастую делают убыточными даже профессиональные стратегии. Торговля основывается на существующей вероятности попадания котировок в заданный диапазон. Расчеты базируются на исторических данных относительно конкретного актива, могут включать целый набор рабочих инструментов. Вслед за непрерывными изменениями рынка разработчики алгоритмов находятся в постоянном поиске повторяющихся моделей, на основе которых формулируют правила совершения сделок, подбирают торговых роботов, помогающих реализовать этот механизм. Способы подбора моделей:
- генетический — создание алгоритмов поручается компьютерным системам;
- автоматический — используются программы, способные работать с огромными массивами данных и тестировать стратегии;
- ручной — научный подход учитывает математические и физические модели.
Ведущие алготрейдинговые компании используют тысячи инструментов, существенно снижающих вероятность ошибок и сбоев.
Типы и потенциал
Алгоритм — это набор точных инструкций, обеспечивающих достижение конкретных целей. В зависимости от последних на фондовом рынке выделяют 5 типов торговли:
- статистическая;
- алготрейдинг исполнения;
- автоматическое хеджирование;
- прямой доступ;
- высокочастотный алготрейдинг.
Рост популярности МТС и АТС среди спекулянтов обуславливается увеличением автоматизации процессов, быстротечностью валютных операций, снижением операционных затрат. Банки также стали использовать алгоритмы с целью предоставления актуальных котировок на торговых площадках, повышения скорости обновления данных, уменьшения роли ручного труда в расчете цен, минимизации транзакционных издержек.
Сущность высокочастотного алготрейдинга
Высокочастотный алготрейдинг также именуется HFT-торговлей, он наиболее востребован среди других форм автоматизированного совершения операций. Его преимуществом является возможность быстрого заключения сделок с более чем одним инструментом, здесь работа с позициями (открытие и закрытие) выполняется за доли секунды. Операции характеризуются микрообъемами, притом они уравновешиваются большим их числом. Результаты — убытки и доходы — фиксируются моментально, поэтому здесь нужна сложная техническая база и качественная прямая связь с коммуникационными шлюзами. Ключевые черты высокочастотной торговли:
- использование инновационных систем, способных исполнять позиции за миллисекунды;
- осуществление скоростных сделок, характеризующихся крупными объемами и минимально возможной прибылью;
- исключительно внутридневная торговля;
- получение прибыли из маржи и микроколебаний цен;
- использование всех категорий арбитражных сделок.
Самыми распространенными HFT-стратегиями являются маркетмейкинг, арбитраж задержек и статистический его вид, фронтраннинг. Последняя заключается в поиске объемных заявок на покупку и выставлении собственной мелкой, характеризующейся большей ценой. По мере исполнения алгоритм автоматически выставляет заявки немного выше, рассчитывая на проявление сопутствующих колебаний. Роботизированные операции, выполняемые в рамках алготрейдинга, создают около 55% ликвидности мировых фондовых бирж. С течением технологического развития инструментов процесс извлечения прибыли усложняется и дорожает. С профильного рынка постепенно вытесняются компании среднего звена, так как возрастают расходы на модернизацию технической базы, актуализацию программного обеспечения.
Если вы также решили заняться алгоритмической торговлей на фондовом рынке, то вам потребуется реализовать ряд стратегических (трейдинговых) и технических (алгоритмизация) комплексов чтобы разработать действительно качественный и конкурентоспособный алгоритм для торговли на фондовой бирже. Мы посвятим этим темам отдельную рубрику ««, в которой вы можете уже просмотреть опубликованные материалы, а также ожидать выхода новых полезных для алгоритмического трейдинга статей.
В текущей статье хотелось бы поговорить о методах, которые позволяют определять наиболее перспективные алгоритмические стратегии применимые при составлении торговых роботов. Здесь важно найти, правильно оценить и выбрать соответствующие системы, корректно определить данные для проверки, произвести оценку торговой стратегии, а также провести фазу бэктестирования и реализовать стратегию в целом.
Как разработать хорошую торговую стратегию для алгоритмизации
Прежде всего, алгоритмическая торговля на фондовом рынке начинается с детального планирования всех аспектов. Первым, из которых является стратегическая разработка стратегии.
Личные достижения, наработки и знания в торговле
Чтобы достичь успеха, занимаясь трейдингом, как самостоятельно, так и с использованием торговых алгоритмов, необходимо в полной мере определить собственные индивидуальные особенности в торговле, обозначить сильные и слабые стороны. В торговле финансовыми инструментами, потерять деньги можно крайне быстро, поэтому необходимо представлять не только стратегию, которой вы отдаете предпочтение, но и свои возможности, а также предполагаемые варианты поведения.
Очень важно уметь соблюдать торговую систему, быть достаточно терпеливым, стараться сохранять эмоциональное равновесие.
Так как в работе алготрейдинговой торговой системы используется определенный алгоритм, который, по сути, работает самостоятельно, то вы должны четко представлять, когда вы можете вмешаться в его действия, а когда лучше остаться в стороне.
В некоторые периоды, в особенности, когда спад длится продолжительное время, оставаться в стороне достаточно сложно. Тем не менее, в большинстве случаев делать это просто необходимо, так как стратегии, которые могут принести хорошие результаты, теряют свою эффективность при малейшем вмешательстве.
Еще один момент, имеющий большое значение — время.
Какую часть своего времени мы можете посвящать торговле? Полный рабочий день, каждый день? Несколько часов в неделю? От этого тоже зависит тип используемой стратегии. Так, например, тем, кто занят на полной ставке, не стоит выбирать внутридневную торговлю фьючерсами, как минимум, до тех пор, пока она не автоматизирована в полной мере.
От того, сколько времени вы готовы посвящать трейдингу, зависит и методология стратегии. В случае если данная стратегия торгуется часто и находится в зависимости от дорогостоящих новостных лет (к примеру, Bloomberg), важно с максимальным реализмом оценивать имеющиеся возможности и с успехом ими управлять.
Для тех, у кого много времени или большие практические навыки, чтобы автоматизировать торговлю, можно поработать со стратегией высокочастотной торговли, являющейся более технологичной.
В любом случае, важно проводить регулярные исследования в отношении ТС — в этом случае портфель станет прибыльным поэтапно. Большая часть стратегий со временем сходят со сцены, таким образом, исследовательская работа ведется практически постоянно.
Кроме того, нужно оценивать имеющийся торговый капитал. В отношении количественной стратегии подходящим размером капитала является объем средств, равный 50 000 долларов США. Конечно, если трейдер располагает большей суммой — это всегда выгодно отражается на его портфеле стратегий. Связано подобное, не в последнюю очередь, с тем, что как средние, так и высокочастотные стратегии предполагают операционные издержки, размер которых может достигать значительных сумм.
В том случае, если вы предполагаете начать заниматься трейдингом, располагая суммой, менее 10 000 долларов, то вам придется ограничиваться использованием низкочастотных стратегий, которые ведут торговлю одним либо двумя активами, иначе вся полученная вами прибыль пойдет на операционные расходы.
Для чего это нужно?
Все эти процедуры определения, а также сопоставления важны, поскольку алгоритмическая торговля на фондовом рынке должна строиться на знаниях и предпочтения трейдера-программиста. Не стоит пытаться создать алгоритмическую систему, в которой вы не разбираетесь. Даже похожая система на другом временном периоде будет работать иначе, и не понимая всех процессов, вы вряд ли сможете её должным образом скорректировать. Например, если вы работали в среднесрочной перспективе, а пытаетесь создать скальпинговую систему.
Лучше начинать процесс создания алгоритмических роботов для торговли на фондовом рынке именно с тех стратегий, в которых хорошо разбираетесь.
Стратегия выбрана, что дальше?
Создание алгоритмических торговых систем требует в обязательном порядке такого навыка, как программирование.
Если вы умеете программировать на C++, Java, C#, Python или R, это даст вам возможность лично заниматься созданием хранилищ данных, бэктестирования и исполняющей системы, что предоставит вам ряд преимуществ, основным из которых можно считать возможность иметь представление обо всех аспектах инфраструктуры. Благодаря этому, также у вас будет возможность производить анализ высокочастотных стратегий. В результате вы сможете не только тестировать собственноручно произведенное ПО, но и заниматься устранением ошибок. Кроме того, появится возможность больше времени уделять кодированию инфраструктур и непосредственно реализации стратегий. Вполне вероятно, что для некоторых процессов ведения расчётов, прогнозирования или отслеживания результатов тестирований гораздо удобнее будет работать с использованием Excel или MATLAB, а разработку остающихся компонентов передать на аутсорсинг. Но последнее не сильно рекомендуется, поскольку опять же вы не сможете должным образом откалибровать систему, поскольку не поймёте чужой код.
Если с программированием на текущий момент сложно, но планируете двигаться в этом направлении, можно начать с освоения , которые позволяют строить простейших роботов без знания языков программирования.
Главным образом все, кто планирует заниматься алготрейдингом, должны четко представлять себе, что именно они хотят получить в результате алгоритмической торговли. Не лишним будет определить материальный план работы, нужен ли регулярный доход, посредством которого будет извлекаться прибыль с торгового счета либо рост капитала на долгосрочной основе. Цель определит подходящую стратегию. Более высокочастотная торговая стратегия с меньшей волатильностью позволит регулярно выводить прибыль. А низкочастотная торговля, в свою очередь, доступна долгосрочным трейдерам для накапливания депозита.
![Bookmark and Share](http://s7.addthis.com/static/btn/v2/lg-share-en.gif)