Total Return vs Realized Return (and CAGR) Explained

Total return marks open positions to market; realized return counts only closed trades. Why they diverge, and how CAGR annualizes total return.

Risk Metrics · Updated 2026-10-08

Two ways to count profit

Realized return counts only the profit and loss from trades that have been closed. Total return, often called mark-to-market return, compares the full account value today, meaning cash plus every open position valued at the current price, with the starting value. The two match only when the account holds no open positions. The rest of the time, the difference between them is the unrealized profit or loss sitting in open positions.

In formula terms, total return = (current equity ÷ starting equity) − 1, where current equity = cash + market value of open positions. Realized return = sum of closed-trade profit and loss, net of fees, ÷ starting equity. Unrealized P&L = market value of open positions − their cost.

Open positions and unrealized P&L

An open position has a cost (what was paid, including fees) and a current value (quantity × current price). The gap is unrealized P&L. It is called unrealized because it has not been locked in by a sale, but it is not imaginary: if the account had to be closed today, that is roughly what it would realize, minus exit costs and slippage. That is why risk measures such as max drawdown are computed on the mark-to-market equity curve, not on the running total of closed trades.

In Live Paper Trading, every bot template is paper traded and its open positions are repriced every 15 minutes from live market prices, so the total return shown is mark-to-market. On the strategy backtest pages, the equity curve is likewise valued every trading day.

Why a bot can show realized profit while equity is down

Grid and DCA bots are the classic case. A grid bot sells small slices of inventory each time price rises into a sell level, so it books many small realized gains. But when price trends down through the grid, the bot keeps buying, accumulating inventory at prices above the current market. Each closed round trip is profitable, yet the stack of unsold inventory is losing value.

A hypothetical illustration with simple numbers: an account starts with 1,000 USDT. Over a month the bot closes 20 small round trips that realize +30 USDT after fees, a realized return of +3.0%. Meanwhile it holds inventory that cost 500 USDT, and the coin has fallen 14%, so that inventory is now worth 430 USDT, an unrealized loss of −70 USDT. Equity is 1,000 + 30 − 70 = 960 USDT, a total return of −4.0%. A dashboard that shows only the +3.0% is telling the truth about closed trades while hiding the state of the account.

The reverse also happens. A trend-following strategy may close several small losing trades while holding one large open winner. Its realized return looks poor even though its equity is up.

A practical check follows from this: whenever a page shows a realized figure, look for the open exposure next to it. Ask how much inventory or how many open positions the bot holds, at what average cost, and how far the current price is from that cost. If those are not shown, the total return on the equity curve is the safer number to rely on.

CAGR versus total return

Total return describes the whole period in a single figure, but it does not tell you the pace. CAGR (compound annual growth rate) converts total return into the constant yearly rate that would produce the same ending value: CAGR = (1 + total return)^(1 ÷ years) − 1.

Worked example from the strategy backtests (run on 7 October 2026). Growth-Value Style Selection has a total return of +1211.9% from 24 October 2016 to 5 October 2026. That window is 3,633 calendar days, or 3,633 ÷ 365.25 = 9.947 years. The growth multiple is 1 + 12.119 = 13.119. Then 13.119^(1 ÷ 9.947) = 1.2954, so CAGR = 29.54%, which matches the figure on the strategy page. Note what CAGR is not: dividing 1211.9% by 9.947 years gives 121.8% a year, about four times the true compound rate, because simple division ignores compounding. Growth-Value Style Selection is an aggressive-tier strategy: it can hold 3x leveraged ETFs (SPXL, TQQQ, UPRO), it was selected from many backtested candidates so luck cannot be ruled out, and it has no live or forward record yet.

The same arithmetic works for any strategy. Kaufman Efficiency Index returned +826.6% over the same 9.947 years: 9.266^(1 ÷ 9.947) − 1 = 25.09%. Yet the two CAGRs say nothing about the path. Kaufman reached its number through a −48.6% drawdown, Growth-Value Style Selection through −35.0%. CAGR is a smoothed average of a bumpy road.

Why annualizing short records misleads

Annualizing compounds a short result as if it would repeat for a whole year. A bot that gains 5% in its first three weeks annualizes to (1.05)^(365 ÷ 21) − 1 ≈ +133.5% a year. A 2% gain in one week becomes roughly +180.8% a year. These numbers are mathematically correct and practically meaningless: three weeks contain one or two market moods, very few trades and no real stress. The same compounding turns a short loss into an alarming annualized loss.

A sensible rule is to read short records as total return over the stated period, with the start date beside it, and to treat annualized figures as informative only after at least a year, preferably several, that include a real drawdown. The league computes Sharpe only after at least seven daily returns for a similar reason, and even that is a minimum, not proof of reliability.

What these numbers do not tell you

Neither total nor realized return tells you how much risk was taken to earn it. Two bots with identical total return can have very different drawdowns, leverage and position sizes. Realized return can also be shaped by when a bot chooses to close trades: selling winners while holding losers inflates it without improving the account. Total return depends on the start and end dates chosen, and moving the end date by a few weeks can shift it a lot. Neither figure accounts for taxes, or for costs that a paper or backtest model does not include.

Risk notes

Treat total, mark-to-market return as the primary figure, use realized return to understand how the result was produced, and always read both alongside max drawdown and the length of the record. Paper and backtest results are hypothetical; live trading adds slippage, outages and execution differences. Past returns, annualized or not, are not a forecast. This is educational content, not investment advice.

See it in the data

Related guides

Metrics explained with real backtests

Educational content, not investment advice. Guide content and league rankings are independent of any exchange or sponsor relationship.