Dmitry Beresnev
uv migrations
a71dd82
---
title: Market Analyzing Platform
emoji: 💻
colorFrom: red
colorTo: blue
sdk: docker
pinned: false
license: apache-2.0
short_description: Market Analyzing Platform - Notifications, Tracking, etc
---
## POC Overview
This POC implements a market-wide risk radar using:
- Universe loader for tickers (unofficial lists supported)
- Price ingestion via `yfinance`
- Price Delta Calculator (drop by default)
- Adaptive thresholds, event detection, and alerting
- In-memory pub/sub topics
- Process pool for price loading
## Topics
Defined in `configs/topics.yaml`:
- `market.universe.snapshot`
- `market.universe.updated`
- `market.prices.snapshot`
- `market.price.delta`
- `risk.event.detected`
- `risk.envelope.updated`
- `data.gap.detected`
- `system.alert.ready`
## Run
```bash
uv sync
uv run python -m src.core.main
```
## App Entrypoint
```bash
uv run python app.py
```
## Notes
- `yfinance` is an unofficial data source and can break or rate-limit.
- Process pool parallelizes price fetching to speed up ingestion.
- Universe loader pulls:
- US equities from `rreichel3/US-Stock-Symbols` (unofficial)
- EU equities from Wikipedia index constituents (FTSE 100, DAX, CAC 40)
- Crypto from Binance `exchangeInfo`
- Commodities from a curated Yahoo Finance futures list
- Universe schema lives in `src/core/schemas.py`
- Topic taxonomy is loaded from `configs/topics.yaml`
## Telegram Bot
Set environment variables:
```bash
export TELEGRAM_BOT_TOKEN=...
export TELEGRAM_CHAT_ID=...
```
## Detailed Architecture Doc
- `docs/CURRENT_VERSION.md`
```