TradeTrade

Portfolio Visualizer

Type in up to 20 tickers, set the weight on each, pick an analysis period, and run a real backtest against historical market data. The visualizer returns the CleaRank Score, an equity curve versus benchmark, a 1,500-path Monte Carlo projection, the eight statistics that matter (Total Return, Annualized Return, Volatility, Sharpe, Sortino, Max Drawdown, Beta, Alpha), the sector mix, and a plain-language analysis from CleaRank Financial AI. Free, no signup, runs entirely in your browser.

Portfolio Visualizer

Backtest, risk and Monte Carlo for any asset mix
CleaRank Financial AI

Build a portfolio to see real backtested performance

Add at least 2 tickers, set their weights, pick a period and click Run Full Analysis. We backtest against real historical data, compute risk metrics and run a Monte Carlo simulation.

Generate one for me
1

Build & Configure Your Portfolio

No assets added yet
Total Weight 0.0%

Backtest accuracy: real OHLC, dividend-adjusted, survivorship-bias-free

Six panels, one click. Type your tickers, set the weights, pick an analysis period, hit Run Full Analysis. The visualizer pulls real historical OHLC data, computes daily returns and the correlation matrix, runs 1,500 Monte Carlo paths against a Cholesky-decomposed covariance, stress-tests the basket against historical crises, then writes a plain-English analysis. Every chart and statistic below is computed in your browser the moment results come back from the backtest endpoint.

1. Add your tickers and set the weight on each

The top of the visualizer is a single input row: a ticker field with live typeahead (start typing AAPL, BTC, SPY or any symbol and a dropdown shows matching equities, ETFs, indices, crypto and forex), a weight % field, and an Add button. The visualizer accepts up to 20 assets per portfolio. Below the input, every asset appears as a row with a colour-coded swatch and a delete button. A Total Weight tracker bands the running sum: green between 99 and 101 percent, amber outside that. You can also click Sample Portfolio to quick-load a classic 60/30/10 basket (60% SPY, 30% AGG, 10% GLD) and skip straight to the backtest. Bridge data from the Portfolio Generator and Portfolio Ideas tools flows in automatically via sessionStorage, so you can hop from a generated basket into the visualizer with one click.

📊 Portfolio assets
TOTAL 100%
SPYSPDR S&P 500 ETF60%
AGGiShares US Aggregate Bond30%
GLDSPDR Gold Trust10%

Configure the lens
Investment amount
$10,000
Period
5 years
Benchmark
SPY
1Y
3Y
5Y
10Y

2. Configure the lens: amount, period, benchmark

The three lens controls sit right under the asset list. Investment Amount sets the starting capital, default $10,000, which the backtest grows or shrinks bar by bar through the period. The dollar amount feeds the equity curve, the Monte Carlo terminal balances and the worked example in the AI narrative. Analysis Period is a four-button group: 1 year, 3 years, 5 years (the default) or 10 years of real historical OHLC pulled from the data endpoint. Benchmark dropdown lets you compare against SPY (the default broad-market proxy), or any other standard market index. Whichever benchmark you pick is what the equity curve, Alpha and Beta are computed against. Pick the benchmark that matches the universe you actually invest in: SPY for US equities, AGG for bonds, BTC if you are running a crypto basket.

3. Run a real backtest against historical data

Click Run Full Analysis and the visualizer kicks off a six-stage pipeline that you can watch on screen. Stage one, fetching real historical market data (daily closes for every ticker plus the benchmark, no synthetic returns). Stage two, computing daily returns and volatility from those closes. Stage three, running 1,500 Monte Carlo paths against a Cholesky-decomposed covariance matrix so the projections respect the real correlation between your holdings. Stage four, building the correlation matrix for the diagnostic heatmap. Stage five, stress-testing against historical crises (the 2020 COVID crash, the 2022 bond-and-equity drawdown, 2008 reference scenarios where dates overlap your period). Stage six, synthesising the plain-language analysis from CleaRank Financial AI. The whole pipeline runs in roughly 8 to 25 seconds depending on the ticker count and the analysis period.

Backtest pipeline

Fetching real historical market data

Computing daily returns & volatility

3

Running 1,500 Monte Carlo paths

4

Building correlation matrix

5

Stress-testing against crises

6

Synthesising the analysis

🎯 CleaRank Score
GOOD

73
of 100
Return15/20
Risk Mgmt17/20
Efficiency14/20
Diversification12/20
Consistency15/20

Total Return
+58.4%
Sharpe
1.12
Max DD
-14.8%
Beta
0.78

4. Read the CleaRank Score and the eight stats that matter

The first card the visualizer renders is the CleaRank Score arc, a 0 to 100 composite that rolls up five sub-scores worth 20 points each: Return (annualized return vs the 15% benchmark), Risk Management (drawdown control, with 40%+ max drawdown scoring zero), Efficiency (Sharpe ratio scaled to 1.5), Diversification (the diversification ratio relative to the basket sum of volatilities), and Consistency (percent of positive trading days). 80+ is Excellent, 60 to 79 is Good, 40 to 59 is Fair, below 40 needs work. Below the arc, the visualizer surfaces the eight statistics that matter: Total Return, Annualized Return, Annual Volatility, Sharpe Ratio (with the benchmark Sharpe alongside for direct comparison), Sortino Ratio (penalises downside volatility only), Max Drawdown, Beta vs benchmark, and Alpha vs benchmark. Every number is computed from the real daily returns, not modelled.

5. See where your edge lives across crises

Two charts answer the only question that matters: how did the portfolio behave when markets misbehaved. The equity curve plots your portfolio in pink against the benchmark in teal, day by day across the entire analysis period. Crisis windows are obvious on sight: the COVID drawdown in March 2020, the 2022 stocks-and-bonds correlated drop, the August 2024 yen unwind. If your line tracks the benchmark on the way up and outperforms on the way down, you have real diversification. If both lines crater together, you have a single-factor portfolio dressed up to look diversified. Underneath, the Monte Carlo 3-band projection renders 1,500 simulated forward paths, then plots the p10, p50 (median) and p90 final-balance bands. The bands fan out over time, and the spread between p10 and p90 tells you exactly how much variance to expect from the strategy even if the average return is good.

📈 Equity vs SPY
5Y
■ Portfolio +58.4%
■ SPY +47.1%
🎯 Monte Carlo · 1,500 paths
p10
$11,420
p50
$15,840
p90
$21,260
Correlation matrix

Diversification ratio
1.42x
Ultra only
Correlation Matrix
See your true diversification. Find which holdings actually move together and which give you real diversification benefit.

Unlock with Ultra

6. Find what hides inside your portfolio

Three diagnostics turn a one-line backtest into a real risk model. The Correlation Matrix renders a heatmap of pairwise correlations between every holding plus the diversification ratio (how much volatility you saved by combining vs the weighted sum of standalone vols) and a factor decomposition. The Drawdown Distribution plots the full peak-to-trough drawdown curve across the backtest, surfaces worst day, worst month, worst year, and the 95th-percentile recovery time, all compared against the benchmark. The Risk Contribution breakdown computes per-asset risk contribution in percent, exposing the silent concentration pattern where one single stock can drive 50 to 60 percent of total portfolio variance even though it only takes up 15 percent of capital. The three diagnostics ship locked on the free embed and unlock together with an Ultra subscription. The visualizer renders blurred mockups in place of the live cards so you can see exactly what you are missing before you upgrade.

Sharpe vs Sortino vs Calmar: three risk-adjusted return metrics

Long-only investors, prop-firm candidates running multi-instrument baskets, ETF rotation traders, retirees modelling withdrawal risk. Same six-stage pipeline, four different decision-grade outputs. Pick the workflow that matches yours.

Buy-and-hold investors backtesting 60/40

The classic 60% stocks 40% bonds allocation lost 17% in 2022 because stocks and bonds correlated to the upside in inflation, then both fell. Run the visualizer over a 10-year window with SPY and AGG. Look at the Max Drawdown stat versus the benchmark Sharpe. If 60/40 is still your default, the numbers will tell you whether it is rebalancing or rebuilding.

Funded-account candidates stress-testing risk

funded-account programs and Apex limit max daily drawdown and total drawdown. Plug your basket into the visualizer with a 3-year window. Look at the p10 Monte Carlo path. If the worst 10% of forward simulations breaches your prop firm’s max drawdown, the basket is too aggressive for the challenge no matter how strong the average return looks.

ETF rotation traders comparing baskets

Sector rotation strategies live and die by the basket you rotate into. Build three candidate baskets, run each through the visualizer at a 5-year window, then compare the CleaRank Score, Sharpe and Max Drawdown side by side. The basket with the highest score and the lowest correlation to your other positions wins the rotation.

Retirees modelling drawdown risk

In withdrawal phase, the sequence of returns matters more than the average. A 30% drawdown in year one can permanently wreck a 30-year retirement plan. Run the 10-year backtest, then read the Max Drawdown stat and the p10 Monte Carlo terminal balance. If the p10 path runs out of money, drop equity exposure until it does not.

1,500-path Monte Carlo: reading the p10, p50, p90 outcomes

Most free portfolio visualizers on the open web stop at a pie chart and a CAGR number. The CleaRank version runs a real six-stage backtest using actual historical OHLC data, then layers risk diagnostics on top. Real historical data, not Markowitz toy assumptions. Every metric (Total Return, Annualized, Volatility, Sharpe, Sortino, Max Drawdown, Beta, Alpha) is computed from daily closes, not from theoretical mean-variance inputs. 1,500-path Monte Carlo with Cholesky-decomposed correlation, which means the forward projections respect how your holdings actually co-move (a portfolio of correlated tech stocks behaves nothing like one of uncorrelated assets, and the simulation reflects that). Stress-tested against historical crises by replaying the COVID 2020 and 2022 windows when those dates intersect your period. No signup, no upload, no tracking. Tickers are typed in, the backtest runs through the Edge function, results come back and render in your browser only.

The visualizer also ties into the rest of the dashboard. A one-click Send to Generator button passes your current portfolio over to the Portfolio Generator as a starting basket, where Modern Portfolio Theory and risk-parity optimisers can find a better weight mix. Bridge data from Portfolio Ideas (13 curated portfolios from 543 indexed fund managers) flows in the other direction, so you can load a model portfolio and stress-test it against your own analysis period in two clicks. Pro and Ultra subscribers get the same visualizer inside the full 22-tool trading workbench at trade.clearank.com, with the Correlation Matrix, Drawdown Distribution and Risk Contribution diagnostics unlocked.

Crisis stress tests: 2008 GFC, 2020 COVID, 2022 rate hike replay

A portfolio visualizer is a calculator that simulates how a basket of assets would have performed if you had actually held it across a real historical window. You type in tickers and weights, you pick a period, and the tool replays day-by-day market data to compute total return, volatility, drawdown, Sharpe ratio and a handful of other risk-adjusted statistics. Then it forecasts the next chapter forward using Monte Carlo simulation: thousands of randomly-sampled possible paths consistent with the historical distribution of returns. The output is two answers in one screen: how did this basket actually behave, and what range of outcomes should I expect if I keep holding it.

The reason serious investors use portfolio visualizers is that the average return number on its own is misleading. A 10 percent annualised return that delivers it through a 40 percent drawdown is a different product from a 10 percent annualised return that delivers it with a 12 percent drawdown. A Sharpe ratio of 0.4 is a different product from a Sharpe ratio of 1.2 even though both can show the same total return. The visualizer surfaces every dimension at once: the absolute return, the risk that produced it, the correlation with the benchmark, and the distribution of forward outcomes. With the full picture in one place, you can compare two competing baskets in seconds rather than building spreadsheets that take an afternoon.

A backtest is not a forecast, and any honest visualizer will say so up front. Historical data tells you the strategy survived its specific past. Monte Carlo tells you the strategy survives small deviations from that past. Neither tells you the next decade will look like the last one. Use the visualizer the same way a pilot uses a flight simulator: not to predict the next flight, but to discover where the controls behave badly so you do not learn that lesson at 30,000 feet with real passengers on board.

“Allocation is not a one-time decision. It is a continuous experiment. A portfolio visualizer is the cheapest way to run that experiment without using real capital as the test subject. Plug in a basket, replay the last five years, look at how the line behaved when the market behaved badly. The numbers that matter are the ones that did not move when everything else did.”

The CleaRank Score, in five 20-point components

Five sub-scores worth 20 points each, summed to a single 0 to 100 composite. Each component pulls from a different risk-adjusted angle, and the breakdown bars on the score card show which dimensions a portfolio is strong on and which it is weak on. The five components below explain how every basket gets graded.

  • Return (0 to 20). Scaled against a 15 percent annualised return benchmark. A 15% annualised basket scores the full 20. A 7.5% annualised basket scores 10. Anything negative scores zero.
  • Risk Management (0 to 20). Scaled inversely against a 40 percent maximum drawdown ceiling. A basket with zero historical drawdown scores 20, a basket that lost 20% peak-to-trough scores 10, a basket that lost 40%+ scores zero.
  • Efficiency (0 to 20). The Sharpe ratio scaled to 1.5. A Sharpe of 1.5+ scores 20, a Sharpe of 0.75 scores 10, a Sharpe of zero or negative scores zero.
  • Diversification (0 to 20). The diversification ratio (portfolio vol divided by the weighted sum of individual vols) scaled between 0.8 and 1.5. A ratio above 1.5 means real diversification benefit and scores 20. A ratio near 1.0 means the basket is not diversifying and scores low.
  • Consistency (0 to 20). The percentage of trading days that closed positive, scaled between 40% and 60%. A basket that closes up 60% of days scores 20. A basket that closes up 50% of days scores 10. Below 40% scores zero.
CleaRank Score = sum of 5 components
+ Returnannual_return / 15%20 pt
+ Risk Mgmt1 – |MaxDD| / 40%20 pt
+ EfficiencySharpe / 1.520 pt
+ Diversification(divRatio – 0.8) / 0.720 pt
+ Consistency(posDays – 40%) / 20%20 pt

Total73 / 100

80+ Excellent · 60+ Good · 40+ Fair · under 40 needs work.

Worked example: four portfolios, four verdicts

Same visualizer, four very different allocations across a 10-year window through end-2025. The Sharpe and Max Drawdown numbers below are illustrative ranges for each style, computed from a typical 10-year backtest against SPY as benchmark.

AGGRESSIVE 100% STK
100% SPY
Single-asset US equity exposure. Maximum return, maximum heartbeat.
Sharpe
~0.65
Max DD
-34%
Fair. Best returns, worst drawdown. Single point of failure.
BALANCED 60/40
60% SPY / 40% AGG
The textbook moderate-risk allocation. Equity for growth, bonds for ballast.
Sharpe
~0.85
Max DD
-22%
Good. 2022 broke the correlation, but still the strongest mainstream default.
CONSERVATIVE 30/70
30% SPY / 70% AGG
Late-career or risk-off allocation. Most capital in bonds, equity for growth tail.
Sharpe
~0.78
Max DD
-13%
Good. Lower return, much shallower drawdown. Survivable.
RISK PARITY 25/25/25/25
SPY / AGG / GLD / TLT
Equal-weight across four uncorrelated asset classes. The All-Weather lite.
Sharpe
~0.92
Max DD
-15%
Excellent. Best risk-adjusted return. Diversification ratio above 1.4.

Four very different shapes, four very different verdicts. Notice the 100% SPY allocation has the highest expected return on paper but the worst drawdown (-34% in 2020 or 2022). The 60/40 is the textbook default but lost most of its diversification benefit in 2022 when bonds correlated to equity. The 30/70 conservative basket has a lower return but a much shallower drawdown, which often produces a better Sharpe ratio than the high-return high-drawdown alternative. The 25/25/25/25 risk parity allocation, despite a lower headline return, wins on the score because the four asset classes diversify against each other: when stocks fall, gold or bonds often rise. The visualizer surfaces this trade-off in one screen.

10-year historical reference: common allocations

Illustrative 10-year backtest ranges for seven popular allocations through end-2025, computed against SPY as benchmark. Use this as a sniff test for your own basket: if the visualizer returns numbers far outside these ranges, the holding mix or the period is the reason. Annualised Return and Volatility are stated as percentage points. Sharpe is risk-adjusted return per unit of volatility. Max DD is the worst peak-to-trough drawdown.

The pattern jumps off the table. Concentrated single-asset baskets (100% SPY, 100% QQQ) post the highest returns but the worst drawdowns and the lowest Sharpe ratios. Multi-asset baskets (60/40, risk parity, all-weather) post lower returns but materially better risk-adjusted performance. The winner on the Sharpe column is usually the basket with the best diversification ratio, not the basket with the highest return.

10-year reference · through end-2025 · vs SPY
Allocation 10y Ann Vol Sharpe Max DD
100% SPY +11.8% 15.2% 0.65 -34%
100% QQQ +16.4% 19.8% 0.72 -36%
60/40 (SPY/AGG) +8.4% 9.6% 0.85 -22%
30/70 (SPY/AGG) +5.6% 6.5% 0.78 -13%
Risk parity 25×4 +7.9% 8.2% 0.92 -15%
All-Weather (Dalio) +6.8% 7.4% 0.88 -14%
Permanent (25×4 cash) +5.1% 5.8% 0.74 -9%

Illustrative ranges. Run your exact tickers through the visualizer to get backtested numbers against your real holding period.

Five mistakes that make a portfolio backtest lie to you

A backtest is only as honest as the assumptions behind it. The five mistakes below turn a green CleaRank Score into a red brokerage statement six months later. Each one has a one-line discipline that prevents it.

01

Over-rebalancing on short windows

Backtesting a 1-year period and rebalancing weekly chases noise, not signal. Use 5-year or 10-year windows and quarterly or annual rebalancing for any allocation decision. The visualizer’s 5y default is set there for a reason.

02

Chasing last year’s leaders

The asset class that posted the highest return last year is the worst predictor of next year. The visualizer’s 10-year window smooths over single-year leaders. Pick allocations whose Sharpe holds up across multiple periods, not the one that flew in the most recent year.

03

Ignoring correlation between holdings

Owning five tech ETFs is owning one tech ETF five times. The Correlation Matrix Ultra diagnostic exists for this. If the diversification ratio is below 1.1, the basket is not actually diversified, no matter how many tickers it contains.

04

Equal-weighting risk-different assets

A 25% TLT (long bonds, 8% vol) and 25% TQQQ (3x leveraged Nasdaq, 60% vol) does not equal-weight risk. The Nasdaq leg drives almost all the variance. The Risk Contribution Ultra diagnostic shows the real risk weight per asset, which is rarely the same as the capital weight.

05

Backtesting one period and trusting it

A basket that printed 14% Sharpe through a bull market often prints 0.3 Sharpe in the next regime. Run the visualizer at 3y, 5y and 10y. If the Sharpe ratio collapses on the longer window, the basket got lucky in the short one. Use the worst Sharpe across the three windows as your real expectation.

Continue the workflow with these calculators

Frequently asked questions

How does a portfolio visualizer work and what does it actually compute?

A portfolio visualizer takes a list of tickers and weights, pulls real historical OHLC data for each asset across your chosen period, then computes how that exact basket would have performed if you had held it across the period. The six-stage pipeline above fetches the prices, computes daily returns and volatility, runs a 1,500-path Monte Carlo against a Cholesky-decomposed correlation matrix, builds the asset correlation heatmap, stress-tests against historical crises, then synthesises a written analysis. The output is the equity curve versus benchmark, plus the eight statistics: Total Return, Annualized Return, Annual Volatility, Sharpe Ratio, Sortino Ratio, Max Drawdown, Beta and Alpha. Everything is computed from real daily closes, not modelled from theoretical inputs.

What is a good Sharpe ratio for a long-only portfolio?

For a long-only buy-and-hold portfolio across a 5-year or 10-year window, Sharpe ratio bands break out roughly as follows. Below 0.5: the basket is taking on volatility without commensurate return, common for concentrated single-stock or single-sector baskets. 0.5 to 1.0: typical for most diversified equity portfolios including 100% SPY (historically around 0.65). 1.0 to 1.5: a well-diversified risk-balanced basket, the level professional allocators target. Above 1.5: rare for buy-and-hold without margin or active overlay, usually achievable only by multi-asset baskets with strong negative correlations. The visualizer surfaces the Sharpe alongside the benchmark Sharpe so you can see whether your basket beats SPY on a risk-adjusted basis or just on absolute return.

How many Monte Carlo simulations does the visualizer run?

The visualizer runs 1,500 Monte Carlo paths per analysis, against a Cholesky-decomposed covariance matrix built from the historical daily returns of every holding plus the benchmark. The Cholesky decomposition is critical: it means each simulated path respects the real correlation between your assets, so a portfolio of tech stocks behaves like a portfolio of tech stocks in the simulation (everything moves together on a bad day), not like an artificial mix of independent assets. The output is rendered as three bands: p10 (the bottom 10th percentile, your bad-case scenario), p50 (the median terminal balance), and p90 (the top 10th percentile, your good-case scenario). The width between p10 and p90 tells you exactly how much variance to expect from the strategy looking forward.

What is the difference between maximum drawdown and standard deviation?

Standard deviation (volatility) measures how much the portfolio bounces around its average return on a typical day. It is a two-sided number: a 1% move up counts the same as a 1% move down. Maximum drawdown is one-sided: it measures the largest peak-to-trough loss across the entire period. Two portfolios with identical annual volatility can have very different max drawdowns depending on whether the bad days clustered or spread out. The visualizer surfaces both so you see the full picture. Use volatility to grade smoothness day-to-day. Use max drawdown to grade survivability when things go wrong. A portfolio with 12% volatility and 20% max drawdown survived a typical bear cycle. A portfolio with 12% volatility and 45% max drawdown had a single cluster of catastrophic days. The first is investable. The second is a coin-flip waiting to happen.

Can the portfolio visualizer backtest crypto and forex alongside stocks?

Yes. The ticker typeahead pulls from the same symbol search endpoint that the rest of the dashboard uses, which indexes equities, ETFs, indices, crypto and forex pairs. Type BTC and you will see Bitcoin variants. Type EURUSD and you will see the major forex pair. Type SPY, AAPL, AGG, QQQ for stocks and ETFs. You can mix all five asset types in one basket up to the 20-asset limit, weight them however you want, and the backtest will pull real historical daily data for each. The only caveat: crypto and forex trade 24/7 while stocks trade on the exchange schedule, so the visualizer aligns the price series to the trading calendar before computing daily returns. This is the right behaviour for a portfolio backtest but means crypto-only baskets will show slightly different returns than the same basket measured on a 24/7 calendar.

How accurate are historical backtests for predicting future portfolio returns?

A backtest is a historical record, not a forecast. The honest answer is that historical returns are a weak predictor of future returns (the correlation between past 10-year and next 10-year returns of the same allocation is often below 0.4), but historical volatility, drawdown and correlation patterns are much stronger predictors of the future shape of risk (those correlations often exceed 0.7). Translation: if a basket showed a 22% max drawdown over the last decade, expect somewhere between 18% and 30% in the next one. If it showed a 9.6% annual volatility, expect 8% to 12%. The return number is the least reliable forecast in the output. Use the visualizer to model how the basket will behave when things go wrong, not to predict the exact return number. The Monte Carlo p10 to p90 band exists precisely to honest this uncertainty.

What is the difference between the Correlation Matrix and the Risk Contribution breakdown?

The Correlation Matrix is a heatmap of pairwise correlations between every asset in the basket. It answers “which holdings move together”. A correlation of 1.0 means two assets move in perfect lockstep, 0.0 means they move independently, -1.0 means they move in opposite directions. The matrix exposes hidden duplication: if you own SPY, VOO and VTI, the correlations between them will all be above 0.95 and you are effectively holding one position three times. The Risk Contribution breakdown is different: it computes what percentage of total portfolio risk each asset contributes, not what percentage of capital. A 15% allocation to a high-volatility leveraged ETF can easily contribute 60% of total portfolio variance, while a 40% bond allocation contributes only 8%. Both diagnostics ship together in the Ultra tier because they answer two halves of the same question: are you diversified, and where is the concentration hiding.

Why does my portfolio score lower than the benchmark even though my returns are higher?

The CleaRank Score is a five-component composite, not a return-only metric. A basket can post a higher Total Return than SPY but still score lower because the score also grades Risk Management (your max drawdown vs 40% ceiling), Efficiency (your Sharpe vs 1.5), Diversification (your diversification ratio) and Consistency (your positive-days percentage). A concentrated single-stock basket that returned 18% with a 45% drawdown and a Sharpe of 0.55 will score lower than SPY at 12% return with a 25% drawdown and 0.78 Sharpe, because the latter is much more efficient per unit of risk. If your portfolio is outpacing the benchmark on return alone but scoring lower, look at the breakdown bars on the score card. The lowest bar is the dimension dragging you down. Most commonly it is Diversification (the basket is too concentrated) or Risk Management (a single big drawdown blew out the risk score even though the recovery was fast).