Задержка — не одна цифра ping. Возможность проходит через данные, расчёт, сеть, очередь биржи и подтверждение; измерять нужно весь путь.

01Разложить сделку по времени

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

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

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

02Возраст данных важнее частоты сообщений

Поток может присылать много обновлений с задержкой. Алгоритм должен считать возраст события в момент решения, а не довольствоваться фактом активного WebSocket.

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

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

03Расчёт тоже находится на критическом пути

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

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

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

Данные, инфраструктура и момент принятия решения рассматриваются вместе.

04Сеть и расположение сервера

Физическое расстояние задаёт нижнюю границу задержки. Но стабильный маршрут с небольшим разбросом может быть полезнее минимального случайного значения.

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

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

05Очередь биржи нельзя контролировать

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

Состояние HTTP-запроса не равно состоянию ордера. Подтверждение принятия и событие исполнения обрабатываются отдельно.

Если ответ потерян, система ищет заявку по клиентскому идентификатору. Повтор без сверки опаснее дополнительной задержки.

06Измерить время жизни возможности

На записанном потоке отметьте появление спреда и момент, когда он становится меньше издержек. Распределение этого времени задаёт бюджет задержки.

Полезно моделировать вход через 10, 50, 100 и 250 миллисекунд. Если результат исчезает на реалистичном уровне, стратегия существует только в идеальном тесте.

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

Практический контур: исполнение, наблюдаемость и заранее заданные ограничения.

07Политика при опоздании

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

Если первая нога уже исполнена, приоритет меняется с прибыли на ограничение направленного риска. Допустимая цена хеджа задаётся заранее.

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

08Какие метрики наблюдать

Храните медиану, p95 и p99 для каждого этапа, долю устаревших сигналов и время между двумя исполнениями. Среднее скрывает редкие, но дорогие события.

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

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

Продолжение — в Telegram

Код, видео, наблюдения за рынком и ответы на вопросы.

Перейти в канал

Материал носит информационный характер и не является индивидуальной инвестиционной рекомендацией. Торговля связана с риском потери капитала.