Реализация push-уведомлений о сделках торгового бота

TRUETECH занимается разработкой, поддержкой и обслуживанием мобильных приложений iOS, Android, PWA. Имеем большой опыт и экспертизу для публикации мобильных приложений в популярные маркеты Google Play, App Store, Amazon, AppGallery и другие.
Разработка и поддержка любых видов мобильных приложений:
Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

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

Предлагаемые услуги
Показано 1 из 1 услугВсе 1735 услуг
Реализация push-уведомлений о сделках торгового бота
Простая
от 1 рабочего дня до 3 рабочих дней
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1054
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    874
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    445

Реализация push-уведомлений о сделках торгового бота

Торговый бот закрыл позицию ночью — пользователь увидел уведомление утром. За это время цена ушла на 8%, и момент для реакции уже упущен. Push-уведомления для торгового бота — это не «приятная фича», а часть рабочего процесса трейдера.

Что здесь ломается чаще всего

Типичная проблема: бот работает на сервере, отправляет уведомление через FCM, но на Android с включённым battery optimization уведомление приходит с опозданием 10–20 минут. Причина — Doze Mode откладывает сетевые операции, FCM использует «normal priority» по умолчанию. Для финансовых уведомлений нужен явный "priority": "high" в FCM payload, тогда сообщение доставляется через high-priority channel и будит устройство.

На iOS похожая история с Background App Refresh — если пользователь отключил его для приложения, бэкграунд-fetch не сработает. Единственный надёжный способ — APNs push с content-available: 1 или interruption-level: time-sensitive.

Архитектура уведомлений для бота

Бот генерирует событие (открытие/закрытие сделки, срабатывание стоп-лосса, достижение тейк-профита) → серверный обработчик формирует payload → Firebase Admin SDK отправляет в FCM/APNs.

Минимальный payload для сделки:

{
  "notification": {
    "title": "BTC/USDT ✅ Закрыто +2.3%",
    "body": "Buy 0.05 BTC @ 67,420 → Sell @ 68,980"
  },
  "android": { "priority": "high" },
  "apns": {
    "headers": { "apns-priority": "10" },
    "payload": { "aps": { "interruption-level": "time-sensitive" } }
  },
  "data": { "trade_id": "t_9182", "symbol": "BTCUSDT", "pnl": "2.31" }
}

data поле используется для deep link — тап открывает экран конкретной сделки с деталями.

Типы уведомлений и их приоритет

Событие Приоритет FCM APNs interruption-level
Стоп-лосс сработал high time-sensitive
Тейк-профит high time-sensitive
Открытие позиции high active
Дневной отчёт normal passive
Ошибка подключения к бирже high time-sensitive

Разделение важно: пользователь может разрешить «критические» уведомления даже в режиме «Не беспокоить» — это работает через iOS Focus Filters и Android notification channels с IMPORTANCE_HIGH.

Клиентская часть

На Flutter реализуем через firebase_messaging пакет. Главное — правильно обработать три состояния: foreground, background, terminated. В terminated state уведомление обрабатывается через FirebaseMessaging.instance.getInitialMessage() при следующем старте приложения.

На React Native — @react-native-firebase/messaging, логика та же.

Запрос разрешений делаем не при старте, а при первом действии, связанном с ботом — конверсия в разрешение значительно выше, чем при cold start.

Сроки интеграции в готовое приложение: 3–7 дней при наличии серверной части бота.