Portfolio management requires diversified allocations to reduce volatility and risk, which in turn requires accounting for intra- and inter-class correlations. Existing benchmarks leave two gaps: they often cover a single asset class, or evaluate assets in isolation; and they provide limited diagnosis of where errors arise and how they affect later decisions.
PortBench evaluates LLM-driven portfolio management on six asset classes from 2015 to 2025, with three contributions:
183 market series across equities, bonds, commodities, cryptocurrency, real estate, and cash, from 2015 to 2025, with prices, macro series, and time-aligned news. Inter-class correlations are generally low and intra-class correlations are strongly positive.
Static QA is paired with a five-stage pipeline. The model produces S1–S3; the sandbox executes the allocation under fixed transaction costs and scores S4 and S5. CEPS summarizes reference-based stage scores, and paired interventions trace how a local change affects later decisions. Portfolios are then evaluated across stress windows, investor profiles, and real-time market data.
Across ten LLMs, high financial QA scores do not ensure consistent portfolio outperformance. The models concentrate exposure in correlated assets, and their portfolios beat equal weighting on Sharpe in 54.2% of 120 evaluations across four historical periods.
Overview of PortBench. A shared multi-asset market base supports complementary static QA and dynamic five-stage evaluation. The benchmark assesses correlation-aware allocation, stagewise diagnostics through CEPS and paired interventions, and robustness across evaluation periods and investor risk profiles.
Evaluation framework. Top: static QA covers seven templates, T1 through T7, from single-asset tasks at L1 to full-portfolio judgment at L4. Bottom: at each rebalance, the LLM produces S1 through S3, and the sandbox executes the allocation and evaluates execution and risk at S4 and S5. CEPS summarizes reference-based stage scores, paired interventions test downstream effects, and the portfolio state carries into the next decision.
Explore market snapshots, static QA samples, and saved model outputs.
The market base dataset has 183 series across six asset classes from 2015 to 2025: equities (126), commodities (16), bonds (15), cryptocurrency (12), real estate (10), and cash equivalents (4), with daily prices, macro indicators, and time-aligned news.
Inter-class correlations are generally low, and intra-class correlations are strongly positive. Spreading capital inside a highly correlated class provides less hedging than allocating across weakly correlated classes.
Select a date to inspect macroeconomic indicators, asset prices, and correlations. Expand an asset class to view its representative instruments.
Number of series per asset class.
Mean within- and cross-class correlations (daily returns, 2015–2022). The right panel is the mean correlation inside each class.
Base = 100 at first listing date. Each panel shows representative instruments from one asset class.
The evaluation framework has two complementary layers: static QA and a dynamic five-stage portfolio evaluation. QA targets come from historical data and explicit task rules. Pipeline scores use a profile-constrained lookback reference from trailing returns, not future returns.
Saved model outputs under the balanced profile: market interpretation, signals, and portfolio weights. Select a model, window, and date. Stage scores and CEPS are reported in Results.
Ten LLMs and six classical baselines are evaluated across four historical market periods and three investor profiles. Models make monthly decisions in the normal period and weekly decisions during stress windows. All strategies use the same eligible assets, next-close execution, and transaction costs.
At each rebalance date the LLM produces S1–S3. The sandbox then scores S4 and S5 from that allocation under the same execution and risk rules. The corpus has 183 market series. Portfolio replay uses the 98 series with matched price histories; weight assigned to VIX or to an ineligible asset stays in uninvested cash. LLMs and classical baselines share that replay.
CEPS summarizes reference-based stage scores with a penalty for downstream score drops. Each stage score is between 0 and 1. The mean stage score is the average of the five scores. With penalty weight λ = 0.1,
At the same mean score, CEPS assigns a lower value to a pipeline with larger downstream drops, penalizing higher upstream scores followed by lower downstream scores. The five stage scores receive equal weight.
S1 and S2 use trailing-return rules. S3 combines reference-weight similarity and the class-level correlation score with equal weight (α = 0.5). S4 scores turnover agreement with the reference. S5 compares lookback VaR, drawdown, and a rule-based rebalance flag. The lookback reference supplies a reproducible decision-time target; returns and risk are evaluated from the resulting portfolios.
CEPS ranking sensitivity over 330 normal-period decisions. Each curve compares ten model means with the default ranking. Dotted lines mark λ = 0.1 and α = 0.5.
Profile constraints condition the S1/S2 prompts and the resulting signals. Normal-period CEPS is reported with a stress drawdown gate under three historical windows.
Each profile is tested under three historical stress regimes:
A model passes the stress gate for a given profile if its maximum drawdown in every stress window stays within the profile's tolerance. All 10 models fail at least one Conservative window. Nine pass all three Balanced windows, and all ten pass the Aggressive windows. Under Balanced, DeepSeek-V4-Flash is the only failure.
Per-template scores (full & restricted covariance conditions), formula vs. judgment averages, and scores by market regime. Bold = column best.
| Model | Per-Template (Full) | Mean | Restricted | Task Type | Market Regime | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| T1 | T2 | T3 | T4 | T5 | T6 | T7 | T4r | T5r | F | B | Bull | Bear | Side. | ||
| DeepSeek-V4-Flash | .520 | .843 | .945 | 1.00 | .932 | .652 | .843 | .819 | .975 | .860 | .966 | .715 | .827 | .823 | .812 |
| Qwen3.7-Max | .500 | .859 | .951 | 1.00 | .954 | .724 | .742 | .819 | 1.00 | .990 | .977 | .706 | .814 | .863 | .810 |
| DeepSeek-V4-Pro | .520 | .837 | .963 | 1.00 | .992 | .652 | .760 | .818 | 1.00 | .660 | .996 | .692 | .844 | .846 | .802 |
| Doubao-Seed-2.0-Lite | .460 | .798 | .957 | .956 | .897 | .810 | .747 | .804 | .961 | .940 | .927 | .704 | .780 | .846 | .806 |
| Doubao-Seed-2.0-Pro | .440 | .847 | .963 | .991 | .912 | .824 | .530 | .787 | .979 | .923 | .952 | .660 | .764 | .806 | .792 |
| Qwen3.6-Plus | .440 | .858 | .968 | 1.00 | .804 | .640 | .768 | .783 | 1.00 | .810 | .902 | .677 | .799 | .801 | .771 |
| GLM-5.1 | .440 | .855 | .964 | 1.00 | .421 | .882 | .738 | .757 | 1.00 | .531 | .711 | .729 | .778 | .765 | .746 |
| Qwen3.6-35B-A3B | .460 | .808 | .961 | 1.00 | .230 | .564 | .763 | .684 | 1.00 | .320 | .615 | .649 | .714 | .729 | .662 |
| Hunyuan3-Preview | .460 | .386 | .336 | .975 | .958 | .468 | .783 | .624 | .982 | .974 | .967 | .524 | .664 | .663 | .597 |
| Kimi-K2.6 | .420 | .422 | .493 | .956 | .280 | .684 | .320 | .511 | .978 | .710 | .618 | .462 | .556 | .531 | .487 |
F = mean(T4, T5), the allocation tasks with supplied statistics. B = mean(T1, T2, T6, T7). T4–T5 average 0.863, versus 0.652 for T1–T2 and T6–T7; this 0.211 gap favors T4–T5 for eight of ten models. Restricted T4 and T5 withhold the covariance statistics.
GLM-5.1 ranks first and Qwen3.6-Plus second by CEPS under all three profiles. S3 scores span .264–.310, while turnover agreement (S4) spans .121–.320 and risk-state agreement (S5) .000–.409. The table below reports per-stage scores, CEPS, and financial outcomes for all ten LLMs and six classical baselines (normal period, 2024), including Black–Litterman. Bold = column best within each profile. Select a profile to view results.
| Model | Pipeline Scores | CEPS | Financial Outcomes | Gate | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| S1 | S2 | S3 | S4 | S5 | Sharpe | Ret% | MaxDD% | Vol% | |||
| GLM-5.1 | .763 | .438 | .301 | .304 | .091 | .299 | 0.707 | 11.82 | −7.87 | 11.00 | ✗ |
| Qwen3.6-Plus | .774 | .491 | .310 | .153 | .136 | .292 | 0.875 | 14.97 | −9.56 | 12.22 | ✗ |
| Qwen3.6-35B-A3B | .754 | .405 | .304 | .217 | .045 | .263 | 0.992 | 13.55 | −6.19 | 9.21 | ✗ |
| Kimi-K2.6 | .768 | .394 | .303 | .269 | .000 | .261 | 0.445 | 8.25 | −6.59 | 9.94 | ✗ |
| DeepSeek-V4-Flash | .742 | .315 | .298 | .320 | .022 | .253 | −0.029 | 3.32 | −8.87 | 9.51 | ✗ |
| Hunyuan3-Preview | .778 | .489 | .290 | .121 | .000 | .251 | 0.547 | 9.00 | −6.38 | 9.21 | ✗ |
| DeepSeek-V4-Pro | .749 | .339 | .302 | .217 | .000 | .239 | 0.616 | 10.07 | −7.50 | 9.87 | ✗ |
| Doubao-Seed-2.0-Pro | .750 | .403 | .295 | .143 | .000 | .236 | 0.571 | 8.77 | −5.73 | 8.34 | ✗ |
| Qwen3.7-Max | .746 | .385 | .291 | .151 | .000 | .232 | 0.578 | 9.16 | −5.97 | 8.94 | ✗ |
| Doubao-Seed-2.0-Lite | .751 | .339 | .299 | .143 | .000 | .223 | 0.740 | 10.79 | −6.46 | 8.98 | ✗ |
| Equal-Weight (EqW) | N/A | N/A | N/A | N/A | N/A | N/A | 0.710 | 10.75 | −6.16 | 9.36 | N/A |
| 60/40 | N/A | N/A | N/A | N/A | N/A | N/A | 0.592 | 9.56 | −5.98 | 9.42 | N/A |
| Risk Parity | N/A | N/A | N/A | N/A | N/A | N/A | −0.130 | 3.34 | −3.50 | 4.68 | N/A |
| Cov. Risk Parity | N/A | N/A | N/A | N/A | N/A | N/A | −0.914 | 0.28 | −4.16 | 3.98 | N/A |
| Min-Variance | N/A | N/A | N/A | N/A | N/A | N/A | −3.761 | −0.82 | −1.15 | 1.28 | N/A |
| Black–Litterman | N/A | N/A | N/A | N/A | N/A | N/A | −0.929 | −3.51 | −9.62 | 7.82 | N/A |
Spearman ρ between QA and balanced-profile CEPS is −.32. Kimi-K2.6 moves from last in QA to fourth in CEPS.
| Model | QA Mean | QA Rank | CEPSbal | CEPS Rank | ΔRank |
|---|---|---|---|---|---|
| DeepSeek-V4-Flash | .819 | 1 | .226 | 10 | −9 |
| Qwen3.7-Max | .819 | 1 | .292 | 3 | −2 |
| DeepSeek-V4-Pro | .818 | 3 | .266 | 6 | −3 |
| Doubao-Seed-2.0-Lite | .804 | 4 | .244 | 9 | −5 |
| Doubao-Seed-2.0-Pro | .787 | 5 | .263 | 7 | −2 |
| Qwen3.6-Plus | .783 | 6 | .300 | 2 | +4 |
| GLM-5.1 | .757 | 7 | .384 | 1 | +6 |
| Qwen3.6-35B-A3B | .684 | 8 | .272 | 5 | +3 |
| Hunyuan3-Preview | .624 | 9 | .258 | 8 | +1 |
| Kimi-K2.6 | .511 | 10 | .274 | 4 | +6 |
In 2020, EqW Sharpe is −0.602 and the mean model gap is +0.68. In 2024, EqW Sharpe is 0.710. In 2022, every model–profile pair trails EqW, with mean ΔSharpe −0.74.
Sharpe relative to EqW across four market periods. Light shading marks Δ>0 (beat EqW). Percentages in titles are the fraction of model–profile pairs that beat EqW in that period.
The stress gate passes when maximum drawdown stays within the profile tolerance in every stress window. Nine models pass all three balanced-profile windows, and all ten pass under the aggressive profile. Under the balanced profile, DeepSeek-V4-Flash moves from the smallest normal-period drawdown (6.56%) to the largest COVID-window drawdown (22.19%), becoming the only model to fail that profile’s gate.
Maximum drawdown under the Conservative profile in each stress regime. The dashed line marks the 10% tolerance; red bars breach it.
Normalized NAV during the 2022 Market Decline (Conservative), when no LLM beats EqW. Vertical lines mark events during this period.
The 330 saved 2024 allocations hold 73 assets on average, yet still concentrate weight in correlated assets. For each decision, a matched allocation equalizes weights among the held assets within each class while preserving asset selection, class weights, and uninvested cash.
This equalization lowers volatility estimated from lookback data by 8.5% on average, with reductions in 271 of 330 decisions. Within-class covariance accounts for 76.4% of the mean variance difference, versus 23.5% from individual-asset variance terms. Mean volatility reductions are 1.6%, 9.6%, and 14.4% for conservative, balanced, and aggressive allocations.
A: model weights have higher volatility-weighted pairwise correlation than within-class equal weighting. B: shares of the mean variance difference. C: mean relative volatility reduction from equalization; negative values indicate increased volatility.
Across the 30 normal-period cells, the mean total-variation distance is 0.306 from equal weighting and 0.890 from the profile-constrained reference. Larger deviations from equal weighting are associated with higher volatility (ρ = .65), drawdown magnitude (ρ = .61), and ΔSharpe (ρ = .51). Moving from conservative to aggressive increases distance from equal weighting by .070.
Active-allocation diagnostics across 30 normal-period cells. A: distance from equal weighting versus ΔSharpe. B: the same distance versus drawdown magnitude. Shaded regions mark ΔSharpe > 0 and drawdowns larger than equal weighting.
Under the balanced profile, every model produces less turnover than the reference. The mean model-to-reference turnover ratio is .203. Reference allocations hold 8–14 securities, with maximum weights of .24–.72, whereas model allocations spread weight more broadly. Mean S3 reference-weight similarity is .110. Mean model HHI is .0207, about 48 effective positions. Partial credit for class exposure can therefore coexist with low S4 scores.
On matched model–date pairs, shifting from conservative to aggressive raises risk-asset exposure by .175 and lowers bond-plus-cash exposure by .162. Normal-period volatility rises for nine of ten models and drawdown magnitude for eight.
Under stress, the shift raises volatility for all ten models in 2020 and 2022.
Replacing one stage with its reference tests the effect on later scores. In this auxiliary diagnostic, S4 and S5 score generated execution and risk plans. Replacing S1 raises S2 by +.626 in normal episodes; both references follow the same trailing-return rule. Its mean effect on S3 is only +.017 and is negative in 40 of 110 episodes. Replacing S2 raises S3 by only +.023, with 39 negative cases. Under stress, replacing S2 or S3 lowers S5 by .059 and .056, although most episode-level S5 changes are zero.
Mean score change after replacing the indicated stage with its reference. Asterisks mark BH-FDR q < 0.05. Outlined cells are the stage pairs discussed above.
Historical-only evaluation risks data leakage from pretraining. PortBench also supports real-time evaluation: at each decision date the model receives only data available through the previous close. We collect 72 decisions from six models with daily rebalancing over 12 trading days (2026-07-16–07-31). Mean S1 scores range from .78 to .82. This initial run demonstrates stage-level evaluation on newly arriving data.
Per-decision lookback CEPS over the 12-day real-time window (Balanced).
Mean lookback stage scores (S1–S5) over the 12 real-time decision dates.
@article{zhao2026portbench,
title={PortBench: A Correlation-Aware, Full-Pipeline Benchmark for LLM-Driven Portfolio Management},
author={Zhao, Yuxuan and Chen, Sijia and Su, Ningxin},
journal={arXiv preprint arXiv:2605.27887},
year={2026}
}