Work2025
A containerised trading platform
MetaTrader 5 running under Wine behind a Flask API, orchestrated by Django and Celery across sixteen containers. Twenty-one scheduled tasks over three queues, a real-time tick pipeline on Redis pub/sub, and a full observability stack of Prometheus, Grafana, Loki and Alertmanager, with a Kubernetes deployment path alongside Compose.
- Stack
- PythonDjangoCeleryDockerKubernetes
A platform assembled from parts that were never designed to run together. MetaTrader 5 is a Windows desktop application; here it runs under Wine inside Docker, wrapped in a Flask API so the rest of the system can speak HTTP to it.
Orchestration
Django and DRF own the domain model and expose the control surface. Celery does the work: twenty-one scheduled tasks across three queues, run by eight worker processes.
Real-time path
A separate tick pipeline moves market data over Redis pub/sub into a cumulative-volume-delta engine. It is kept off the request path so that a slow HTTP call cannot stall it.
Running it
- Sixteen containers under Docker Compose, with a Kubernetes variant using kustomize and a written deployment runbook
- Traefik v3 terminating TLS with Let's Encrypt
- Prometheus, Grafana, Loki with Promtail, Alertmanager and cAdvisor
- PostgreSQL 15, twenty-four tables
Strategy logic, parameters and results are deliberately not described here.