Barfinex

Как работает Barfinex

Inspector — обзор риск-менеджмента

Что делает Inspector, откуда берёт данные, как установить и настроить, что видно в Studio и в логах.

Что такое Inspector?

Inspector — отдельный сервис Barfinex для риск-менеджмента:

  • Следит за позициями и держит их под контролем
  • Выставляет и сопровождает стоп-ордера (стоп-лосс, тейк-профит)
  • Ограничивает убытки и публикует события риска в шину при срабатывании политик

Он различает:

  • Legacy-позиции — Открыты до текущей сессии Inspector. Для них Inspector только уведомляет (например, в Telegram); не закрывает и не меняет стопы автоматически.
  • Позиции под управлением (runtime) — Открыты во время работы Inspector. Для них — полный контроль: выставление стопов, трейлинг, закрытие через API Provider.

Inspector работает отдельным процессом или контейнером. Подключается к шине событий для входящих данных и к REST API Provider для исполнения ордеров и снимков счёта. Регистрируется в Provider (реестр приложений) с типом inspector, чтобы Studio и API-клиенты обращались к нему через прокси Provider.


Откуда Inspector берёт данные

Шина событий (каналы)

Inspector подписывается на:

  • Рыночные данные Provider — Сделки, стакан, свечи, инструменты, цены
  • Счёт и ордера Provider — События счёта, создание и закрытие ордеров
  • Запросы детектора по позициям — Открыть, закрыть, уменьшить, развернуть

По ним он обновляет кэш цен, стакан (спред), список символов и позиций, пересчитывает риск и для runtime-позиций при необходимости выставляет/обновляет стопы или закрывает позиции.

REST API Provider

  • ИсполнениеPOST /api/orders для открытия/закрытия рыночных и защитных ордеров (STOP_MARKET, TAKE_PROFIT_MARKET). Источник ордера — inspector.
  • Данные счётаGET /api/accounts/:connectorType/:marketType для снимка счёта и позиций при старте сессии и обновлении состояния.

Inspector не вызывает исполняющие эндпоинты Detector; все торговые действия идут через Provider.


Что Inspector публикует

  • Превышение лимита риска — При срабатывании политики throttle (дневной убыток, просадка, лимит убыточных сделок, серия убытков и т.д.). В payload может передаваться указание Detector приглушить генерацию сигналов.
  • Kill switch — Аварийное отключение при реализации.
  • Другие типы событий риска по мере развития продукта.

Установка и запуск

  1. Окружение — Та же шина событий и сеть, что у Provider (например, общая Docker-сеть). Задать хост/порт шины, URL API Provider и при необходимости API-токен.
  2. Регистрация — При старте Inspector регистрируется в Provider (register + heartbeat). Настраиваются ключ приложения (по умолчанию inspector), публичный хост и порт API (по умолчанию 8008).
  3. Docker — Использовать образ Barfinex Inspector в docker-compose, в той же сети, что Provider и шина, с тем же env-файлом.
  4. Конфиг — Параметры риска и торговли (стоп-лосс %, тейк-профит %, лимиты и т.д.) задаются в конфиге Inspector (например config.inspector.json). Основные опции описаны в Политики риска Inspector.

Что видно в Studio и в логах

  • Studio — Дашборд риска и аудит доступны через прокси Provider (дашборд, KPI, runtime-позиции, аудит). События Inspector в реальном времени приходят в Studio через WebSocket Provider (/ws).
  • Логи — В логах процесса/контейнера Inspector видны старт, подключение к шине и Provider, обработка событий, выставление стопов, срабатывания throttle и уведомления в Telegram (если включены).

Быстрая проверка после установки

  • Вызвать GET /api/inspectors/<appKey>/health через Provider (или напрямую на порт 8008). Ожидается ok: true и информация о коннекторах.
  • В логах Inspector — без постоянных ошибок подключения к шине и API Provider.
  • В логах Provider — появление heartbeat Inspector в реестре приложений.

Дальше

Предыдущая
Advisor — обзор

Давайте свяжемся

Есть вопросы или хотите узнать больше о Barfinex? Напишите нам.