For successful trading system development, it’s very important to understand and analyze backtest reports. Beginners often overlook this fact as they find it very difficult to comprehend financial and mathematical terms in these reports. This post will try to simplify this task of understanding backtest reports. We’ll consider Amibroker for illustration purpose since it has one of the most powerful backtest engine. However, most of the parameters in these reports are same across different trading platforms.
Please download our sample backtest report from the below link.
Let’s explore some of the most common and important parameters present in this report:
Initial Capital
Starting capital at the beginning of backtest period.
Ending Capital
Capital at the end of backtest period.
Net Profit
Ending Capital-Initial Capital
Net Profit %
Net Profit expressed in % terms. For ex: if Initial Capital=100000, Ending Capital=200000, then,
Net Profit %=(200000-100000)/100000*100= 100%.
Exposure %
It is the net average exposure of your trading system for the period of backtesting. It is calculated as the sum of individual bar exposures divided by total number of bars. Individual bar exposure is calculated as the ratio of open positions value to the overall portfolio equity for that particular bar. Let’s suppose you are backtesting your strategy on daily timeframe, if at the end of Day 1 your open position value is 10000 and portfolio equity is 100000 then bar exposure for that particular day is 10.
Net Risk Adjusted Return %
It is the ratio of Net Profit % and Exposure %.
For ex: If net profit %=100 and Exposure %=10, then Net Risk Adjusted Return %=100/0.1=1000
Annual Return %
It is the compounded annual return %. It is the annualized rate at which capital has compounded over the backtest period.
Risk Adjusted Return %
It is the ratio of Annual return % and Exposure %.
For ex: If Annual return %=20 and Exposure %=10, then Net Risk Adjusted Return %=20/0.1=200
All Trades
Total number of trades executed as per the backtested strategy in specified period.
Winners
Total number of winning trades.
Losers
Total Number of losing trades.
Total Transaction costs
Total Transaction costs based on brokerage per trade settings.
For Ex: If Total number of Trades=100, and Brokerage per Trade=50, then Total Transaction costs=100*50=5000
Average Profit
It’s the ratio of total profit and number of winners.
For Ex: if total profit=200000, number of winners=50, then Average Profit=200000/50=4000
Average Loss
It’s the ratio of total loss and number of losers.
For Ex: if total loss=-100000, number of losers=50, then Average Loss=-100000/50=-2000
Average Profit/Loss
Also known as Expectancy, It’s calculated as (Total Profit+ Total Loss)/(Number of trades). It represents expected gain/loss per trade.
For Ex: If Total Profit=200000, Total Loss=-100000, Number of trades=100, then Expectancy=(200000-100000)/100=1000
Average Bars Held
Average holding period per trade. If you are backtesting on Daily timeframe, then this represents the average number of days a Trade is held.
Max. Consecutive Winners
This represents the maximum number of consecutive wins in the whole backtest period. High value is better
Max. Consecutive Loses
This represents the maximum number of consecutive losses in the whole backtest period. Low value is better.
Maximum trade drawdown
The largest peak to valley decline experienced in any single trade. The lower the better.
Maximum trade % drawdown
The largest peak to valley percentage decline experienced in any single trade. The lower the better.
Maximum system drawdown
The largest peak to valley decline experienced in portfolio equity. The lower the better.
Maximum system % drawdown
The largest peak to valley percentage decline experienced in portfolio equity. The lower the better.
Recovery Factor
It is the ratio of net Profit and maximum system drawdown. Higher the better.
For Ex: If net Profit=100000, maximum system drwadoen=50000, the Recovery Factor=100000/50000=2
CAR/MaxDD
Compound Annual % Return divided by Maximum system % drawdown. Good if bigger than 2.
For Ex: If Annual Return %=30, and Maximum system % drawdown=10, then CAR/MaxDD=30/10=3
RAR/MaxDD
Risk adjusted return divided by Maximum system % drawdown. Good if bigger than 2.
For Ex: If Risk adjusted Return %=50, and Maximum system % drawdown=10, then CAR/MaxDD=50/10=5
Profit Factor
Ratio of Total profit and Total Loss. Higher the better.
For ex: if Total profit=200000, Total loss=100000, then Profit Factor=200000/100000=2
Payoff Ratio
Ratio of Average profit and Average loss. Higher the better.
For ex: if Average Profit=10000, Average loss=4000, then Payoff Ratio=10000/4000=2.5
Standard Error
Standard error measures choppiness of equity curve. The lower the better.
Risk-Reward Ratio
Ratio of potential risk and potential reward of Trading system. Higher is better. Calculated as the slope of equity line (expected annual return) divided by its standard error.
Risk Reward Ratio: An ultimate tool for Success in Stock Market
Ulcer Index
A technical indicator that measures downside risk, in terms of both depth and duration of price declines. The Ulcer Index (UI) increases in value as the price moves farther away from a recent high, and falls as the price rises to new highs. Mathematically its is the Square root of sum of squared drawdowns divided by number of bars. Lower the value of Ulcer Index, better is your trading system. Find detailed calculation example for ulcer index here.
Sharpe Ratio of trades
Measure of risk adjusted return of investment. Above 1.0 is good, more than 2.0 is very good. For detailed calculation click here.
K-Ratio
Detects inconsistency in returns. Should be 1.0 or more. The higher K ratio is the more consistent return you may expect from the system. For detailed calculation click here.
In one particular backtest report I got Maximum trade % drawdown(90) greater than Maximum system % drawdown(16).Is it opossible ? Why so ? Or is it an error ?
Hi Vidhyadhar,
Yes, its possible. Consider a scenario where you invest 1000 Rupees on 10 different trades (100 Rupees each). One out of 10 trades makes 90 rupees loss, which results in 90% max trade drawdown. The other 9 trades combined lose 70 rupees. So your total loss at the end would be 70+90=160 rupees, which results in 16% max system drawdown.
In a nutshell, system drawdown is calculated on entire portfolio, while trade drawdown is calculated on a particular trade.
Hi, Thanks for our brief post on the amibroker backtest report. It’s very informative. Just a small point re K-Ratio, where you mention that it should be 1.0 or higher seems incorrect. Amibroker uses the 2003 version of the K-Ratio formula hence achieving values >1 won’t be possible. Please refer attached link. https://forum.amibroker.com/t/k-ratio-by-lars-kestner-which-value-desirable/1676/3
Hi Vicky,
Thanks for pointing this out. We’ll review and make correction accordingly.
could you mathematically elaborate Exposure % for at least 3 bars