21 июля, пятница 07:37
ДОЛЛАР 59.08 ЕВРО 68
ВЕРНУТЬСЯ ОБРАТНО
Кошелёк

АЛГОРИТМИЧЕСКАЯ ТОРГОВЛЯ НА ФОНДОВОМ РЫНКЕ: ТРЕНДЫ И ТЕХНОЛОГИИ

1 Апреля 2016
Фондовый рынок в России


Плюсы алгоритмической торговли

Увеличение числа трейдеров, использующих для торговли на бирже специальных роботов, является мировым трендом. Не все довольны этим фактом, многие считают алгоритмическую торговлю вредной спекуляцией, однако, она позволяет поддерживать ликвидность на рынках. Число высокочастотных торговцев (HFT) и их влияние на рынок определяется общими рыночными законами — мы писали об этом в топике, посвященном перспективам алгоритмической торговли в России: Помимо этого, использование технологий в торговле позволяет избавиться от одной из главных проблем, возникающих при работе на финансовом рынке — преобладания эмоций над разумом, что может приводить к ошибкам и потере денег. Кроме того, часто ситуация на фондовом рынке меняется столь стремительно, что человек может не успеть на нее среагировать — робот не столь медлителен.

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

Сколько нужно денег для торговли роботом?

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

Прежде чем бросаться в бой на реальный рынок, необходимо протестировать стратегию и рассчитать ее доходность (в принципе, это можно сделать даже в MS Excel). Эта доходность должна, в идеале, покрывать затраты на разработку и поддержание торгового робота — оплата услуг программиста или, при самостоятельной разработке, временные затраты.

На рынке есть люди, которые начинали со 100 тыс. руб. Может, они просто начинали в более удачное время. Сегодня сумма от 500 тыс. рублей до 1 млн. рублей — это входной порог, на котором уже можно начинать работу с алгоритмическими стратегиями. При этом, есть удобные инструменты, которыми можно алгоритмизировать стратегию и за 20 тыс. рублей. Их на рынке становится все больше. Они позволяют делать алгоритмы без значительных затрат на разработку.

Раундтрип заявок.

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

Возьмем протоколы, которые используются для работы с Московской биржей по спот рынку. Там есть разные способы подключения: «родной» биржевой протокол, его еще называют нативным, FIX-подключение и работа через брокерскую торговую систему. Люди, которые стараются быть первыми в «стаканах», используют FIX-подключение, реже — нативный протокол.


При подключении через брокерскую систему, скорость, как правило, ниже. Если говорить о FIX на фондовом рынке ММВБ, то раундтрип, в биржевой части составляет около 300-350 микросекунд, полный путь заявки, учитывая задержку каналов связи и на клиентском оборудовании, может выражаться в заметно больших значениях.


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

Время для выставления заявок, проходящих через торговую систему ITinvest (от момента, когда она получена от клиента на шлюз (gateway), до момента, когда клиенту отдается ответ на неё – необходимо понимать, что при работе через интернет могут быть непредсказуемые задержки на участке от шлюза брокера до оборудования клиента) составляет от 1,5 до 2,5мс. При этом для высокочастотных трейдеров существует решение, которое подразумевает работу по FIX-протоколу и подключение к серверам риск-менеджмента ITinvest. На контроль рисков уходит считанное количество микросекунд и в общем количестве биржевого раундтрипа они незаметны.

Технологии разработки.

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

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


Популярным, в последнее время, является С#. Он очень прост в разработке, и человек, даже не имеющий профильного образования и обладающий лишь базовыми навыками разработки, может освоить С# и написать алгоритм робота. Для более серьезных разработок на финансовом рынке используются C и C++, которые позволяют получить приемлемую скорость при оптимальных затратах (в тяжелых случаях дело доходит и до Ассемблера). Начинающие разработчики биржевого софта обычно используют C#.

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

С одной стороны, плюс подобных решений в том, что они экономят время разработки. С другой — это «черный ящик» со своей логикой, и разобраться в некоторых продуктах без консультации с их создателями, действительно, сложно. Но тот факт, что они облегчают разработку торговых роботов несомненен. У большинства брокеров есть удобный интерфейс, который позволяет быстро и удобно написать приложение. Например, у ITinvest есть API SmartCom.

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

Консультант рубрики www.itinvest.ru 


Поделиться:
?>