Trading SaaS platform
- 9 services in the stack
- 32,926 lines · execution engine
- 115 commits · web platform
- 210,107 rows of market data backfilled
The constraint
One ARM64 host in a single region has to run the whole platform, and it holds other people’s exchange API keys.
The decision
Nothing on that server is changed by hand. Every change goes local → commit → push → server pull, and the production schema is committed to git as the single source of truth.
The evidence
- Runs on Oracle Cloud in Sydney, Ubuntu 22.04 on ARM64, live in paper mode.
- Python
- FastAPI
- Next.js
- TypeScript
- Celery
- PostgreSQL
- TimescaleDB
- Redis
- Docker Compose
- Oracle Cloud (Ampere ARM64)
- SSM Parameter Store
- AWS KMS
- nginx
- Cloudflare (DNS, strict TLS, Email Routing)
- GitHub Actions