Об этом проекте
# Бот оповещений EMA (Deriv + Telegram) — V2
Этот бот отслеживает независимые оповещения, каждое из которых представляет собой уникальную комбинацию символа, интервала и EMA. Когда цена касается настроенной EMA, отправляется сообщение в Telegram. Вся настройка осуществляется через кнопки в Telegram, а бот работает бесплатно на GitHub Actions.
## Основные функции
- **Создание оповещений**: `/new` позволяет выбрать символ, интервал (от 1 минуты до 1 дня) и EMA (9, 20, 50, 100, 200) с помощью кнопок.
- **Управление оповещениями**: `/alerts` выводит список оповещений, `/pause ID` и `/resume ID` приостанавливают/возобновляют, `/delete ID` удаляет с подтверждением.
- **Оптимизация**: свечи загружаются один раз для группы (символ, интервал) и повторно используются для нескольких EMA, сокращая запросы к Deriv.
- **Защита от дубликатов**: история сохраняется в `state.json`, чтобы избежать повторных оповещений на одной и той же свече.
- **Настройка**: список предлагаемых символов можно изменить в `AVAILABLE_SYMBOLS` (Форекс, Криптовалюты, Синтетические индексы).
## Установка
1. Создайте бота Telegram через @BotFather и получите токен и ID чата.
2. Создайте приватный репозиторий GitHub и загрузите файлы (`ema_alert.py`, `config.json`, `state.json`, `requirements.txt`, `.github/workflows/check.yml`).
3. Добавьте секреты `TELEGRAM_BOT_TOKEN` и `TELEGRAM_CHAT_ID` в настройках репозитория.
4. Включите разрешения "Чтение и запись" для рабочих процессов.
5. Запустите рабочий процесс вручную в первый раз, затем он будет выполняться автоматически каждые 5 минут.
## Улучшения V2
- Исправление race conditions Git с автоматическим повтором.
- Надежная обработка WebSocket с таймаутом.
- Валидация секретов и состояний.
- Структурированное логирование с временными метками.
- Очистка ID после удаления.
- Настраиваемый Heartbeat.
## Ограничения
- GitHub Actions может иметь задержки в несколько минут в периоды нагрузки (подходит для 30 мин/1 ч/4 ч, менее подходит для скальпинга на 1 мин).
- Бесплатный план включает 2000 минут в месяц, чего более чем достаточно.
- Только один пользователь (настроенный ID чата) может управлять ботом.
## Будущие улучшения
Поиск символов, категории, изменение оповещений, другие типы оповещений (пересечение EMA), подробные уведомления.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.