Архив за месяц: Ноябрь 2020

Что такое Kill Switch и как он работает

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

Читать далее

Книга Rogue Trader и интересные технические детали из нее

На днях прочитал книгу Ника Лисона о том, как он разорил банк Barings. По этой книге снят хороший фильм, который я всем очень советую посмотреть. Действие книги происходит в 1992-1995 годах, когда Ник Лисон поступил на работу в банк Barings и был направлен на работу в Сингапур, где Barings только что открыл свой офис для совершения сделок по деривативам на сингапурской бирже SIMEX.

В Сингапуре на тот момент существовало несколько бирж. Биржа торговли акциями и облигациями Stock Exchange of Singapore (SES) была создана в 1973 году. Биржа Singapore International Monetary Exchange (SIMEX) была создана в 1984 году в тесном сотрудничестве с Chicago Mercantile Exchange (CME).

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

Читать далее

habr.com: Финансовое latency critical приложение на Java и Akka

Всем привет! В своей статье я поделюсь опытом разработки одного из финансовых приложений на Java в ТехЦентре Дойче Банка, расскажу про стек технологий, который мы используем, и каких результатов достигаем.

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

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

Чаще всего крупный родительский ордер (parent order) делится на более мелкие ордера (child orders) и эти мелкие ордера отправляются один за одним на рынок для исполнения. Алгоритмический движок (algo engine) следит за исполнением каждого мелкого ордера и в определенных случаях отменяет какой-то из них и выставляет новый child order с другими параметрами в соответствии с выбранным алгоритмом, который называют еще стратегией (strategy).

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

Читать далее

Что такое tick-to-trade и как его замерять

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

Например, приложение автоматизированной торговли слушает поток market data, анализирует его и в случае благоприятной комбинации сигналов отправляет на биржу приказ о продаже или покупке определенного финансового инструмента. Или несколько приказов. Время, прошедшее с момента поступления события в рыночных данных до момента, когда приказ сформирован закодирован и вытолкнут в сеть называется tick-to-trade. В кратце, это скорость реакции вашей системы на заданное ключевое событие.

Читать далее