VEEMANDocs
DocumentationSupportOpen Dashboard

Getting started

  • Introduction
  • Quick start
  • Core concepts

Importing data

  • Supported formats
  • How import works
  • Splitting a file
  • Troubleshooting

Building your portfolio

  • Workspace & equity
  • Weights & capital
  • Weekday filter
  • Library
  • Variants & comparison
  • History (undo/redo)
  • Shared spaces

Analytics

  • Metrics reference
  • Charts (deep-dive)
  • Monthly P&L
  • Correlations
  • Strategy comparison
  • Monte Carlo
  • Equity Control
  • Optimization
  • Veeman AI

Reference

  • Keyboard & command palette
  • Exporting data
  • Settings

Technical

  • Architecture
  • API reference
  • Security
  • Your data & privacy
  • Risk disclosure
← PreviousCorrelationsNext →Monte Carlo

Strategy comparison

The compare section (Analysis → Compare, right after the per-strategy breakdown) puts 2–6 strategies side by side so you can judge how they differ — and how they compensate each other — without expanding one detail row at a time.

Every number in this section is the same number the per-strategy breakdown shows: metrics are computed on each strategy's real behaviour inside the portfolio (weight, dynamic sizing and compounding active), from the same backend source. The comparison never recomputes anything on its own.

Selecting strategies

Strategies are picked with the chips at the top. Each chip carries the strategy's colour — the same colour its individual line has in the Workspace charts, assigned by its stable position in the session. Hovering a selected chip highlights that strategy in the radar and the equity chart.

Up to 6 strategies can be compared at once. Each strategy is drawn as a filled area with a coloured interior; from 5 selected the fill is lightened (overlapping translucent fills would otherwise pile up near the centre) but the colour is kept, and hovering a chip brings its area forward. The selection is remembered per session while the browser tab lives.

Hidden strategies can be compared too

A strategy excluded from the portfolio is still selectable: its metrics are computed single-leg (with its own sizing), exactly as in the per-strategy breakdown. It has no curve in the equity overlay and no row in the correlation matrix, so those readings are declared as not available rather than silently dropped.

The radar and its scale

The radar draws one polygon per selected strategy over six axes:

AxisMetricDirection
CAGRannualized growth ratehigher is better
SharpeSharpe ratiohigher is better
CalmarCAGR ÷ max drawdownhigher is better
Profit factorgross profits ÷ gross losseshigher is better
Max DDmaximum drawdown, % (a value ≤ 0)closer to zero is better
CVaR 95expected shortfall of the worst 5% of trading dayslower is better

Raw metrics live on incompatible scales (a Sharpe near 1.5, a CAGR near 20%, a drawdown near −30%), so the radar plots a normalized score, computed like this:

  • for each axis, the reference frame is the whole session roster — every strategy in the session, not just the selected ones. The best value in the roster maps to the outer edge, the worst to the inner end of the scale: score = (value − worst) / (best − worst);
  • the two risk axes are oriented so that further out always means better: Max DD is a negative percentage (closer to zero plots further out), CVaR is a positive magnitude (smaller plots further out);
  • the drawn scale has a small visual floor (15 on a 0–100 radius): the worst strategy of the roster keeps a visible polygon instead of collapsing into the centre. The semantics are unchanged — the innermost vertex still reads "worst of the roster";
  • if every strategy in the roster has the same value on an axis, all polygons sit at mid-scale on that axis; a strategy missing a metric sits at the floor and shows "—" in the tooltip.

The radar is a reading aid, not a measurement

The polygon's shape and area are relative to your session roster: they change when strategies enter or leave the session (the reference min–max moves), and a "full" polygon only means "best of this roster", not "objectively good". Read magnitudes from the tooltip and the table — they always show the raw values.

Because the scale is anchored to the roster rather than to the current selection, adding or removing a comparison strategy never reshapes the others.

Metrics face to face

The table lists the institutional metric set in the same groups as the per-strategy breakdown (performance, risk-adjusted ratios, drawdown and risk, daily distribution), one column per selected strategy, plus the covered period and the sample size.

The best value of each row is underlined in the winning strategy's colour. For risk metrics "best" means least severe: the Max DD closest to zero, the lowest volatility, VaR, CVaR and drawdown duration. Ties are all marked. Rows without a meaningful direction (period, sample size) are not marked.

Rebased equity and pairwise correlation

The equity chart overlays the selected strategies' individual curves — the same series as the Workspace's per-strategy lines, weekday filters included — rebased to cumulative return in % of each curve's own starting value, on the portfolio's date axis. Rebasing puts strategies with different capital footprints on one honest scale, and makes the timing of gains and drawdowns comparable: complementary strategies visibly zig when the others zag.

Below the chart, one row per selected pair lists the Pearson correlation of daily P/L over the full period by default (see Framed period), computed by the same engine as the correlation matrix (pairwise-complete: only days both strategies actually traded). The ρ value is coloured on the same scale as the matrix — red for positive correlation (concentration risk), blue for negative (hedge/diversification), neutral near zero. As a rough guide — the same one the matrix documentation uses — pairs below ≈ 0.2 compensate well, pairs above ≈ 0.6 tend to move together. Pairs involving a hidden strategy read "n/a", since the matrix only covers visible strategies.

Framed period

This module follows the workspace's reading calendar, like the Metrics ledger and the Monthly P&L grid. Turn on align starting capital in the workspace and pick a range: radar, table, curves and ρ all move to the framed window together, with a band above them naming the active period. A comparison whose panels covered different stretches would not be a comparison at all — that is why they move as one and never separately.

Inside a window:

  • each strategy's equity is rebased to the initial capital on the window's first day, with that leg's own factor — the very same curve the workspace draws for it — so the lines restart from 0% and the table underneath reports the same numbers;
  • the metrics, the covered period and the sample size describe the framed stretch only, so a strategy that traded little in that period honestly shows a small sample;
  • the pairwise ρ is computed on the framed days alone (the tooltip says so), which is what makes it answer "were they correlated then?" instead of "on average, ever".

Without that checkbox the range selector is a pure zoom and this module stays on the full history.

Next: freeze whole configurations and overlay them with Variants & comparison — comparison at the portfolio level rather than between single strategies.