Настройка бота
6 мин. чтения
Раздел «⚙️ ОСНОВНЫЕ НАСТРОЙКИ БОТА» (главное меню → настройки) содержит глобальные параметры DEXBOT: таймауты, режим работы, уведомления, логи, производительность и сервисные разделы. Изменения из Telegram, как правило, сохраняются в базу данных и применяются без пересборки бинарника.
Пункты меню (сверху вниз):
- ⏱️ Настройки таймаутов
- 🔧 Режим работы
- 🔔 Уведомления
- 🧾 Настройки логирования (владелец / полный доступ)
- 🔁 Повторить сделки с ошибкой
- 🌐 Сменить язык
- 👁️ Настройки отображения
- 🚀 Производительность (владелец / полный доступ)
- 🧅 TOR: настройка
- 🔑 API ключи
- 🪪 Лицензия
- 📊 Мониторинг дашборд
- 🆕 Обновить бота (только владелец, при наличии прав)
- 🔙 Назад — в главное меню бота
⏱️ Настройки таймаутов #
Управление временем API-запросов, торговых циклов и отдельных операций. Меню разбито на блоки (как в боте):
- 📡 API и сеть — задержка повтора API, максимум повторов, пауза между запросами (защита от rate limit)
- ⏰ Интервалы — пауза между торговыми циклами, watchdog, таймаут цикла одной сети
- ⚡ Задержки обработки — пакетная обработка, расчёт индикаторов, задержка внутри торгового цикла
- ⏱️ Таймауты операций — покупка, котировка, проверка цены, продажа, одна сделка, сканирование рынка (все сети)
- 🔄 Сбросить таймауты — заводские значения
- ℹ️ Информация — подсказки по параметрам
Ключевые параметры #
- Пауза между торговыми циклами (
CHECK_INTERVAL_SECONDS) — сколько секунд бот ждёт после полного прохода по сетям перед следующим циклом. Меньше — чаще проверки, выше нагрузка на RPC/API. - Сканирование рынка (все сети) (
TASK_EXECUTION_TIMEOUT) — максимальное время на один полный проход сканирования по всем включённым блокчейнам в цикле. - Таймаут цикла одной сети (
BLOCKCHAIN_CYCLE_TIMEOUT) — лимит на обработку одной сети (пары, индикаторы, сделки). 0 = авто (зависит от числа пар и активных сделок). - Таймаут покупки / продажи — верхняя граница времени на операцию buy/sell (включая подтверждение в сети).
- Таймаут котировки — время на получение цены от агрегатора; в коде есть разумный минимум для быстрого отсечения «зависших» котировок.
- Таймаут одной сделки — покупка + ожидание + продажа одной позиции торгового бота.
- Watchdog — через сколько секунд без активности система считает бот «зависшим» и может перезапустить процесс.
Стандартные значения при «🔄 Сбросить таймауты»:
- Пауза между торговыми циклами: 600 с (10 мин)
- Сканирование рынка (все сети): 1200 с (20 мин)
- Одна сделка: 900 с (15 мин)
- Покупка / котировка / проверка цены / продажа: 600 с каждый
- Таймаут цикла одной сети: авто (0)
- API: повтор 5 с, макс. 5 попыток, задержка между запросами 1 с
🔧 Режим работы #
Переключение тестового и рабочего режима для всего DEXBOT (торговый бот, Grid, AI — при live AI).
- 🟧 Тестовый режим — сделки не отправляются в блокчейн; логи и уведомления работают; безопасная проверка стратегий.
- 🟢 Рабочий режим — реальные транзакции, списание газа и изменение балансов.
- Переключение применяется сразу; перед включением рабочего режима проверьте сейф кошельков и лимиты.
🔔 Уведомления #
Иерархическое меню: общий статус, антиспам, уровень, список chat id, затем разделы по ботам.
Общие настройки #
- Статус — мастер-выключатель всех уведомлений
- Интервал антиспама — минимальная пауза между одинаковыми сообщениями (0 = без ограничения по времени)
- Уровень — DEBUG / INFO / WARNING / ERROR / CRITICAL (фильтр по важности)
- Админы (chat id) — куда слать сообщения; дополнительно учитываются id из
ADMIN_TELEGA_IDSв .env - Кнопки «Включить все» / «Выключить все» и справка ℹ️ внутри меню
🤖 Торговый бот #
- Покупка / продажа токена (с кнопкой TX в эксплорер)
- Нет баланса USDC / USDT, нехватка газа, недостаточно на сделку
- Ошибки сделки, сигналы индикаторов (консенсус)
- Прибыль/убыток — пороги PnL (пакетное сообщение, кулдаун ~2 ч на сделку)
🔷 Grid бот #
- Покупка и продажа по уровням сетки
- Алерты — баланс, ошибки, цена вне диапазона, вкл/выкл сетки
🧠 AI бот #
- Сделки — buy/sell, dry-run, panic sell, дневной лимит
- Ошибки API — 429, запасная модель, проблемы ключа
⚙️ Общие (система) #
- Ошибки API — Binance, RPC, Jupiter и др.
- Здоровье системы — старт/остановка, watchdog, лицензия, сейф, зависшие транзакции, тест-режим
🧾 Настройки логирования #
Управление консольным и файловым логом (отдельный подраздел в main_config → LOGGING).
- Уровень — DEBUG, INFO, WARNING, ERROR
- Запись в файл — по умолчанию выкл. (на сервере часто достаточно journalctl / systemd)
- Путь к файлу — например
logs/dexbot.log - Показ времени в строках лога — по умолчанию выкл.
- Размер буфера — записей в памяти перед сбросом на диск (по умолчанию 1000)
- Интервал записи — секунды между сбросами буфера (по умолчанию 5)
- Экспорт и очистка логов — через кнопки в меню
Буфер логов хранится в секции LOGGING (не в PERFORMANCE).
🔁 Повторить сделки с ошибкой #
Автоматические повторные попытки продажи сделок торгового бота со статусом FAILED (не покупки).
- Вкл/выкл повторов
- Задержка между попытками (сек)
- Максимум попыток на одну сделку
Зависшие транзакции в таблице transactions дополнительно обрабатывает фоновый очиститель (порог ~30 мин в настройках запуска).
🌐 Сменить язык #
- Русский и English (и другие файлы в
locales/при наличии) - Язык сохраняется в БД; интерфейс Telegram обновляется сразу
👁️ Настройки отображения #
Размер страниц в Telegram-меню (пагинация):
- Блокчейны на странице
- Торговые пары на странице
- Индикаторы на странице
- Активные сделки на странице
- Завершённые сделки на странице
Типичные значения: 5–20 элементов; для телефона удобно 5–10.
🚀 Производительность #
Хаб с разделами; после сохранения вызывается мгновенное применение (кэш, координатор сканов, метрики дашборда). Таймауты сделок — в меню «Таймауты».
💾 Кэш и память #
- Кэш БД (TTL) — время жизни кэша запросов к БД (по умолчанию 300 с)
- Макс. записей в кэше БД — лимит записей, не мегабайты (по умолчанию 1000)
- Кэш цен API — TTL цен с внешних API (по умолчанию 10 с)
- Кэш газа — TTL комиссий (по умолчанию 60 с)
Grid-бот использует свой короткий кэш цены (~8 с) для уровней — это нормально.
📡 Торговля и сканирование #
- Параллельных сканов сетей (1–4) — сколько блокчейнов одновременно проходят тяжёлое сканирование пар (торговый, Grid, AI делят лимит). По умолчанию 2.
- Сдвиг старта каждой сети (0–15 с) — разнос пиков RPC в одном цикле. По умолчанию 3 с.
- Reload конфига из БД (30–600 с) — как часто торговый цикл полностью перечитывает настройки из БД; сохранение в Telegram по-прежнему применяется сразу. По умолчанию 120 с.
Приоритет при скане: торговый бот → Grid → AI; Grid/AI могут отложить операцию, пока идёт торговый цикл.
🚀 Запуск процессов #
- Повторы и пауза запуска DEXBOT (по умолчанию 3 × 5 с)
- Повторы и пауза TELEGABOT (по умолчанию 5 × 10 с)
📊 Мониторинг (дашборд) #
- Интервал тяжёлых метрик — GPU, sensors, сетевые интерфейсы для дашборда (60–86400 с, по умолчанию 900 с). На скорость торговли почти не влияет.
Сброс производительности восстанавливает: cache_ttl 300, max_cache_size 1000, price 10, gas 60, scan 2 / stagger 3, reload 120, heavy metrics 900, startup как выше.
Кнопка «Таймауты торгового цикла» в хабе — быстрый переход в меню таймаутов.
🧅 TOR: настройка #
- Режимы: выкл / авто / вкл
- Хост и порт SOCKS, авто-подбор портов
- HTTP и Telegram через Tor — отдельные переключатели
- Проверка соединения (тест IP)
🔑 API ключи #
Хранение и включение ключей внешних сервисов (агрегаторы, RPC, AI-провайдеры и т.д.) через защищённое меню бота.
🪪 Лицензия #
Просмотр статуса лицензии, привязка к устройству, срок действия, лимиты активаций.
📊 Мониторинг дашборд #
Встроенная панель в Telegram: состояние процесса, ресурсы, API, торговая активность. Частота тяжёлых метрик — в «Производительность → Мониторинг».
🆕 Обновить бота #
Доступно владельцу с правом удалённого обновления. Запускает скрипт обновления на сервере: бот перезапускается, активные операции могут прерваться. Перед обновлением рекомендуется остановить торговлю или дождаться завершения цикла.
📋 Что происходит при изменении настроек #
- Таймауты / режим / UI / повторы FAILED — запись в БД, подхват при следующем цикле или сразу обработчиком
- Производительность — сохранение +
apply_performance_runtime(кэш, market scan, метрики) - Логирование — применение буфера и уровня в рантайме
- Уведомления — без перезапуска; фильтр по флагам и уровню
- Язык — перезагрузка переводов в памяти
- Подтверждение в чате при успешном сохранении; ошибки валидации — сообщением бота
⚙️ Навигация #
- 🔙 Назад из корня настроек — в главное меню (/start)