---
title: "What every number in Performance Metrics means"
description: "Performance Metrics reports your backtest's return, drawdown, volatility and monthly figures; this guide explains each row and its convention."
canonical_url: "https://fincanva.com/docs/analysis/what-every-number-in-performance-metrics-means"
last_updated: "2026-10-11"
md_url: "https://fincanva.com/docs/analysis/what-every-number-in-performance-metrics-means.md"
---

# What every number in Performance Metrics means

**Performance Metrics** turns your [backtest](/glossary/backtest) into a table of return, drawdown, volatility, worst-day and monthly figures; here is each row, in the order the app shows it, with its convention.

A backtest's Performance Metrics page opens on four tiles: Sharpe ratio, Volatility, Longest drawdown and CAGR vs benchmark.

## Steps

1. **Open Performance Metrics.** Open the [strategy](/glossary/strategy), go to **Analysis** and select **Performance Metrics**. With no completed backtest the tab reads "No results yet" — "Backtest this strategy to generate its metrics."; select **Backtest** and the table fills in when the run finishes.
2. **Read Performance: how much, and how fast.** **Total return (%)** is the gain or loss from the first simulated day to the last ([total return](/glossary/total-return)); **Years** counts calendar years to decimal months. **CAGR** is the compound annual growth rate, `(1 + total return) ^ (1 / years) − 1` ([CAGR](/glossary/cagr)); **AAGR**, the arithmetic one, `total return ÷ years`, takes the same row while **Reinvest profits** is off ([AAGR](/glossary/aagr)).
3. **Read Drawdown: how far it fell, and how long it took to come back.** **Max drawdown** is the largest peak-to-trough decline of the [capital curve](/glossary/equity-curve) ([drawdown](/glossary/max-drawdown)). **Return-to-drawdown ratio** is `return ÷ |max drawdown|`, the figure the heatmap labels **NP/DD** ([return-to-drawdown ratio](/glossary/return-to-drawdown-ratio)). **Longest drawdown (months)** is the longest stretch below a prior peak, **Longest recovery (months)** the longest climb back to one ([longest drawdown](/glossary/longest-drawdown), [longest recovery](/glossary/longest-recovery)).
4. **Read Volatility and risk: how bumpy, against a risk-free baseline.** **Volatility** is the annualized standard deviation of returns ([volatility](/glossary/volatility)); **Semideviation (downside only)** is the same measure on the losing days alone ([semideviation](/glossary/semideviation)); **Risk-free rate** is the period average of a real short-term reference rate ([risk-free rate](/glossary/risk-free-rate)). **Sharpe** is `(annualized return − risk-free rate) ÷ annualized volatility`, with CAGR or AAGR as the return ([Sharpe ratio](/glossary/sharpe-ratio)).
5. **Read Worst days · 95%: the bad days.** The three rows are daily losses written as positive numbers — "2.1%" is a 2.1% loss in one day. **Daily VaR · historical** is where the worst 5% of days begin, **Daily VaR · Gaussian** the same threshold if returns were normal, and **Daily CVaR · historical** the average loss across those days.
6. **Read Monthly performance and Averages.** **Positive months (%)** is the share of months that ended with a positive return ([positive months](/glossary/positive-months)); **Best month** and **Worst month** are the extremes ([best month and worst month](/glossary/best-month-and-worst-month)). **Monthly average** and **Yearly average** are plain averages of the monthly and annual return series ([monthly and yearly average](/glossary/monthly-and-yearly-average)).

**Done.** You can read every row of the table, on every plan, beside [the growth chart](/glossary/capital-chart) that draws the strategy against its [benchmark](/glossary/benchmark) — and, on a strategy with an active risk condition, the band that shows when it ran Risk-On and when Risk-Off ([regime timeline](/glossary/regime-timeline)).

## What do the worst-days rows show?

They report how much the strategy lost on the 5% of trading days with the worst returns. **Daily VaR · historical** is the value at risk at 95%, read straight off the backtest: on 95% of days the strategy lost less than this. **Daily VaR · Gaussian** is the same threshold computed as if daily returns followed a normal distribution with the backtest's own average and volatility: $\text{VaR}_{95\%} = 1.645\,\sigma - \mu$, where $\sigma$ is the daily volatility, $\mu$ the average daily return, and 1.645 the number of standard deviations that leaves 5% of a normal distribution below it ([value at risk](/glossary/value-at-risk)). **Daily CVaR · historical** — expected shortfall — is the **average** loss across those days, never smaller than the historical VaR ([conditional value at risk](/glossary/conditional-value-at-risk)).

Read the two VaRs side by side: when the historical one is clearly larger than the Gaussian one, the strategy's bad days were worse than a normal distribution expects — its losses have fat tails, and the Gaussian figure understates them. A backtest with only a few hundred days rests its worst 5% on a handful of days, so these rows are rougher on a short history.

## How are these numbers annualized?

Every annualized figure on this page shares one basis: Fincanva scales volatility with the √252 trading-day convention and measures years as geometric calendar years carried to decimal months. Every value is stored as a fraction (for example `0.153`) and formatted for display as a percentage ("15.3%"), while ratio rows such as **Sharpe** and **Return-to-drawdown ratio** are plain numbers. The risk-free baseline is a real, period-matched market series rather than a fixed value — except for months outside that series, where a flat 2% a year stands in.

## Which metrics live in other views?

Some figures sit on other analysis surfaces rather than the main [metrics table](/glossary/metrics-table). On a [Combined](/glossary/combined), the **Sub-strategies** tab's **Each sub-strategy, against the Combined** block adds a [Sortino ratio](/glossary/sortino-ratio), [tracking error](/glossary/tracking-error) and [information ratio](/glossary/information-ratio) for each of its strategies, and the same tab opens with [contribution analytics](/glossary/contribution-analytics), which splits the Combined's return, volatility, Sharpe and daily VaR among them. The [start-date sensitivity](/glossary/start-date-sensitivity) view reports [average pain](/glossary/average-pain). The [stress test](/glossary/stress-test) on the **Robustness** tab recomputes the daily VaR and CVaR under a scenario, and [backtest reliability](/glossary/backtest-reliability) shows how much the return, the Sharpe and the maximum drawdown could have varied. Two textbook measures are worth knowing though Performance Metrics does not display them: [beta](/glossary/beta), which appears in the [Beta neutral](/glossary/beta-neutral) allocation method rather than as a metric, and [alpha](/glossary/alpha). The [Fincanva score](/glossary/fincanva-score) summarises overall quality.

## Why does a row read n/a, or AAGR instead of CAGR?

**AAGR instead of CAGR:** **Reinvest profits** is off in the tab's **Simulation assumptions**. The two share one row, and AAGR takes it while reinvesting is off — switch **Reinvest profits** on to read CAGR. The same switch decides which of the two the **Sharpe** row uses.

**n/a:** the simulation was computed before the worst-days rows and **Semideviation** existed, and it does not carry them. A value that could not be computed reads "n/a", never 0% — a 0% loss would claim a safety the figure does not show. When all four read "n/a" on a strategy you can run, a notice above the table says "Some metrics can't be computed for this simulation. If it ran before this update, rerun it to get them." with a **Rerun** button; press it, and the rows fill in when the new backtest finishes.

Fincanva is for education and illustration only. It is not personalised financial advice, and past or simulated results do not predict future ones. [Read the Terms Addendum](https://fincanva.com/terms/addendum#section-3)
