VIZANIXРазработка торгового ПО
Исследование и проверкаИсполнение7 мин чтения

Задержка: сколько она реально стоит и когда за неё стоит платить

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

Инженеры Vizanix · об авторе

МАТЕРИАЛ
7 минвремя чтения
РАЗДЕЛ
Исследование и проверка
ОПУБЛИКОВАНО
2026-08-28
ГЛАВ
6
ЧИТАТЬ ДАЛЬШЕ
3
ЯЗЫК
написано на русском
Инженерный разбор, а не пересказ документации.
LATENCYSLIPPAGEQUEUECOLOCATIONBUDGET

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

Куда уходит время

От события до того, как ваш ордер лёг в стакан:

УчастокТипичный порядок величиныЧто на него влияет
Площадка → ваш хостДесятки мс между регионами, единицы рядомГеография, сетевой маршрут
Разбор и обновление состоянияДесятки мкс — единицы мсЯзык, аллокации, структуры данных
Решение стратегииМкс — сотни мсСложность модели, блокирующие вызовы
Проверки риска и объёмМксНикогда не должно быть узким местом
Сериализация, подпись, отправкаСотни мксПодпись, переиспользование соединений
Хост → площадка и матчингДесятки мс между регионамиГеография, нагрузка площадки

Обратите внимание, где живёт разброс. Сетевые участки велики, но стабильны; участок стратегии — тот, что иногда занимает в сто раз дольше обычного, и происходит это ровно тогда, когда на рынке что-то происходит.

Значение имеет хвост, а не среднее

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

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

Слиппедж — это цена задержки

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

python
# Логируйте на каждом исполнении. Это единственная честная цифра слиппеджа.
slip_bps = (fill_price - decision_mid) / decision_mid * 10_000
if side == "sell":
    slip_bps = -slip_bps

metrics.observe("slippage_bps", slip_bps,
                tags={"symbol": symbol, "urgency": order_type})

Собранное на нескольких тысячах исполнений, это распределение показывает, во что задержка обходится на самом деле. Сравните его с допущением в бэктесте. Если бэктест предполагал 1 базисный пункт, а реальность даёт 4, то стратегия, которую вы валидировали, — не та, что у вас работает.

Решайте по бюджету, а не по вкусу

Посчитайте скорость распада преимущества для вашего сигнала — сколько ожидаемого хода уходит за 10 мс, 100 мс, за секунду — и сравните со стоимостью улучшения. Конкретно:

  • Сигналы на закрытых свечах с интервалом в минуты: сто миллисекунд — это шум. Тратиться здесь на колокацию бессмысленно.
  • Дисбаланс стакана и сигналы потока: распад измеряется десятками миллисекунд. Расположение сервера начинает иметь значение.
  • Маркет-мейкинг: вы непрерывно подвержены adverse selection, и задержка отмены напрямую определяет, как часто вас снимают.
  • Межбиржевой арбитраж: спред, который вы ловите, существует ровно столько, сколько нужно кому-то быстрее, чтобы его забрать.

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

Сначала бесплатные улучшения

  1. Переиспользуйте соединения. TLS-рукопожатие на каждый запрос — самая частая самонанесённая рана.
  2. Никогда не блокируйте цикл событий логированием, диском или API чата.
  3. Преаллоцируйте. Не аллоцируйте на горячем пути.
  4. Перенесите хост в тот же регион, что и площадка, прежде чем думать об экзотике.
  5. Дайте отменам приоритет над обновлением котировок в очереди запросов.
  6. И только потом обсуждайте более быстрое железо.

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

Проверьте чувствительность, потом решайте

Прежде чем что-то тратить, прогоните бэктест по сетке задержек. Если прибыльность ровная от 10 до 200 мс — задержка не ваша проблема, и вы только что сэкономили бюджет. Если она рушится — вы узнали, что стратегия является ставкой на инфраструктуру. Это законная ставка, но она должна быть осознанной.

Статья описывает инженерную практику. Это не инвестиционная рекомендация. Vizanix разрабатывает программное обеспечение и не обещает торговую доходность.

Блог

Читать дальше

Проверка · 8 мин

Бэктест и paper trading доказывают разные вещи

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

Хотите такое у себя?

Мы пишем о том, что строим. Если нужно построить — напишите, разбор бесплатный.

Бриф

Получить оценку проекта

Четыре вопроса и контакт. Предоплата для разговора не нужна — если задача не наша, скажем сразу.

01Что вам нужно
02Биржа
03Рынок
04Стратегия
05Контакты

Проще написать напрямую? Telegram @vx_ceo

Обсудить систему