DEFINITION:
CAGR (Compound Annual Growth Rate) measures the mean annual growth rate of an investment over a specified period longer than one year. It's essential for comparing trading bot performance across different time horizons.
What Is CAGR (Compound Annual Growth Rate)?
CAGR, or Compound Annual Growth Rate, is a measure of the mean annual growth rate of an investment over a specified period of time longer than one year. It represents one of the most accurate ways to calculate and determine returns for anything that can rise or fall in value over time.
In the context of trading bots, CAGR is particularly valuable because it allows you to compare the performance of different bots that have been running for different lengths of time. Unlike simple returns, CAGR accounts for the compounding effect of gains and provides a smoothed annual rate of return.
Formula and Calculation
The CAGR formula is:
Where:
- = The final value of the portfolio
- = The starting value of the portfolio
- = Number of years
Step-by-Step Calculation
- Divide the ending value by the beginning value
- Raise the result to the power of (1 / number of years)
- Subtract 1 from the result
- Multiply by 100 to get the percentage
Example Calculation
A trading bot starts with €10,000 and grows to €18,500 over 3 years:
This means the bot achieved an average annual growth rate of 22.7%, even if individual years varied significantly.
Why CAGR Matters for Trading Bots
1. Fair Comparison Across Time Periods
Trading bots often have different start dates. CAGR normalizes performance to an annual basis:
| Bot | Total Return | Period | CAGR |
|---|---|---|---|
| Bot A | 150% | 5 years | 20.1% |
| Bot B | 80% | 2 years | 34.2% |
| Bot C | 45% | 1 year | 45.0% |
Without CAGR, Bot A looks best (150% total return). With CAGR, Bot C shows the strongest annual performance.
2. Accounts for Compounding
CAGR reflects the power of compounding, which is how trading bots actually grow wealth:
- Year 1: €10,000 × 1.20 = €12,000
- Year 2: €12,000 × 1.20 = €14,400
- Year 3: €14,400 × 1.20 = €17,280
A 20% CAGR doesn't mean 60% total return over 3 years—it means 72.8% due to compounding.
3. Smooths Out Volatility
CAGR provides a single number that represents the growth rate as if it had been constant:
| Year | Actual Return | Portfolio Value |
|---|---|---|
| Start | - | €10,000 |
| Year 1 | +40% | €14,000 |
| Year 2 | -20% | €11,200 |
| Year 3 | +35% | €15,120 |
Total Return: 51.2% CAGR: 14.8%
The CAGR of 14.8% represents what the constant annual return would need to be to achieve the same final value.
CAGR vs. Other Growth Metrics
CAGR vs. Average Annual Return
| Metric | What It Measures | Best For |
|---|---|---|
| CAGR | Geometric mean of returns | Actual wealth growth |
| Average Return | Arithmetic mean of returns | Understanding volatility |
Example:
- Year 1: +50%, Year 2: -50%
- Average Return: (50% + -50%) / 2 = 0%
- Actual Result: €10,000 → €15,000 → €7,500 (25% loss)
- CAGR: -13.4%
CAGR shows the reality; average return is misleading.
CAGR vs. Total Return
| Metric | Formula | Use Case |
|---|---|---|
| CAGR | Annualized compound rate | Comparing investments of different durations |
| Total Return | (End - Start) / Start | Absolute performance over a specific period |
For comparing a 2-year-old bot with a 5-year-old bot, CAGR is essential.
CAGR in Trading Bot Analysis
Interpreting CAGR for Trading Bots
| CAGR | Crypto Bots | Traditional Market Bots |
|---|---|---|
| < 0% | Losing money | Losing money |
| 0-10% | Below average | Average performance |
| 10-25% | Good | Excellent |
| 25-50% | Very good | Outstanding |
| 50-100% | Excellent | Exceptional (verify risk) |
| > 100% | Outstanding (high risk likely) | Unrealistic (investigate) |
CAGR and Risk Considerations
High CAGR often comes with high risk. Always evaluate CAGR alongside:
| Metric | Why It Matters |
|---|---|
| Max Drawdown | What's the worst decline? |
| Sharpe Ratio | Is the return worth the risk? |
| Volatility | How bumpy is the ride? |
| Win Rate | How consistent are profits? |
A bot with 50% CAGR and 60% max drawdown may be less desirable than one with 25% CAGR and 15% max drawdown.
Calculating CAGR for Trading Bots
With Deposits and Withdrawals
When you add or remove funds, CAGR becomes more complex. Use Time-Weighted Return (TWR) first, then annualize:
For Periods Less Than One Year
For bots running less than a year, you can calculate annualized CAGR, but be cautious:
- 3 months at 20% return → Annualized CAGR ≈ 107%
- This assumes the same performance continues, which is rarely the case
Rule of thumb: CAGR is most meaningful for periods of 1+ years.
CAGR Limitations
1. Doesn't Show Volatility
Two bots with the same CAGR can have very different risk profiles:
| Bot | Year 1 | Year 2 | Year 3 | CAGR |
|---|---|---|---|---|
| Bot A | +20% | +20% | +20% | 20% |
| Bot B | +80% | -30% | +30% | 20% |
Same CAGR, but Bot B is much riskier.
2. Assumes Reinvestment
CAGR assumes all returns are reinvested. If you withdraw profits, your actual returns will differ.
3. Past Performance
Historical CAGR doesn't guarantee future results. Market conditions change, and strategies may become less effective.
4. Sensitive to Start/End Dates
Choosing different measurement periods can significantly affect CAGR:
- Measuring from a market bottom inflates CAGR
- Measuring to a market top inflates CAGR
Practical Examples
Example 1: Comparing Two Trading Bots
Bot Alpha:
- Starting value: $10,000
- Current value: $25,000
- Running time: 4 years
Bot Beta:
- Starting value: $10,000
- Current value: $16,000
- Running time: 2 years
Despite Bot Alpha having higher total returns (150% vs 60%), Bot Beta has a slightly higher CAGR.
Example 2: Setting Realistic Expectations
If a trading bot has a historical CAGR of 30%, what can you expect in 5 years?
Starting with €10,000:
But remember: past CAGR doesn't guarantee future performance.
Related Metrics
CAGR works best when analyzed alongside other metrics:
- Growth: Understand different types of growth measurements and how they relate to CAGR
- Sharpe Ratio: Evaluate risk-adjusted returns
- Drawdown: Understand the risk of decline
- Volatility: Measure return consistency
FAQs
What is a good CAGR for a trading bot?
It depends on the market and strategy:
- Crypto bots: 20-50% CAGR is good; above 50% is excellent but verify risk
- Stock market bots: 15-25% CAGR is excellent (S&P 500 averages ~10%)
- Forex bots: 10-20% CAGR is typically good
Always compare CAGR with risk metrics like maximum drawdown.
How is CAGR different from simple average return?
CAGR accounts for compounding and shows your actual annualized growth. Simple average return is the arithmetic mean of yearly returns, which can be misleading. For example, +50% followed by -50% has a 0% average return but results in a 25% loss (CAGR: -13.4%).
Can CAGR be negative?
Yes. A negative CAGR means the investment lost value on an annualized basis. For example, if €10,000 becomes €8,000 over 2 years, the CAGR is -10.6%.
How long should a bot run before CAGR is meaningful?
At least 1 year is recommended for CAGR to be statistically meaningful. For 6 months or less, annualized CAGR can be misleadingly high or low due to short-term volatility.
Does CAGR account for fees and costs?
CAGR is calculated on net returns (after fees) if you use the actual portfolio values. If your portfolio value already reflects fees, your CAGR is net of fees.
The Bottom Line
CAGR is an essential metric for evaluating and comparing trading bot performance over different time periods. It provides a standardized annual growth rate that accounts for compounding, making it the gold standard for comparing investments. However, CAGR should never be used in isolation—always consider risk metrics like drawdown, volatility, and Sharpe ratio to get a complete picture of a trading bot's performance.
Table of Contents
What Is CAGR (Compound Annual Growth Rate)?
Formula and Calculation
Why CAGR Matters for Trading Bots
CAGR vs. Other Growth Metrics
CAGR in Trading Bot Analysis
Calculating CAGR for Trading Bots
CAGR Limitations
Practical Examples
Related Metrics
FAQs
The Bottom Line
About the Author
Marc van Duyn
Founder & CEOMarc is the Founder and CEO of Finterion. He is passionate about making algorithmic trading accessible to everyone.