feat: implement portfolio analytics, PnL calculation, and security screener #11

Merged
ksv741 merged 1 commits from feat/analytics-and-screener into main 2026-06-14 16:27:07 +03:00
Owner
  1. Portfolio Analytics:
    * Реализован расчет PnL (прибыль/убыток) и Yield (доходность) на бэкенде.
    * Добавлены поля buyPrice и buyDate в модель Position.
    * На фронтенде добавлен компонент AnalyticsSummary и колонки доходности в таблицы позиций.
    * Реализовано инлайновое редактирование цены покупки и количества.

    1. Security Screener:

      • Разработан серверный скринер с фильтрацией всего рынка MOEX (акции и облигации).
      • Реализована пагинация, сортировка и синхронизация фильтров с URL-параметрами.
      • Добавлена страница /screener с удобной панелью фильтров.
    2. Оптимизация:

      • Пакетная загрузка данных MOEX (batch fetching) сократила количество API-вызовов на порядки.
      • Внедрено кеширование рыночных данных с учетом ID портфеля.
    3. Качество и документация:

      • Все новые сервисы покрыты Unit-тестами (42 теста проходят).
      • Код отформатирован по стандартам проекта.
      • Документация бэкенда обновлена в apps/docs.
1. Portfolio Analytics: * Реализован расчет PnL (прибыль/убыток) и Yield (доходность) на бэкенде. * Добавлены поля buyPrice и buyDate в модель Position. * На фронтенде добавлен компонент AnalyticsSummary и колонки доходности в таблицы позиций. * Реализовано инлайновое редактирование цены покупки и количества. 2. Security Screener: * Разработан серверный скринер с фильтрацией всего рынка MOEX (акции и облигации). * Реализована пагинация, сортировка и синхронизация фильтров с URL-параметрами. * Добавлена страница /screener с удобной панелью фильтров. 3. Оптимизация: * Пакетная загрузка данных MOEX (batch fetching) сократила количество API-вызовов на порядки. * Внедрено кеширование рыночных данных с учетом ID портфеля. 4. Качество и документация: * Все новые сервисы покрыты Unit-тестами (42 теста проходят). * Код отформатирован по стандартам проекта. * Документация бэкенда обновлена в apps/docs.
ksv741 added 1 commit 2026-06-14 16:00:18 +03:00
feat: implement portfolio analytics, PnL calculation, and security screener
Some checks failed
CI / lint (pull_request) Failing after 1m48s
CI / test (pull_request) Successful in 1m47s
CI / build (pull_request) Successful in 1m53s
CI / lint (push) Failing after 1m59s
CI / test (push) Successful in 1m56s
CI / build (push) Successful in 1m50s
96f003852d
- Add buyPrice and buyDate to positions for PnL tracking
- Implement backend analytics service for real-time portfolio performance
- Add server-side security screener with filtering, sorting, and pagination
- Update frontend UI with analytics summaries and sortable screener table
- Optimize MOEX API calls with batch fetching and portfolio-specific caching
- Add unit tests for analytics and screener services
ksv741 merged commit 96f003852d into main 2026-06-14 16:27:07 +03:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: moex/moex-vibe#11
No description provided.