Barfinex

Быстрый старт

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

Начните с развёртывания Barfinex Provider — сервиса рыночных данных и расширенного API для работы с вашим торговым счётом.

🚀 Быстрый запуск провайдера

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

Здесь приведен минимальный путь «с нуля до работающего сервиса».

💡 Требования: установлен Docker и Docker Compose, доступ к терминалу, права на запуск контейнеров.


1. Что такое Docker Compose и зачем он нужен

Для развёртывания Barfinex Provider (локально или на сервере) мы используем файл docker-compose.yml.

Docker Compose — это инструмент, который позволяет описать несколько связанных сервисов (Barfinex Provider, MongoDB, Redis, Portainer и т.д.) в одном YAML-файле и запускать их одной командой:

docker compose up -d

В docker-compose.yml описано:

  • какие контейнеры поднять (Barfinex Provider, Mongo, Redis и инструменты для администрирования);
  • какие порты пробросить наружу;
  • какие переменные окружения передать;
  • какие конфиги и данные монтировать в контейнеры.

Подробный разбор всех полей и сервисов см. на отдельной странице внутри этого файла:
👉 Разбор docker-compose.yml для Barfinex Provider


2. Получить актуальный docker-compose и исходный код

Рекомендуемый способ — взять свежую версию из открытого репозитория barfinex/app-provider.
Так вы одновременно получаете:

  • актуальный docker-compose.yml;
  • исходный код Barfinex Provider;
  • примеры конфигурации и структуру проекта.
git clone https://github.com/barfinex/app-provider.git
cd app-provider

В корне репозитория вы найдёте файл docker-compose.yml, который используется в шагах ниже.


3. Настройка окружения (.env)

Создайте файл .env на основе шаблона:

cp .env.example .env

Откройте .env в любом редакторе и заполните ключевые переменные:

NODE_ENV=production

# Подключение к MongoDB
MONGO_HOST=mongodb://mongo:27017

# Подключение к Redis
REDIS_HOST=redis://redis:6379

# Ключи доступа к Binance
BINANCE_API_KEY=your_key
BINANCE_API_SECRET=your_secret
TESTNET_BINANCE_SPOT_KEY=your_testnet_key
TESTNET_BINANCE_SPOT_SECRET=your_testnet_secret

💡 Имена хостов (mongo, redis) должны совпадать с названиями сервисов в docker-compose.yml.
Подробное описание всех переменных окружения смотрите в README репозитория и комментариях к .env.example.


4. Запуск Barfinex Provider через Docker Compose

Убедитесь, что вы находитесь в корне проекта (app-provider), где лежит docker-compose.yml:

docker compose up -d

Флаг -d запускает все сервисы в фоне.


5. Проверить, что всё запустилось

Посмотреть статусы контейнеров:

docker compose ps

Ожидаемый результат — все сервисы в статусе Up, например:

NAME                      IMAGE                               STATUS          PORTS
provider                  ghcr.io/barfinex/provider:latest    Up              0.0.0.0:3001->3001/tcp
mongo                     mongo:6                             Up              0.0.0.0:27017->27017/tcp
mongo-express             mongo-express:latest                Up              0.0.0.0:8081->8081/tcp
redis                     redis:7                             Up              0.0.0.0:6379->6379/tcp
redis-commander           rediscommander/redis-commander      Up              0.0.0.0:8082->8082/tcp
portainer                 portainer/portainer-ce              Up              0.0.0.0:9000->9000/tcp
postgres                  postgres:15                         Up              0.0.0.0:5432->5432/tcp

6. Просмотр логов Barfinex Provider

Для оперативной диагностики используйте:

docker compose logs -f provider
  • -f — потоковый вывод логов в реальном времени;
  • по логам можно быстро понять, на каком этапе инициализации возникла проблема
    (HTTPS, конфиг, Redis, Binance, WebSocket и т.д.).

Подробную расшифровку сообщений логов см. ниже в разделе
👉 Подробное объяснение логов Barfinex Provider


🧩 Структура запуска Barfinex Provider

При старте Barfinex Provider проходит несколько стадий инициализации:

ЭтапКомпонентНазначение
1️⃣HTTPS InitializationЗагрузка SSL-сертификатов и включение TLS
2️⃣Configuration LoadЗагрузка и валидация JSON-конфигов
3️⃣Dependency GraphИнициализация NestJS модулей
4️⃣Redis ConnectionПодключение к шине событий
5️⃣Binance API SetupПроверка ключей и пинг API биржи
6️⃣SubscriptionsРегистрация внутренних каналов и подписок
7️⃣Application ReadyREST + WebSocket серверы активны

Эти стадии отражаются в логах, что облегчает отладку и контроль в CI/CD.


📊 Studio Barfinex: следующий шаг после установки Provider

Запущенный Barfinex Provider — это надёжный бэкенд, но сам по себе он остаётся «чёрным ящиком» на сервере.
Studio Barfinex решает эту проблему:

  • даёт наглядный мониторинг статуса Provider (онлайн/офлайн, версия, аптайм);
  • позволяет визуально смотреть данные, которые отдаёт Provider (потоки котировок, события, ошибки);
  • помогает диагностировать проблемы: сразу видно, где сбой — в подключении к бирже, конфигурации или инфраструктуре;
  • объединяет несколько инстансов Provider (testnet/prod, разные биржи) в единую панель управления.

После того как вы:

  1. настроили .env,
  2. подняли стенд через docker compose up -d,
  3. убедились по логам, что все стадии инициализации прошли успешно,

рекомендуется зарегистрировать этот Provider в Studio Barfinex и наблюдать за ним уже через удобный веб-интерфейс.

Подробная инструкция по подключению:

👉 Регистрация Provider в Studio Barfinex



Запуск Barfinex Provider — это по сути точка входа в собственную экосистему алгоритмической и количественной торговли.
С этого момента у вас есть свой источник рыночных данных и управляемый API, на котором можно строить стратегии, эксперименты и боевые торговые решения.

Пусть Barfinex Provider станет для вас надёжным «двигателем» инфраструктуры,
а Studio Barfinex — удобной кабиной пилота, где видно всё: от состояния подключений до поведения стратегий в реальном времени.

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

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

Есть вопросы или хотите присоединиться к Barfinex? Напишите нам.