A visually stunning AI-powered trading workstation that streams live market data, simulates portfolio trading, and integrates an LLM chat assistant that can analyze positions and execute trades via natural language.
Built entirely by coding agents as a capstone project for an agentic AI coding course.
- Live price streaming via SSE with green/red flash animations
- Simulated portfolio — $10k virtual cash, market orders, instant fills
- Portfolio visualizations — heatmap (treemap), P&L chart, positions table
- AI chat assistant — analyzes holdings, suggests and auto-executes trades
- Watchlist management — track tickers manually or via AI
- Dark terminal aesthetic — Bloomberg-inspired, data-dense layout
Single Docker container serving everything on port 8000:
- Frontend: Next.js (static export) with TypeScript and Tailwind CSS
- Backend: FastAPI (Python/uv) with SSE streaming
- Database: SQLite with lazy initialization
- AI: LiteLLM → OpenRouter (Cerebras inference) with structured outputs
- Market data: Built-in GBM simulator (default) or Massive API (optional)
In progress. The market data backend (simulator + Massive API client) is complete. See planning/PLAN.md for the full specification and planning/MARKET_DATA_SUMMARY.md for details on the completed market data component.
| Variable | Required | Description |
|---|---|---|
OPENROUTER_API_KEY |
Yes | OpenRouter API key for AI chat |
MASSIVE_API_KEY |
No | Massive (Polygon.io) key for real market data; omit to use simulator |
LLM_MOCK |
No | Set true for deterministic mock LLM responses (testing) |
finally/
├── backend/ # FastAPI uv project (market data complete)
├── planning/ # Project documentation and agent contracts
└── LICENSE
See LICENSE.