Предлагаю вниманию читателей «Хабрахабра» перевод показавшейся мне интересной статьи «Latency War» с сайта quantinsti.com.
Это какое-то безумие с задержками! Дэвид Черитон однажды сказал, что если у вас есть сетевое соединение с низкой пропускной способностью, то легко сделать несколько параллельных устройств для того, чтобы создать комбинированную связь с более высокой пропускной способностью, но если ваше сетевое соединение обладает плохой задержкой, то никакие деньги не смогут превратить любое число элементов в единую связную структуру с хорошей задержкой.
Давайте посмотрим на конкретный пример, чтобы разобраться с техническим жаргоном по задержкам. Боинг 747 может взять на борт 500 пассажиров, в то время как Boeing 737 — 150. Можно ли сказать, что 747-ой Боинг в 3 раза быстрее, чем 737-ой? Boeing 747 в 3 раза больше, чем 737, но не быстрее, так как оба летят со скоростью 500 миль в час. Задержка играет жизненно важную роль в алгоритмической торговле, где скорость является ключевым фактором при осуществлении сделки.
Приведем краткое сравнение между архитектурой традиционной и автоматизированной системы.

Рисунок: Архитектура традиционной торговой системы
Традиционная торговая система будет состоять из системы для считывания данных, хранилища исторических данных, инструмента для анализа исторических данных, системы для представления торговых входных данных и системы маршрутизации заявок к бирже. Биржа отправляет тик в виде данных тиковых котировок. Сервер, в основном, используется для хранения данных, он аналогичен стационарному компьютеру. Рыночные данные извлекаются с сервера на инструмент трейдера, где логика выдает команды (купи��ь, продать, ничего не делать). Эти действия затем передаются через Менеджер Заявок на биржу. Эти действия являются последовательными. Инструмент трейдера может только обрабатывать и генерировать заявки по получении рыночных данных.
Появление прямого доступа к рынку, известного как DMA, принесло с собой радикальные изменения в архитектуре торговых систем.

Рисунок: Архитектура автоматизированной торговой системы
В традиционной системе поток данных идет от брокера к терминалу трейдера. Это было улучшено в автоматизированной торговой системе с помощью DMA. Он значительно сократил время доставки потока данных от биржи к торговому инструменту. Даже в автоматизированной торговой системе эти действия с потоком данных и генерацией торговых операций остаются последовательными. Задержку между торговым терминалом (наступлением события) и формированием заявки можно уменьшить, чтобы достичь большей эффективности. Это можно сделать путем уменьшения задержки до порядка миллисекунд и ниже. Управление рисками должно осуществляться в режиме реального времени без вмешательства человека.
Почему низкая задержка так важна? Чтобы ответить на этот вопрос, подумайте о торговле как о забеге. Чем выше скорость, по сравнению с вашими конкурентами, тем выше ваши шансы на победу. Целью в торговле является исполнение сделки по конкурентоспособной цене. Желательно уменьшить задержку, чтобы ваши конкуренты вас не обошли. Нужно внедрять правильную технологию для уменьшения задержки, так как системы с низкой задержкой стоят дорого. Следовательно, необходимо достичь правильного баланса между инвестициями в низкий уровень задержки и рентабельностью инвестиций в эту самую низкую задержку.
На снимке ниже показана задержка для различных стратегий.

Задержка может быть представлена в виде уравнения.
L = P + N + S + I + AP
Здесь Р — время прохождения сигнала отправки битов по проводу, N — обработка сетевого пакета: маршрутизация, коммутация и защита, S — время сериализации — перемещение битов по проводу (вне провода), I — время обработки прерываний: прием пакета на сервере, AP — время обработки приложения.
Как обсуждалось ранее, необходимо предпринять решительные действия, чтобы сбалансировать уровень сложности для уменьшения времени задержки и оптимизацию инвестиций в указанную сложность.
Увеличение сложности для уменьшения задержки до минимума. Необходимо, чтобы эта инвестиция совпадала с итоговой выгодой для бизнеса.

Резюмируя, можно сделать вывод о том, что малое время задержки является важным фактором в алгоритмической торговле. Низкая задержка приводит к конкурентоспособным уровням цен исполнения сделки.
Это какое-то безумие с задержками! Дэвид Черитон однажды сказал, что если у вас есть сетевое соединение с низкой пропускной способностью, то легко сделать несколько параллельных устройств для того, чтобы создать комбинированную связь с более высокой пропускной способностью, но если ваше сетевое соединение обладает плохой задержкой, то никакие деньги не смогут превратить любое число элементов в единую связную структуру с хорошей задержкой.
Давайте посмотрим на конкретный пример, чтобы разобраться с техническим жаргоном по задержкам. Боинг 747 может взять на борт 500 пассажиров, в то время как Boeing 737 — 150. Можно ли сказать, что 747-ой Боинг в 3 раза быстрее, чем 737-ой? Boeing 747 в 3 раза больше, чем 737, но не быстрее, так как оба летят со скоростью 500 миль в час. Задержка играет жизненно важную роль в алгоритмической торговле, где скорость является ключевым фактором при осуществлении сделки.
Приведем краткое сравнение между архитектурой традиционной и автоматизированной системы.

Рисунок: Архитектура традиционной торговой системы
Традиционная торговая система будет состоять из системы для считывания данных, хранилища исторических данных, инструмента для анализа исторических данных, системы для представления торговых входных данных и системы маршрутизации заявок к бирже. Биржа отправляет тик в виде данных тиковых котировок. Сервер, в основном, используется для хранения данных, он аналогичен стационарному компьютеру. Рыночные данные извлекаются с сервера на инструмент трейдера, где логика выдает команды (купи��ь, продать, ничего не делать). Эти действия затем передаются через Менеджер Заявок на биржу. Эти действия являются последовательными. Инструмент трейдера может только обрабатывать и генерировать заявки по получении рыночных данных.
Появление прямого доступа к рынку, известного как DMA, принесло с собой радикальные изменения в архитектуре торговых систем.

Рисунок: Архитектура автоматизированной торговой системы
В традиционной системе поток данных идет от брокера к терминалу трейдера. Это было улучшено в автоматизированной торговой системе с помощью DMA. Он значительно сократил время доставки потока данных от биржи к торговому инструменту. Даже в автоматизированной торговой системе эти действия с потоком данных и генерацией торговых операций остаются последовательными. Задержку между торговым терминалом (наступлением события) и формированием заявки можно уменьшить, чтобы достичь большей эффективности. Это можно сделать путем уменьшения задержки до порядка миллисекунд и ниже. Управление рисками должно осуществляться в режиме реального времени без вмешательства человека.
Почему низкая задержка так важна? Чтобы ответить на этот вопрос, подумайте о торговле как о забеге. Чем выше скорость, по сравнению с вашими конкурентами, тем выше ваши шансы на победу. Целью в торговле является исполнение сделки по конкурентоспособной цене. Желательно уменьшить задержку, чтобы ваши конкуренты вас не обошли. Нужно внедрять правильную технологию для уменьшения задержки, так как системы с низкой задержкой стоят дорого. Следовательно, необходимо достичь правильного баланса между инвестициями в низкий уровень задержки и рентабельностью инвестиций в эту самую низкую задержку.
На снимке ниже показана задержка для различных стратегий.

Задержка может быть представлена в виде уравнения.
L = P + N + S + I + AP
Здесь Р — время прохождения сигнала отправки битов по проводу, N — обработка сетевого пакета: маршрутизация, коммутация и защита, S — время сериализации — перемещение битов по проводу (вне провода), I — время обработки прерываний: прием пакета на сервере, AP — время обработки приложения.
Как обсуждалось ранее, необходимо предпринять решительные действия, чтобы сбалансировать уровень сложности для уменьшения времени задержки и оптимизацию инвестиций в указанную сложность.
Увеличение сложности для уменьшения задержки до минимума. Необходимо, чтобы эта инвестиция совпадала с итоговой выгодой для бизнеса.

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