Техническое задание: Система мониторинга и сравнения биржевых цен

Цель проекта

Разработать программное решение, которое в режиме реального времени получает данные о ценах финансовых инструментов из двух независимых источников (биржевых API), сравнивает их и отображает разницу на веб-странице. Система должна автоматически сигнализировать пользователю при достижении заданного порога расхождения.

Основные требования

1. Интеграция с API

  • Реализовать стабильное подключение и парсинг данных из API Московской биржи (MOEX ISS).
  • Реализовать подключение и получение данных из API торговой платформы cTrader.
  • Обеспечить бесперебойный поток данных для выбранных инструментов (пара инструментов будет указана дополнительно).

2. Логика сравнения и вычислений

  • Разработать модуль для расчета разницы цен между идентичными инструментами с двух платформ.
  • Разница должна вычисляться в пунктах (пипсах) или в абсолютном значении, в зависимости от инструмента.
  • Реализовать настраиваемый порог срабатывания (например, 2 пункта).

3. Визуализация и вывод

  • Создать веб-страницу (или виджет для сайта), на которой в реальном времени отображаются:
    • Текущие цены с обеих платформ.
    • Рассчитанная разница между ними.
  • Реализовать механизм визуального или текстового оповещения на странице при превышении заданного порога разницы (например, цветовая индикация, всплывающее сообщение).

4. Технические аспекты

  • Язык программирования: Python (предпочтительно, как было отмечено в исходном запросе).
  • Архитектура: допускается использование REST API для backend-логики.
  • Решение должно быть надежным, с обработкой ошибок подключения и целостности данных.
  • Код должен быть чистым, документированным и готовым к развертыванию.

Ожидаемый результат

Готовое рабочее веб-приложение или скрипт с веб-интерфейсом, который автоматически собирает данные, сравнивает их и предоставляет наглядную информацию о расхождении цен с функцией мгновенного оповещения.