Как стать автором
Обновить
14
0

Пользователь

Отправить сообщение

Онлайн-алгоритмы в высокочастотном трейдинге: проблемы конкуренции

Время на прочтение14 мин
Количество просмотров16K


Высокочастотный трейдинг [англ. High-frequency trading, HFT-trading] сегодня оказывает большое влияние на современные финансовые рынки. Еще 20 лет назад большая часть торгов проходила на биржах, к примеру, на Нью-Йоркской фондовой бирже, где люди, одетые в яркие костюмы, активно жестикулировали и выкрикивали свои предложения о покупке или продаже ценных бумаг. Сегодня торговля, как правило, осуществляется с помощью электронных серверов в дата-центрах, где компьютеры обмениваются предложениями о покупке и продаже путем передачи сообщений по сети. Этот переход от торговли в операционном здании биржи к электронным платформам был особенно выгоден HFT-компаниям, которые инвестировали много средств в необходимую для торговли инфраструктуру.

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

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

Онлайн-алгоритмы представляют собой обычный класс алгоритмов, которые можно применять в HFT-трейдинге. В таких алгоритмах новые входные переменные поступают последовательно. После обработки каждой новой входной переменной алгоритм должен принять конкретное решение, например, выставлять ли заявку на покупку/продажу. В этом и состоит главное отличие онлайн-алгоритмов от офлайн-алгоритмов, в которых считается, что все входные данные доступны в момент принятия решения. Большинство задач практической оптимизации в таких областях, как информатика и методы исследования операций – это именно онлайн-задачи [1].
Читать дальше →

Манипулирование ценами акций с помощью поддельных новостей: Как не попасться на удочку

Время на прочтение5 мин
Количество просмотров19K


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

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

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

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 5 (и последняя)

Время на прочтение8 мин
Количество просмотров12K


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

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

Примечание: В качестве примера автор использует API зарубежной компании Interactive Brokers, отсюда названия обсуждаемых модулей (IBExecutionHandler и т.п.). У ITinvest есть собственный API-интерфейс SmartCOM, который может быть использован при создания систем, подобных описываемой.
Читать дальше →

Что нового: 3 технологических тренда алгоритмической торговли

Время на прочтение2 мин
Количество просмотров13K


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

Несколько месяцев назад была опубликована презентация основателя финансового сервиса IKnowFirst Липы Ройтмана (Lipa Roitman) и руководителя проекта Ярона Голгера (Yaron Golgher) о трендах и тенденциях алгоритмической торговли. Мы представляем вашему вниманию главные мысли из этого документа.
Читать дальше →

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

Время на прочтение4 мин
Количество просмотров28K


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

Давид Монтаг (David Montaque), выпускник Стэнфордского университета и сотрудник компании Palantir Technologies, написал статью, в которой описал создание алгоритмических стратегий для торговли фьючерсами на основе исторических данных. Для предсказания будущей цены и волатильности Монтаг использовал техники машинного обучения. Мы представляем вашему вниманию описание эксперимента и выводы, к которым пришел исследователь.
Читать дальше →

Русские хакеры взломали Dow Jones и завладели инсайдерской информацией

Время на прочтение4 мин
Количество просмотров23K


По сообщению издания Bloomberg, группа хакеров (предположительно, российских) осуществила успешную атаку на серверы компании Dow Jones & Co. В итоге злоумышленникам удалось похитить чувствительную финансовую информацию, которая может представлять интерес для участников биржевых торгов, до ее публикации.
Читать дальше →

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 4

Время на прочтение7 мин
Количество просмотров9.6K


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

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

Создание торговых роботов: 11 инструментов разработки

Время на прочтение6 мин
Количество просмотров124K


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

Сегодня мы представляем вашему вниманию подборку сред программирования и инструментов для создания торговых роботов.
Читать дальше →

How-to: Геймификация и биржевая торговля

Время на прочтение4 мин
Количество просмотров10K


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

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

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

Сбои на Московской бирже: Проблемы и решения

Время на прочтение3 мин
Количество просмотров9.7K


Ранее в нашем блоге мы рассказывали о причинах «падений» мировых бирж. Однако ошибки в работе случаются далеко не только на Nasdaq или NYSE, но и на Московской бирже. За последний год на российском фондовом рынке было зафиксировано несколько серьезных сбоев. Журналисты издания РБК поговорили с техническими руководителями Биржи и выделили несколько причин участившихся ошибок.
Читать дальше →

Онлайн-трейдинг: Как стать разработчиком систем для торговли на бирже

Время на прочтение5 мин
Количество просмотров23K


Фондовый рынок — высокотехнологичная отрасль. Для того, чтобы инвестор мог не вставая с дивана купить акции той или иной компании, задействуются различные протоколы передачи финансовых данных (например, FIX, FAST, Plaza II), терминалы, брокерские и биржевые торговые системы, а для обеспечения работы всей этой экосистемы используется передовое «железо».

При этом, для того, чтобы поучаствовать в интересных проектах инженеру вовсе не обязательно ехать за границу — новые технологии активно внедряются и на российском фондовом рынке. Мы решили подробнее рассказать о двух таких проектах — торговом терминале SmartX и брокерской системе Matrix, и пригласить заинтересованных хабраюзеров принять участие в их разработке.
Читать дальше →

Немного истории: Как развивались биржевые технологии

Время на прочтение6 мин
Количество просмотров16K


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

За несколько сотен лет биржи прошли путь от публикации цены дважды в неделю на небольших клочках бумаги — как это было, например, в Лондоне, где брокеры собирались в кофейне «У Джонатана», до настоящего технологического большого взрыва в 80-е годы прошлого века.
Читать дальше →

Высокочастотный трейдинг: Руководство от героя книги Flash Boys

Время на прочтение15 мин
Количество просмотров33K


Примечание переводчика: Ранее в нашем блоге на Хабре мы рассматривали различные этапы разработки торговых систем (есть и онлайн-курсы по теме), и даже описывали разработку событийно-ориентированного бэктест-модуля на Python. Сегодня мы представляем вашему вниманию краткое руководство по высокочастотному трейдингу от Брэда Кацуямы (Brad Katsuyama) — знаменитого кванта и героя бестселлера Майкла Льюса "Flash Boys: A Wall Street Revolt" (мы публиковали в блоге адаптацию этого произведения).

В выпуске передачи Wall Street Week Брэд Кацуяма рассказал о высокочастотном трейдинге (HFT) и структуре рынка, а мы составили обзор на тему HFT-трейдинга и финансового регулирования с точки зрения процесса исполнения ордеров на бирже. Видео доступно по ссылке.
Читать дальше →

Эволюция торговых терминалов: Мобильный-трейдинг в эпоху тач-интерфейсов

Время на прочтение2 мин
Количество просмотров11K


Ранее в нашем блоге мы рассказывали об эволюции интерфейсов мобильных терминалов на примере приложений ITinvest — по сравнению с выпущенным в 2003 году приложением для телефонов с Windows Mobile 2003, интерфейс программ для iOS и Android в 2015 году стал значительно проще (меню и кнопки стали больше, число настроек сократилось).

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

Одним из вариантов подобного упрощения, помимо уменьшения количества элементов на экране, является адаптация приложения к работе в «эпоху touch». Именно по этому пути пошли разработчики торгового приложения Robinhood.
Читать дальше →

Событийно-ориентированный бэктестинг на Python шаг за шагом. Часть 3

Время на прочтение10 мин
Количество просмотров14K


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

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

Разработка торговых роботов: поиск рыночных неэффективностей. Часть 2

Время на прочтение5 мин
Количество просмотров10K
Примечание переводчика: Ранее в нашем блоге на Хабре мы рассматривали различные этапы разработки торговых систем (есть и онлайн-курсы по теме), и даже описывали разработку событийно-ориентированного бэктест-модуля на Python. Сегодня мы представляем вашему вниманию продолжение рассказа о том, как HFT-трейдеры в процессе разработки моделируют поведение людей, которые будут противостоять их торговым роботам на бирже.



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

Если говорить о стереотипах об HFT-трейдинге, то первое, что приходит на ум (после частых отказов) – это небольшая средняя величина сделки [1]. Считается, что трейдеры любого типа, использующие в своей работе алгоритмы, размещают небольшие «выжидающие» ордера. HFT маркет-мейкеры поступают так, потому что хотят выборочно торговать с некрупными агрессивными игроками во избежание потери ликвидности на всем ценовом уровне. Алгоритмы, повышающие ликвидность, размещают малые ордера, так как им нужно скрыть свое намерение торговать более крупными объемами, чтобы максимально долго удерживать цену на нужном уровне.
Читать дальше →

Алгоритмическая и автоматизированная торговля: 13 книг по теме

Время на прочтение4 мин
Количество просмотров35K


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

Сам термин «Алгоритмическая торговля» сейчас настолько на слуху, что некоторые нерадивые авторы пользуются этим и втискивают его в название своих книг, чтобы привлечь читательское внимание.

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

Разработка торговых роботов: поиск рыночных неэффективностей

Время на прочтение9 мин
Количество просмотров17K
Примечание переводчика: Ранее в нашем блоге на Хабре мы рассматривали различные этапы разработки торговых систем (есть и онлайн-курсы по теме), и даже описывали разработку событийно-ориентированного бэктест-модуля на Python. Сегодня речь пойдет о том, как HFT-трейдеры в процессе разработки моделируют поведение людей, которые будут противостоять их торговым роботам на бирже.



Большинство трейдеров считает, что лучшие сделки должны совершаться при участии людей, выступающих в роли контрагентов, не при помощи компьютеров. Под компьютерами я имею в виду компьютерное исполнение ордера: не только алгоритмы высокочастотной торговли (HFT), но и некоторые другие виды алгоритмов исполнения ордеров. Высокочастотные трейдеры выходят на рынок, только когда уверены, что ордер принесет прибыль, их алгоритмы исполнения в основном работают в случае движения большого объема акций, поэтому даже если алгоритм недостаточно эффективен, он все равно может составить [человеку] опасную конкуренцию. Люди же, в свою очередь, действуют недостаточно точно при установлении цены (установление мгновенной цены с точностью до нескольких знаков после запятой – не самая лучшая трата времени для трейдера), еще более неточно – при назначении времени исполнения своих ордеров и их отмене (человеку присущи медлительность и невнимательность).
Читать дальше →

Разработка торговых роботов: история проекта StockSharp

Время на прочтение4 мин
Количество просмотров22K
В нашем блоге мы много пишем о технологиях, связанных с фондовым рынком (например, соответствующих протоколах передачи данных — раз, два, три). Существует огромное количество биржевого софта, процесс создания которого довольно интересен. Ранее мы рассказывали о разработке торгового терминала SmartX, а сегодня представляем вам историю разработчиков проекта по созданию торговых роботов StockSharp.



В этой статье мы расскажем о нашем продукте StockSharp, который создаем уже долгие годы. Зачем мы это делаем, кому он нужен, какие преимущества и какие перспективы. Статья разбита на отдельные разделы, но читать лучше по порядку.
Читать дальше →

Алгоритмическая и автоматизированная торговля: Введение

Время на прочтение8 мин
Количество просмотров22K


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

Цзы Лу спросил: «Вэйский правитель намеревается привлечь Вас к управлению государством. Что Вы сделаете прежде всего»?
Учитель ответил: «Необходимо начать с исправления имен».


Для начала давайте представим главных участников процесса биржевых торгов:

  • Клиент – инвестор, принимает инвестиционные решения и отдает приказы (ордера) брокеру-посреднику
  • Брокер – посредник, является членом биржи и принимает приказы от клиента и передает их для исполнения на биржу, получает от биржи результаты и передает их клиенту (пример такого брокера — это как раз ITinvest — прим. ред.)
  • Биржа – получает приказы от членов-брокеров, осуществляет торги, отправляет брокерам отчеты по торгам

Мы рассматриваем случай, когда брокер является чистым агентом, т.е. средством передачи ордеров клиента на биржу и отчетов – обратно. Брокеры-агенты (agency brokers) зарабатывают исключительно на комиссии, которую платит клиент брокеру за исполнение ордеров.
Читать дальше →

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность