Pre-registered benchmark · Reality Check #4
Portfolio: Markowitz vs QAOA
20-asset cardinality-constrained portfolio selection on real S&P 500 sector returns. Closed-form Markowitz mean-variance vs simulated annealing vs QAOA at depths 1–7 (warm and cold start). Pre-registered; we publish whichever direction the numbers point.
TL;DR
Markowitz wins outright. The closed-form quadratic-programming solution achieves Sharpe 1.412 in 40 ms. Simulated annealing matches it within 1% at 180 ms. Warm-started QAOA-3 reaches only 88% of optimal Sharpe in 47 seconds on a simulator. Even ignoring runtime, QAOA at the depths we can practically simulate trails purpose-built classical methods. This isn't a problem QAOA was likely to beat — and the data confirms.
Pre-registration
- Universe: S&P 500 sector ETFs (XLF, XLK, XLE, XLV, XLI, XLP, XLY, XLU, XLB, XLRE, XLC) + 9 large-cap individual names. n = 20.
- Returns data: daily close 2024-04-23 → 2026-04-23 from Yahoo Finance. Sample mean and covariance.
- Problem: select k = 8 assets out of 20 maximizing Sharpe ratio under cardinality and budget constraints. 10 random instances (different correlation perturbations).
- Metric: annualized Sharpe ratio of the realized in-sample portfolio.
- Contenders: Markowitz mean-variance (cvxpy QP) · Simulated annealing (dwave-neal) · Goemans-Williamson relaxation · QAOA at depths 1, 3, 5, 7 (warm and cold).
- QAOA simulator: PennyLane
default.qubit, 20 qubits.
Headline results
| Method | Sharpe | Runtime | Quality |
|---|---|---|---|
| Markowitz mean-variance (cvxpy quadratic programming) | 1.412 | 0.04 s | exact |
| Simulated annealing (dwave-neal, 1000 sweeps × 100 reads) | 1.398 | 0.18 s | near-exact |
| Goemans-Williamson (relaxed-then-rounded) | 1.367 | 0.09 s | 0.967× exact |
| QAOA-3 (warm-started from MV solution) | 1.241 | 47 s (simulator) | 0.879× exact |
| QAOA-1 (cold start) | 1.082 | 12 s (simulator) | 0.766× exact |
Mean across 10 instances. Standard deviation across instances was small (< 0.05 for all classical methods, < 0.10 for QAOA variants).
QAOA depth ablation
| Variant | Sharpe |
|---|---|
| QAOA-1 cold | 1.082 |
| QAOA-3 cold | 1.157 |
| QAOA-3 warm-started | 1.241 |
| QAOA-5 warm-started | 1.279 |
| QAOA-7 warm-started (n=12 only — runtime budget) | 1.301 |
What this means
Mean-variance portfolio optimization is a textbook quadratic program. Closed-form. n = 20 takes 40 ms in cvxpy. There is no plausible quantum-advantage story here in the near term — every QAOA paper that benchmarks on portfolio optimization either (a) compares against a weak baseline (e.g., random), (b) artificially constrains the problem to make QAOA competitive, or (c) reports results from real hardware where noise dominates and QAOA still loses.
Where could quantum help in portfolio optimization eventually? Massive-universe rebalancing under exotic constraints (regime-switching, non-convex risk measures, cardinality + leverage + transaction-cost joint optimization) where the classical formulation becomes non-convex and QP fails. That regime requires fault-tolerant hardware and significantly more qubits than 2026-era machines have. For everything practically tractable today: use cvxpy.
Fourth entry in QML Reality Check. One left: VQE molecules vs CCSD(T) — the closest QML Reality Check to a problem where quantum genuinely might win.