Бек-офіс крипто-брокера
Платформа бек-офісного API для брокера, що торгує криптовалютою. Керує виконанням угод, портфелями рахунків, оновленнями позицій у реальному часі через Kafka, структурами комісій та фінансовою звітністю в кількох форматах.
🔒 Приватна / клієнтська робота — робочий сайт і код під NDA. Радо розповім про архітектуру та свою роль під час дзвінка.
Огляд проєкту
Промислова бек-офісна система, що живить платформу криптовалютного брокериджу. Вона обробляє провізіювання рахунків, відстеження балансів і позицій, розрахунки по угодах, управління комісіями та ведення журналу аудиту для комплаєнсу. Сервіс обробляє ринкові події в реальному часі через Apache Kafka та надає повністю задокументоване REST API, яке споживає торговий фронтенд.
Ключові можливості
- Управління рахунками з відстеженням портфеля, розрахунками P&L та історією позицій
- Обробка угод і ордерів у реальному часі через консюмери Kafka
- Дизайнер комісій — налаштовувані структури комісій із динамічними розрахунками
- Асинхронна генерація звітів (CSV, Excel, PDF) із вивантаженням до MinIO/S3
- Воркери Celery із планувальником beat для фонових завдань та періодичних задач
- Журнал аудиту та комплаєнс-логування для всіх операцій із рахунками
- Автоматично згенерована документація Swagger/OpenAPI
- Ендпоінт метрик Prometheus та розподілене трасування Jaeger
- Моніторинг health check по всіх залежностях сервісу
- Робочі процеси внутрішніх переказів та затверджень між рахунками
Архітектура
Багатосервісна архітектура, оркестрована за допомогою Docker Compose: Django API (Gunicorn), окремий сервіс-консюмер Kafka, воркери Celery, PostgreSQL, Redis для кешування та брокерингу завдань, а також MinIO для зберігання файлів. Інтегрується із зовнішнім сервісом постачальника ліквідності для отримання ринкових даних. Розгорнуто в середовищах dev, QA та production з окремою конфігурацією для кожного етапу.