Performance Report

From QPAS Documentation
Jump to: navigation, search

Performance Report

General introduction:

  • rf is the risk-free rate.
  • Excess returns are returns minus the risk-free rate.

Most of the statistics are presented in both dollar and percentage terms, in order to separate position sizing decisions from timing decisions. An important distinction is also made between "Total Capital" and "Allocated Capital". Total Capital refers to what IB calls "Net Liquidation Value": simply the value of the account. Allocated Capital refers to capital "used": this includes assets purchased on margin, and intraday positions. See the trades page for a more detailed explanation on how allocated capital is calculated.

Example: Your account has a net liquidation value of $10,000. You have a $5,000 position in $XYZ. On top of that, you make two intraday trades in $ABC in which you purchase and sell $10,000 worth each time. These trades yield a combined profit of $250.

In this case:

  • Total Capital is $10,000 while Allocated Capital is $25,000 ($5,000 + 2 x $10,000).
  • ROTC is $250 / $10,000 = 2.5%
  • ROAC is $250 / $25,000 = 1%

In general, you'll want to be looking at the total capital figures when considering the performance of your account as a whole, and at the allocated capital figures when considering the performance of a segment of your account (such as a particular strategy).


Performance Report Settings

The performance report page provides a number of ways to filter trades as well as various settings for the statistics produced.

You can filter trades by strategy, tags, instruments, and date.

You can select a benchmark and whether you want to benchmark against ROAC or ROTC.

Value at risk/expected shortfall can be produced for ROAC or ROTC and you can select the number of days used for the calculation.

Monte Carlo simulation can also be done either with ROAC or ROTC. Periods is the length of the equity curve produced, runs is how many curves are produced, and cluster size is the length in days of each "block" selected (this is done to try and include effects of volatility clustering and autocorrelation that would be lost if only sampling single days in isolation).

You can use backtest data either from the external data source, or by loading it from a CSV file. See Importing Backtest Data for details on how to import backtesting data.


Currently the only supported format is Excel files. After the report has been generated, go to File -> Export to Excel to generate an Excel workbook with the results.

Cumulative Profit/Loss

Cumulative profit/loss charts

Cumulative $ profit/loss charts with drawdown:

  • Trade close-to-close.
  • Daily
  • By long/short positions
  • By strategy

Cumulative Returns

Percent return charts with drawdown:

  • Return on allocated capital
  • Return on total capital
  • ROAC by strategy

Capital Usage

Relative Capital Usage by Strategy

A chart showing total capital, allocated capital, and leverage, for each day in the period.

There are also two charts with capital usage split by strategy: one with the absolute dollar amount of capital used, the other with relative capital usage expressed as a percentage of allocated capital.

Per-Trade Stats

Per-Trade Stats

These are given both in terms of dollar profit/loss and % return, in order to give an image of the results with and without the effects of position sizing. Most fields are self-explanatory, so detailed explanations will only be given where necessary.

Average Commission (%)

Average dollar commission divided by average gross capital used.


Also known as the Bernardo-Ledoit ratio. Average win divided by the absolute value of the average loss.

Gross Win/Loss

The sum of positive/negative returns, respectively.

Profit Factor

The absolute value of the ratio between gross win and gross loss.

Annual Turnover

Gross amount of dollar traded (for each purchase purchase/sale roundtrip each dollar is only counted once) divided by the average capital in the period.

Portfolio Stats

The Portfolio Stats Page

These numbers are produced for ROAC, ROTC, and (if it has been specified) a benchmark.

Average Return

Average daily return.

Total Period Return

Total % return from the first to the last day in the selected period.


Compound annual growth rate. AKA annualized returns.

Standard Deviation

Standard deviation of daily returns, in daily and annualized formats. The annualized number is calculated by multiplying daily standard deviation by sqrt(252)[1].


Skewness of daily returns.

Best/Worst Day

The maximum and minimum daily returns, respectively.

Average Up/Down Day

Average return for days with positive/negative returns, respectively.


The absolute value of the ratio between average positive returns and average negative returns.

Gross Win/Loss

The sum of positive/negative returns, respectively.

Profit Factor

The absolute value of the ratio between gross win and gross loss.

Volatility Skewness

The ratio between upside deviation and downside deviation.

Max Drawdown

The largest peak-to-trough % change.

Average Drawdown

The average daily drawdown.

Longest Drawdown

The longest time spent in a continuous drawdown.

Average Drawdown Length

The average length, in days, of each continuous drawdown.

Sharpe Ratio

Excess annual return divided by annual portfolio standard deviation.


Sortino Ratio

Excess annual return divided by annual portfolio downside deviation.


MAR Ratio

Annual return divided by the absolute value of maximum drawdown.

K Ratio

The Zephyr K-Ratio, calculated by regressing the log of the equity curve against time, then dividing the slope of the line by the standard error of the slope. Higher is better.

Ulcer Index

The square root of the average squared drawdown. Lower is better.

Ulcer index.png

Ulcer Performance Index/Martin Ratio

Excess annual return divided by the Ulcer Index. Higher is better.

Ulcer performance index.png

Profit/Loss by Month

Profit/loss and ROAC by month and year

Profit/loss, ROAC, and ROTC by calendar month and year.

Profit/Loss by Tags

The first two charts show total and average profit/loss by tag. The next two charts show the same figures for all combinations of 2 or 3 tags.

Strategy Correlations

The correlation matrix for the return on allocated capital series for each strategy.

The chart below shows the result of performing multidimensional scaling on the strategy ROAC correlation matrix. The result is a 2D chart in which the distances between the points represent the similarity between strategies: the closer they are, the more similar the strategies.


Benchmark Results

If you have selected a benchmark, this page will contain some simple benchmark statistics for the entire period, and a chart with rolling 100-day alpha and beta values.

Alpha and beta are calculated by a regression of the following form:

Benchmark regression.png

where rp is the portfolio excess return, and rb is the benchmark excess return.

Active return is rp - rb, tracking error is the standard deviation of active return, and information ratio is active return divided by tracking error.

Trade Return Distributions

Simple histograms of trade results in dollars and percentage points.


Maximum Adverse Excursion Chart

These charts plot per-trade maximum adverse/favorable excursion against absolute returns. MAE/MFE are calculated on a per-trade ROAC basis.

These charts can potentially help with stop-loss and/or take-profit levels.

Average Cumulative Returns

Average Cumulative Returns Chart

This chart shows the average cumulative returns and number of remaining open trades, by day in trade. Trades are separated into winners and losers.

This information could help diagnose problems like exiting trades too late. For example, if returns consistently peak at 20 days into the trade, but you exit most of them after 30 days or more, this might be an area that could be improved.

Daily Return Distributions

Daily return distributions histograms

Histograms of daily returns, on allocated and total capital.

Trade Lengths

Histogram of trade lengths.

Trade Length vs Returns

Trade Length vs Returns Chart

A simple scatter plot of trade length against percentage returns.

Trade Size vs Returns

A simple scatter plot of trade size (expressed as a % of total capital at the time the trade was opened) against percentage returns.

Realized Profit/Loss by Instrument

A chart of total realized profit/loss by instrument.

ROAC by Instrument

ROAC by instrument

Total return on allocated capital by instrument.

Gross Movement Capture

Coming soon.

Cash Transactions

Simply the sum of the dollar amount of cash transactions by type.


ACF and PACF Charts

Charts showing sample autocorrelation and partial autocorrelation functions for daily returns, for up to 10 lags.


Expected Shortfall Chart

Two different methods are used to generate the results on the risk page:

  • A non-parametric approach that simply uses the distribution of historical data.
  • A parametric approach that the normal distribution.

You can specify the length (in days) and the type of returns to use (ROAC or ROTC) in the performance report settings page.

If the distribution of your returns has fat tails (i.e. is leptokurtic) or significant negative skew, the empirical VaR and expected shortfall will be greater than the gaussian estimate.

Value at Risk (VaR): the x% value at risk is the threshold return value r, such that there is an x% probability of returns below it. See wikipedia for more.

Expected Shortfall: while VaR is a threshold, the x% ES is the average of returns below that threshold. See wikipedia for more.

Monte Carlo

Monte Carlo Charts

Equity Curve Confidence Intervals: shows the 50% and 90% confidence intervals for the equity curve at each point in time.

The rest of the charts feature cumulative and point probability distributions for the maximum drawdown, Sharpe ratio, MAR ratio, and K ratio.

Backtest Comparison

Backtest Comparison Charts

This section will only be available if you specified a source for backtest data.

  • The first chart simply shows the equity curves of the backtest and the live results.
  • The seconds chart shows the cumulative difference in returns between the two series, starting from the beginning of the live results.
  • The performance statistics separate the backtest data into two periods: before the live results begin, and after. This allows you to compare the expected results based on the backtest with the out-of-sample results.
  • Finally, the Monte Carlo chart displays confidence intervals for the live results equity curve based on the backtest performance.


  1. This may be a biased estimate depending on average returns, see