Microservices architecture with API Gateway, SSO (Single Sign-On), Telegram channel parsing, and analytics for cryptocurrency trading signals.
┌─────────────┐ ┌─────────────┐
│ Frontend │────▶│ API Gateway │
│ (React) │ │ (Go) │
└─────────────┘ └──────┬──────┘
│
┌─────────────────┼─────────────────┐
│ │ │
▼ ▼ ▼
┌─────────┐ ┌──────────┐ ┌────────────┐
│ SSO │ │ Recommen-│ │ Cache │
│ (Go) │ │ dation │ │ Service │
└─────────┘ │ (Go) │ │ (Go) │
└──────────┘ └─────┬──────┘
│
┌──────────────────────────┼──────────────┐
▼ ▼ ▼
┌──────────┐ ┌────────────┐ ┌──────────┐
│ Parser │───────────▶│ Kafka │◀──│Analytics │
│ (Python) │ │ │ │(Python) │
└──────────┘ └────────────┘ └──────────┘
┌─────────────┐ ┌─────────────┐
│ PostgreSQL │ │ Redis │
│ (aurora, │ │ │
│ parser) │ │ │
└─────────────┘ └─────────────┘
| Service | Language | Port | Description |
|---|---|---|---|
| Frontend | React/Vite | 5173 | Web UI |
| API Gateway | Go | 8081 | Main HTTP API |
| SSO | Go | 44044 | Authentication (gRPC) |
| Recommendation | Go | 44040 | Trading signals |
| Cache | Go | 44045 | Redis caching |
| Parser | Python | 44042 | Telegram parsing |
| Analytics | Python | 44047 | Data analytics |
- Frontend: React 19, Vite, Tailwind CSS, React Router, TON Connect, TradingView
- Backend: Go 1.21+, Python 3.11+
- Database: PostgreSQL 15, Redis 7
- Message Queue: Kafka 7.4.0
- Container: Docker Compose
- Go 1.21+
- Python 3.11+
- Docker & Docker Compose
- Make
git clone https://gitlab.informatics.ru/2025-2026/ydex/s103d/final-project-t1918.git
cd final-project-t1918docker compose up -d postgres postgres-parser redis-master zookeeper kafkacd backend/SSO
go get github.com/dima11223432/protos@v0.0.10
go mod download
cd ../Api_Gateway
go get github.com/dima11223432/protos@v0.0.10
go mod download
cd ../../frontend
npm installcd backend
make db-create
make migrate-allcreate .env file by .env.example, then run:
docker compose up -d
docker compose logs -f- Frontend: http://localhost:5173
- API Gateway: http://localhost:8081
- SSO gRPC: localhost:44044
- Recommendation gRPC: localhost:44040
- Cache Service gRPC: localhost:44045
Aurora/
├── backend/
│ ├── SSO/ # SSO authentication service
│ ├── Api_Gateway/ # Main API gateway
│ ├── Recommendation_Service/ # Trading recommendations
│ ├── Cache_Service/ # Redis caching with Kafka
│ ├── Parsing_Service/ # Telegram channel parser (Python)
│ ├── Analitic_Service/ # Analytics (Python)
│ └── makefile
├── frontend/ # React frontend
├── docker-compose.yaml
├── init.sql
└── README.md
Internal project - Informatics 2025-2026
Тема Fin-tech актуальна, потому что она требует большой компетенции в разработке, архитектуре и безопасности, а также уверенной работы со сторонними API.
Сложно создать проект, отличающийся от остальных проектов в техническом плане, но наш проект будет создаваться по большинству стандартов современной коммерческой разработки, которая позволит сервису быть высоконагруженным и прод пригодным.
• Golang
• Python3
• Django
• gRPC
• Redis
• Kafka
• Postgres
• React.js
• TailwindCss
Команде T-1918 понадобится около 300 часов на реализацию проекта "Aurora".
| Участник | Роль | Часы |
|---|---|---|
| Сафронов Дмитрий | Тимлид | 200 часов |
| Иосифов Николай | Старший Разработчик Гибрид | 200 часов |
| Бурдюков Савелий | Middle разработчик | 180 часов |
| Хвастюк Ян | Middle Разработчик | 150 часов |
| Жильцова Екатерина | Junior+ Разработчик | 120 часов |
| Манчуленко Василий | Junior Разработчик | 80 часов |
Я считаю, что "Aurora" должен считаться итоговым проектом, потому что он задействует область Fin-tech, являющуюся возможно сложнейшей в реализации и безопасности областью, которая требует немалого багажа знаний не только тимлида, но и всей команды. В проекте используются самые новые технологии в промышленной разработке такие как: gRPC, Redis, Kafka, Golang, Python. Исходя из вышеперечисленного, Наш проект должен считаться итоговым.
"Aurora" решает проблему поиска и обнаружения паттернов корреляции цены активов: монет на основе TON, а также акций на фондовом рынке.
Разработка платформы для агрегации и анализа новостей фондового рынка и криптовалют (экосистема TON) с возможностью принятия торговых решений и совершения покупок через TON Wallet. Проект разбит на три спринта: Core, Intelligence, Trading.
#Fin-tech, #Telegram, #TON, #TON_Wallet, #T-investment
- Пользователь подключает TON кошелек к платформе
- Система получает wallet address и привязывает его к user_id
- Пользователь выбирает Telegram-каналы для отслеживания
- Пользователь может включать/отключать каналы в своем профиле
- Система в фоне парсит выбранные Telegram-каналы (только последние 24-48 часов). Парс будет производиться через Python библиотеку Telethon
- Система формирует ленту новостей только по фондовому рынку
- Посты в ленте сортируются по времени (новые сверху)
- Каждая новость показывает дату публикации
- Каждая новость содержит ссылку на оригинальный пост в Telegram
- Текст новостей отправляется в очередь на LLM-анализ
- Анализ выполняется асинхронно (не блокирует интерфейс)
- Результаты анализа кешируются для одинаковых новостей
- CNN LSTM модели определяют тональность новости (bullish/bearish/neutral)
- Результат анализа возвращается в формате JSON
- 10,000 DAU (Daily Active Users) можно тестировать через Apache JMeter
- Максимальное время загрузки всех новостей (пак по 15 штук) — 3 секунды (Можно проводить проверку на фронтенде)
- Большинство пользователей в режиме Read-only
- Аудитория: СНГ
- Пользователь может покупать монеты TON через интерфейс (без автотрейдинга)
- Покупка требует подтверждения в TON кошельке
- История транзакций сохраняется в профиле
- Система отображает графики цен акций по тикерам
- Система отображает графики цен монет TON
- На графиках отображаются метки новостей по датам
- Система отправляет уведомления на основе аналитики (например, "Акция X может вырасти на Y%")