A self-validating quant pipeline with live job tracking, a Next.js control plane, and a static Vercel demo for recruiter walkthroughs.
Most projects stop at results — this one validates them in real time, streams every stage over WebSocket, ships signals and backtests, and exports a fixture-backed demo that runs without FastAPI or PySpark.
BackgroundTasks + job_id + DuckDB history; single active-run lock (409)
Core pipeline stages
1FETCHING_DATA
2VALIDATION
3FEATURE_ENGINEERING
4RUNNING_QA
5SIGNAL_GENERATION
6BACKTEST
7REPORT_EXPORT
Then SAVING_DATA → COMPLETED; UI fetches via /features, /qa, and /api/v1/*. Live stack: API :8080 + web :3002. Demo stack: demo/ :3003 on fixtures only.
03 — Highlights
What ships today.
✓
Key Differentiator
QA Validation System
Spark outputs benchmarked against Pandas/SciPy — per-ticker alignment % in qa_report.json (>95% target).
📊
Signals & Backtest
Rule-based BUY/SELL/HOLD with confidence + reasons; signal_rules_v1 metrics (CAGR, Sharpe, max DD, win rate).
🔴
Real-time Execution
WebSocket timeline for all stages; job_id routing; 409 lock on concurrent runs.