Настройка экземпляра бота MagicTradeBot и безопасная коммуникация

  • Home
  • Documentation
  • Настройка экземпляра бота и безопасная коммуникация

Экземпляр бота MagicTradeBot — это кроссплатформенное исполняемое приложение, поддерживающее Windows, Linux и macOS. Он разработан для автономной работы или совместной работы с несколькими экземплярами, при этом конфигурация осуществляется через центральный файл .yaml.

Каждый экземпляр бота подключается к API панели управления MagicTradeBot для аутентификации, выполнения сделок и сканирования рынка в реальном времени. Этот документ описывает параметры конфигурации и лучшие практики безопасной связи.


📄 Структура конфигурации YAML

Основная конфигурация каждого экземпляра бота хранится в файле config.yaml. Ниже приведён пример структуры:

server:
  # Имя
  botName: "Bybit_Mainnet_Trading_Bot"  # Уникальное имя экземпляра бота

  # ЛИЦЕНЗИОННЫЙ КЛЮЧ
  licenseKey: "hRnWOLo91ESUiZ8SkN986w"  # Необходим для активации и проверки экземпляра бота

  # НАСТРОЙКА ДЕМО-РЕЖИМА
  isDemo: true  # true = симуляция; false = реальная торговля

  # КОНФИГУРАЦИЯ API
  api: "https://localhost:7225/"  # URL API панели управления MagicTradeBot

  # КОНТРОЛЬ ИСПОЛНЕНИЯ
  refreshRate: 5  # Интервал сканирования рынка (в секундах)
  totalConcurrentTrades: 0  # Макс. одновременно активных сделок (0 = без ограничений)

  # УПРАВЛЕНИЕ РИСКАМИ (0 = отключено)
  maxLoss: 0      # Бот остановится, если убыток достигнет этого порога
  maxProfit: 0    # Бот остановится, если прибыль достигнет этого порога

  # НАСТРОЙКИ УЧЁТНОЙ ЗАПИСИ
  exchangeId: 0   # ID аккаунта для торговли (получается из панели управления)

  # НАСТРОЙКИ ШАБЛОНА
  templateId: 0  # ID шаблона стратегии (0 = по умолчанию)

  # ТОРГОВАЯ СТРАТЕГИЯ
  strategy: 0      # ID стратегии (см. список ниже)
  strategyMaxCount: 55  # Макс. шагов стратегии (0 = без ограничений)

  # СПИСОК СТРАТЕГИЙ:
  # 0: Без стратегии
  # 1: Мартингейл        2: Обратный мартингейл
  # 3: Фибоначчи         4: Обратная Фибоначчи
  # 5: 3-2-6-3           6: 3-2-6-3 обратная
  # 7: Д'Аламбер         8: Обратный Д'Аламбер

  timeZone: "UTC"  # Часовой пояс для планирования и торговли

# НАСТРОЙКИ СИСТЕМЫ
debug: true  # Включить подробное логирование

🔐 Рекомендации по безопасной связи

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

1. Используйте HTTPS для API

  • Убедитесь, что поле api использует HTTPS URL
  • Используйте действующие TLS-сертификаты (например, Let’s Encrypt) для шифрования трафика
  • Отклоняйте все небезопасные HTTP-соединения с панелью управления

2. Используйте аутентификацию JWT

  • При запуске экземпляр бота запрашивает JWT токен, предоставляя учётные данные
  • После проверки панель возвращает подписанный токен, который добавляется ко всем последующим запросам в заголовке Authorization
  • Токены должны иметь короткий срок действия и храниться безопасно в памяти
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

3. Ограничьте доступ с помощью белого списка IP

  • Ограничьте доступ к API управления только известными IP-адресами экземпляров бота
  • Настройте правила фаервола для блокировки несанкционированного доступа

4. Защищайте ключи API и лицензионные ключи

  • Никогда не вставляйте секреты в исходный код и не записывайте их в логи
  • Загружайте секреты через переменные окружения или менеджеры секретов
  • Периодически обновляйте ключи API и лицензионные ключи

5. Изолируйте каждый экземпляр бота

  • Назначьте уникальное botName для каждого бота и размещайте их в изолированных средах (например, Docker)
  • Ограничьте разрешения каждого бота с помощью ACL системы

6. Мониторинг и аудит

  • Включите аудит логов на панели управления
  • Логируйте все попытки аутентификации JWT и подозрительные действия
  • Настройте уведомления через Sentry, Pushover или LogDNA для обнаружения аномалий

✅ Рекомендации

  • 📌 Используйте надёжные пароли и шифрование между всеми сервисами
  • 📌 Изолируйте инфраструктуру бота от публичного доступа
  • 📌 Регулярно обновляйте как панель управления, так и экземпляры бота
  • 📌 Автоматизируйте резервное копирование конфигураций и истории торговли

📎 Related Topics