Что такое OMS (Order Management System)

Система управления ордерами (Order Management System, сокращенно OMS) — ключевая система участника биржевых торгов, сердце его торговой системы. У разных типов участников она играет разные роли, но общее назначение OMS — вести учёт и контроль всех транзакций, всех действий по ордерам.

OMS различаются по своему предназначению и функционалу в зависимости от того, для какого участника биржевого бизнеса она предназначена. Читать далее

Принципы написания торговых low-latency приложений на Java

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

Статья ориентирована на программистов, чтобы помочь им в изучении Java, понимании JVM и развитии навыков программирования.

Читать далее

Сайты о Java и финансах

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

Читать далее

Симвология: CUSIP, SEDOL, RIC, ISIN

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

«Что» — обозначает сам предмет сделки — название ценной бумаги. Чтобы не получилось так, что устно по телефону клиент сказал купить акции «Гугла», а брокер купил акции «Мугла», ордера передаются электронно, а предмет сделки имеет некий универсальный идентификатор, который однозначно определяет ценную бумагу для обоих сторон сделки.

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

Читать далее

Алгоритмическая торговля на бирже работает, но это не то, что вы думаете. Разрешаем путаницу с термином «алгоритмическая торговля»

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

Читать далее

Пулы объектов для достижения высокой производительности в Java

В торговых приложениях создается множество объектов в реальном времени. Скажем, каждый новый ордер от клиента создает объект Order. Исполнение ордера на рынке порождает новый объект Fill или Partial Fill. И если поток ордеров очень высок во время активного торгового дня, это создание новых объектов оказывает:

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

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

Читать далее

26 мая Нью-Йоркская биржа открывает торговый зал

Нью-Йоркская биржа (NYSE) откроет 26 мая торговый зал для ограниченного числа трейдеров. Торговый зал был закрыт 23 марта из-за эпидемии коронавируса, и вот спустя почти два месяца торговый зал снова откроется.

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

8 июня свой торговый зал откроет Чикагская биржа опционов (CBOE). Еще один пример верности вековым традициям торговли в стиле «open outcry» (торговля лицом к лицу, где информация между участниками торгов передается путем выкриков и сигналов руками).

 

Дилемма трейдера и алгоритмическая торговля

Когда трейдер получает от институционального клиента ордер большого размера, перед ним стоит классическая проблема, которая называется trader’s dillema.

Вариант 1: Весь большой ордер на продажу (Sell order) выбросить на рынок сразу. Это увеличит предложение на рынке, а увеличение предложения неизбежно приведет к падению цены, т.е. ордер «сдвинет рынок». В результате акции инвестора будут проданы за меньшую цену, чем он ожидал.

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

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

Читать далее

Интересное наблюдение о Cisco

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

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

Размышления о программной инженерии

«Программная инженерия — это приложение инженерных принципов к разработке программного обеспечения». В данной статье хочу выразить пару своих мыслей по поводу software engineering и свое видение этого предмета.

Читать далее