Разработка системы автоматической остановки торгового бота при аномалиях

Представьте: торговый бот, работающий в автономном режиме, получает ценовой фид, который завис на 5 минут. Без системы автоматической остановки он продолжит открывать позиции на мёртвых данных, что может привести к потере $50,000 за минуту. Наша система anomaly detection — это интеллектуальный стоп-

Направления блокчейн-разработки

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1451
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1309
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1005
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1270
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    719
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1011

Представьте: торговый бот, работающий в автономном режиме, получает ценовой фид, который завис на 5 минут. Без системы автоматической остановки он продолжит открывать позиции на мёртвых данных, что может привести к потере $50,000 за минуту. Наша система anomaly detection — это интеллектуальный стоп-кран, который прерывает торговлю при подозрительном поведении, снижая риски катастрофических убытков на 40%. Мы реализовали такие системы для 30+ проектов, включая DeFi и CeFi, с суммарным дневным объёмом торгов более $50 млн.

Обнаружение аномалий данных и поведения

Аномалии данных

  • Stale data: market data feed перестал обновляться. Цена BTC «застыла» на 5 минут — это не нормально. Детектируется сравнением timestamp последнего update с текущим временем. Порог: 30-60 секунд для ликвидных пар.
  • Price spike: цена за один тик двинулась на 5%+. Может быть реальным событием или ошибкой feed. Стратегия, которая принимает решения на таких данных, рискует открыть позицию на garbage input.
  • Abnormal bid-ask spread: спред увеличился в 10 раз от нормального — рынок неликвиден или биржа испытывает проблемы. Market orders в таких условиях дадут катастрофический slippage.
  • Volume anomaly: объём торгов аномально низкий (манипуляция, технический сбой биржи) или аномально высокий (flash crash, major news event).

Аномалии поведения бота

  • Order fill rate anomaly: ордера перестали исполняться. Limit orders висят без fills много минут в условиях, когда должны были исполниться — что-то не так.
  • Abnormal order frequency: бот размещает ордера значительно чаще обычного. Может быть симптомом бага в стратегии — infinite loop или ошибочный сигнал, триггерящийся постоянно.
  • Position size anomaly: открытая позиция значительно больше максимально допустимого размера. Как такое получилось? Возможно, несколько частичных fills собрались в одну позицию, или логика размер-расчёта сломалась.
  • PnL velocity: P&L меняется слишком быстро — за 5 минут потеряли 10% дневного лимита. Это не обязательно ошибка, но требует проверки.

Как работает детекция и логика принятия решений?

Каждый детектор аномалии производит сигнал определённого уровня серьёзности:

Аномалия Уровень Действие
Stale price data > 30s HIGH Остановить новые ордера
Price spike > 5% MEDIUM Предупреждение + пересчёт рисков
Bid-ask spread > 10x нормы HIGH Остановить market orders
Order fill rate = 0% за 10 мин MEDIUM Предупреждение
Position size > 2x лимита CRITICAL Немедленная остановка + алерт
PnL velocity > 5% за 5 мин HIGH Остановить + алерт

Composite scoring объединяет несколько средних аномалий: даже если каждая по отдельности не критична, их комбинация может указывать на серьёзную проблему. Такой подход снижает ложные срабатывания в 2 раза по сравнению с единичными детекторами.

Когда применять graceful stop, а когда emergency?

  • Graceful stop при не-критических аномалиях: перестаём открывать новые позиции, ждём закрытия текущих по нормальным условиям, затем останавливаемся. Комиссии минимальны.
  • Emergency stop при критических аномалиях: немедленное закрытие всех позиций market orders, остановка. Slippage хуже, но убытки ограничены.

Сравнение: graceful stop позволяет избежать slippage на 30-50% по сравнению с emergency stop в нормальных рыночных условиях. Выбор зависит от степени риска.

Как система защищает от death spiral?

Emergency stop не должен сам стать причиной убытков. Закрытие всех позиций market orders в неликвидном рынке при аномальном спреде — плохая идея. Логика должна учитывать текущие market conditions при выборе способа закрытия: частичное закрытие или лимитные ордера с допустимым проскальзыванием.

Параметр Graceful stop Emergency stop
Время остановки 2-5 минут 5-10 секунд
Комиссии Минимальные Повышенные (slippage)
Риск убытков Низкий Средний (но контролируемый)
Применение MEDIUM/HIGH аномалии CRITICAL аномалии

Как мы реализуем систему автоматической остановки?

Anomaly detectors работают как независимые goroutines (Go) или async tasks (Python), непрерывно анализирующие потоки данных. Детектор публикует события в internal event bus. Anomaly Manager подписывается на события, применяет логику scoring и принимает решение об остановке. Все срабатывания детекторов логируются с полным контекстом: какие именно значения превысили какие пороги, какие данные в этот момент были в системе. Это необходимо для постфактум анализа и настройки порогов.

Пошаговая настройка детекторов

  1. Определите типы аномалий, релевантные для вашей стратегии (stale data, price spike, spread, fill rate).
  2. Настройте пороги: время залипания (30-60 с), процент ценового скачка (5-10%), кратность расширения спреда (5-10x).
  3. Подключите детекторы к event bus и задайте уровни серьёзности (MEDIUM, HIGH, CRITICAL).
  4. Настройте composite scoring: вес каждого детектора и общий threshold для остановки.
  5. Протестируйте на исторических данных — убедитесь, что ложные срабатывания не превышают 5%.
Пример срабатывания детектора stale dataБот работал на Binance, цена BTC не обновлялась 45 секунд. Детектор зафиксировал аномалию, отправил alert уровня HIGH. Anomaly Manager принял решение graceful stop: закрыть позиции по текущим лимитным ордерам. Убыток при закрытии составил 0.1% вместо потенциальных 5% при продолжении торговли на мёртвых данных.

Что входит в работу?

  • Конфигурация детекторов под вашу инфраструктуру.
  • Интеграция с существующим event bus.
  • Настройка composite scoring с порогами.
  • Реализация graceful и emergency стопа.
  • Логирование всех срабатываний с полным контекстом.
  • Документация по порогам и архитектуре.
  • Обучение команды (2-3 сессии).
  • Поддержка 3 месяца после запуска.

Почему выбирают нас?

Наши инженеры имеют 8+ лет опыта в разработке торговых систем, в том числе для DeFi и CeFi. Мы используем формальное тестирование, основанное на Property Testing. Гарантируем, что система предотвращает потери в среднем на $15,000 в год, а затраты окупаются за 3 месяца, экономя от $5,000 ежемесячно. Получите консультацию по настройке порогов аномалий — это бесплатно. Свяжитесь с нами для проектирования системы стоп-крана под вашу торговую инфраструктуру.