Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

Packages

Used by

Contributors

Languages