Skip to content

Workbench3D/bond_search_tool

Repository files navigation

Общая информация

Сервис представляет собой три взаимосвязанных компонента, обеспечивающих автоматизированный подбор и предоставление информации о выгодных облигациях с использованием данных с Московской Биржи.

Структура проекта

Проект реализован по принципам луковой архитектуры, разделяет приложение на слои, где каждый слой имеет свою определенную ответственность.

Проект содержит три сервиса:

  • 'fast_app' - Fast API приложение отвечает за представление данных и взаимодействие с пользователем

    Описание: Сервис предоставляет HTTP API с использованием FastAPI для запросов и получения информации о выгодных облигациях из базы данных. Клиенты могут отправлять запросы на получение отфильтрованных данных в удобном формате.

  • 'moex_app' - aiohttp приложение отвечает за взаимодействие с Moex API

    Описание: Сервис регулярно (еженедельно по будням) обращается к Московской Бирже для получения актуальной информации о различных облигациях. Полученные данные сохраняются в базу данных для последующего использования.

  • 'db' - сервис PostgreSQL

Стек технологии

  • Python == 3.10
  • fastapi == 0.109
  • aiohttp == 3.9
  • PostgreSQL == 14.7
  • SQLAlchemy == 2.0
  • Docker

Инструкция по запуску на Docker

Файл docker-compose.yaml представляет собой конфигурацию Docker Compose, который используется для оркестрации контейнеров в Docker-среде. Файл определяет три сервиса: 'db' и два приложения 'moex_app' и 'fast_app'.

Инструкция по запуску:

  1. Клонировать репозиторий

    git clone ссылка_сгенерированная_в_вашем_репозитории

  2. Убедитесь, что Docker и Docker Compose установлены на вашем компьютере.

  3. Создайте файл .env в том же каталоге, где находится файл docker-compose.yml, и укажите необходимые переменные окружения.

  4. При необходимости заменить адрес каталога на адрес каталога вашего компьютера в файле docker-compose.yaml в сервисе 'db'

    volumes: - /home/user/Project/data:/var/lib/postgresql/data

  5. Откройте терминал в каталоге с файлом docker-compose.yml.

  6. Запустите команду: docker-compose build для сборки образа сервисов.

  7. Запустите команду: docker-compose up для запуска контейнеров

Сервисы 'db', 'moex_app' и 'fast_app' должны быть запущены и доступны в соответствии с указанными портами.

About

The service for calculating the real yield of bonds

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published