# Metrics

> Exact definitions of every backtest metric – final capital, win rate, capital factor, max. drawdown, the heatmap and blind-test values, and the R statistics: expectancy, profit factor, Sharpe, edge score, MAE and MFE.

Updated: 2026-10-25T01:50:47.000Z · https://chartrider.com/docs/strategies/metrics/

ChartRider shows two kinds of numbers:

- **Account metrics** in USDT – the **Key metrics** box, the heatmap, the blind test and the Strategies panel. They come from the simulated account of each run: 10,000 USDT at the start, a fixed risk per trade, compounding, the fee, the size cap from leverage, and liquidation.
- **Trade statistics in R** – the **MAE / MFE** tab and the WickScript backtest preview. They look at each trade on its own, independent of position size.

How the account and the trades are simulated is described on [Backtest engine](https://chartrider.com/docs/strategies/backtest-engine/).

## R

**R** is the distance between the entry and the initial stop. A trade's result in R is the price move in its favour divided by that distance: a long from 100 with its stop at 98 that exits at 104 made +2 R; stopped out, it made −1 R. With partial exits, each part counts with its share of the original size.

## Key metrics

The box at the top right of the chart appears when the backtest on the chart (`F5`, or a run opened from the heatmap) has at least one trade.

| Label | Definition |
|---|---|
| **$… final capital · from $…** | Account value after the last trade, and the start capital (10,000). Margin still held by an open position counts. |
| **±…%** | (final capital ÷ start capital − 1) × 100 |
| **Win rate** | Winning trades ÷ trades × 100. A trade wins when the price result of all its exits together is above zero, **before fees**. A result of exactly zero counts as a loss. |
| **Trades** | Number of closed positions. Partial exits don't count separately; a position closed at the end of the data counts. |
| **Capital factor** | Final capital ÷ start capital – 1.25× means +25 %. 0 when the account is empty. |
| **Max drawdown** | (start capital − lowest account value) ÷ start capital × 100. |
| **Taker fee** | The fee charged per position: 0.11 % of the position value. |
| **Trade days** | Length of the analyzed period in days: from the first candle of the run (or of the chart for Backtest) to the close of the last one – also when trades happened only on part of it. |
| **Time in position** | Total time all positions were open (sum over all trades, from the entry candle to the exit candle), shown as `45 min`, `6:00h` or `2d 6:00h`. |
| **Leverage** | Leverage of the entries, shown in the header of Key metrics; a range such as `3–10×` if the trades used different leverage. |

**Max drawdown** is measured below the start capital, not from the highest point: the account value is taken at every entry and exit, with the margin of an open position but without its open profit or loss, and the lowest value is compared with the start. A strategy that first gains and later gives back part of the gain shows a small drawdown as long as it stays above its start capital.

A run whose account never falls below the start capital shows a max. drawdown of 0 %. If a position is liquidated, the account drops to zero: capital factor 0, max. drawdown 100 %.

## Heatmap, blind test and Strategies panel

Each run produces the capital factor, max. drawdown and win rate above. The [Strategy Lab](https://chartrider.com/docs/strategies/strategy-lab/) combines the runs:

- **Heatmap cell** – the mean of those values over all markets of the watchlist, for one step value (or combination) and one window. A market without any trade counts with capital factor 1, drawdown 0 and win rate 0.
- **Averages Summary** and the first grid of **Parameters** – the mean of the window cells.
- **Total Profit and Loss** and **PnL (USDT)** – in each window the start capital is split equally over the markets and each part grows with its capital factor (a market without trades: factor 1); the result is carried into the next window. PnL is the final amount minus the start capital, so it compounds over the windows.
- **best CF** – the combination with the highest average capital factor.
- **Rank correlation tuning ↔ blind (CF)** – the Spearman rank correlation between the capital factors of the same step values in the tuning run and the blind-test run. It needs at least three values. Near 1 the ranking holds, near 0 there is no relation, below 0 it is reversed.
- **Last run** and the line under each strategy (**CF · DD · WR**) – the mean capital factor, max. drawdown and win rate over the runs of the last run group that had at least one trade.

Means are plain averages: a market with few trades weighs as much as one with many.

## R statistics (MAE / MFE tab)

Every trade is one data point. Each group card (for example one market) shows:

| Label | Definition |
|---|---|
| **trades (n)** | Number of trades in the group |
| **win rate %** | Trades with a result above 0 R ÷ trades × 100 (before fees) |
| **expectancy R** | Mean result per trade in R |
| **profit factor** | Sum of the winning trades' R ÷ sum of the losing trades' R (as a positive number); ∞ without losing trades |
| **sharpe** | Mean R ÷ standard deviation of R, per trade – not annualised, no risk-free rate |
| **NET win rate %**, **NET expectancy R**, **NET profit factor**, **NET sharpe** | The same after subtracting each trade's fee in R |
| **Edge score** | The NET profit factor. Without net losing trades: 2 if there is any net winner, otherwise 0. Red below 0.8, green above 1.2. Cards are sorted by it. |
| **avg stop %** | Mean distance from entry to stop, in % of the entry price |
| **avg feeR** | Mean fee per trade in R |

The **fee in R** of a trade is 0.11 % × entry price ÷ distance from entry to stop. A stop 0.5 % away costs 0.22 R per trade; a stop 2 % away costs 0.055 R. Tight stops can turn a positive expectancy negative after fees – compare **expectancy R** with **NET expectancy R**.

The card also lists the group's average MAE and MFE (in R) and the custom metrics of WickScript strategies.

The R statistics and the Key metrics can differ: R ignores position size, compounding, the size cap of the leverage and liquidation, and its win rate counts every trade with a positive R.

## MAE and MFE

- **MAE** (maximum adverse excursion) – the furthest the price moved against the trade between entry and exit, in R. For a long: (entry − lowest low) ÷ (entry − stop).
- **MFE** (maximum favourable excursion) – the furthest it moved in the trade's favour, in R. For a long: (highest high − entry) ÷ (entry − stop).

Details:

- For a market entry, the candles from the one after the entry to the exit candle count. For a limit or stop entry, the candles from the fill candle on count, but the fill candle doesn't count for MFE.
- A trade that was stopped has an MAE of at most 1. A trade that reached its target has the target's exact R as MFE. Both values are at least 0.

In the plot, **MAE (R)** runs across and **MFE (R)** up. Points above the diagonal moved further in favour than against; the legend shows the median of both.

## WickScript backtest preview

The **Strategy · backtest preview** in the Scripts tab runs the draft script on the chart's candles:

| Label | Definition |
|---|---|
| **trades** | Number of trades |
| **short / long** | Number of short and long trades |
| **wins** | Trades with a result above 0 R ÷ trades, in % |
| **total** | Sum of all results in R |
| **per trade** | Total ÷ trades, in R |

These are before fees, like the gross R statistics above.
