Skip to main content
Loading live market data…

Compounding Calculator

Compounding is reinvesting each period’s gains so that the next period earns a return on a larger balance — the mechanism behind every long-term equity curve. Set a starting balance, a realistic percentage return per period and a horizon to see exactly how an account grows, with an optional regular deposit, a full period-by-period table and a live equity curve.

Compounding inputs

Effective rate over 12 months: 79.6% growth on the starting balance from compounding alone.

Period-by-period growth

monthStartGainEnd balance
month 11,000.00+50.001,050.00
month 21,050.00+52.501,102.50
month 31,102.50+55.131,157.63
month 41,157.63+57.881,215.51
month 51,215.51+60.781,276.28
month 61,276.28+63.811,340.10
month 71,340.10+67.001,407.10
month 81,407.10+70.361,477.46
month 91,477.46+73.871,551.33
month 101,551.33+77.571,628.89
month 111,628.89+81.441,710.34
month 121,710.34+85.521,795.86

How it works

Each period the balance grows by the return rate, then any deposit is added. Because the next period compounds on the new, larger balance, growth accelerates over time:

Each period:
  gain          = balance × (rate ÷ 100)
  new balance   = balance + gain + deposit

Closed form (no deposits):
  final = start × (1 + rate ÷ 100) ^ periods

Example — 1,000 at 5% per month for 12 months, no deposits:
  = 1,000 × (1.05) ^ 12
  = 1,795.86  (a 79.6% gain on the starting balance)
  • Be realistic with the rate.A steady, modest return that survives drawdowns compounds far better than a high target you can’t sustain.
  • Regular deposits are added at the end of each period, so they earn the compounding rate from the following period onward.
  • Time is the multiplier. Doubling the number of periods does far more than doubling the rate — the curve is exponential.

Compounding only works if each trade is sized correctly. Use the position size calculator to risk a fixed percentage per trade, the profit & loss calculator to project individual trades, and keep an honest record in the trade journal so your assumed return reflects real performance.

What this calculator models - and what it does not

This tool answers a conditional question: if a balance grew by exactly the same percentage every period, and nothing was withdrawn, what would it be worth after a given number of periods? That is a well-defined arithmetic question with one correct answer, and the calculator answers it exactly. It is not a forecast, a target, or an estimate of what a trading account will do. The rate you type is an assumption you supplied, and the output inherits every bit of that assumption's optimism.

The distinction matters because compounding projections are unusually persuasive. An exponential curve looks like evidence and a table with two decimal places looks like precision, but neither the curve nor the decimals carry any information about whether the rate is achievable. A calculator cannot validate its own inputs. It reproduces the assumption faithfully, formatted well.

The honest way to use it is backwards. Rather than choosing a rate you would like and admiring the ending balance, take the return you have actually achieved over a meaningful sample of real trades and see what that produces. If no such record exists yet, the projection has no informational content at all, and the more useful part of this page is the drawdown arithmetic further down rather than the growth curve.

Results are hypothetical and no outcome is guaranteed. FXMARE is an information site publishing this as a maths tool, not as a projection of anyone's trading performance, and nothing here is investment advice.

  • The rate per period is an input assumption, not an estimate the tool produced or endorsed.
  • Real returns vary from period to period. This model holds them constant, which no trading account does.
  • A smooth exponential curve is a property of the formula, never evidence about a strategy.
  • The identical arithmetic applies to losses, which is covered in its own section below.

The formula, and why the curve bends

Start with one period. A balance B growing at rate r becomes B x (1 + r). The decisive move is that the next period does not apply r to the original balance, it applies r to the new one - so after two periods you hold B x (1 + r) x (1 + r). Extend that and the balance after n periods is B x (1 + r)^n. Growth is a product of factors, not a sum of gains, and that single fact is the entire reason the curve bends upward.

Simple growth adds the same amount each period and produces a straight line: r x n applied to the starting balance. Compound growth multiplies, and the gap between the two widens as the number of periods grows. At 5 percent per period for 10 periods the simple result is a 50 percent gain, while the compounded result is 62.89 percent. Those extra 12.89 percentage points are returns generated by earlier returns.

Two structural consequences follow directly. First, the number of periods sits in the exponent while the rate sits in the base, so adding periods multiplies more factors into the product while raising the rate only enlarges each existing one - which is why the exponent tends to dominate the ending figure over long horizons. Second, because the factors multiply, order does not matter when there are no deposits or withdrawals: the same set of periodic returns produces the same ending balance in any sequence.

That second point stops being true the moment cash moves in or out, because a deposit changes the balance that all later factors multiply. This is why the deposit case needs a section of its own.

Simple versus compound growth, 5% per period for 10 periods
simple:    1 + (0.05 x 10)    = 1.5000  ->  +50.00%
compound:  1.05 ^ 10          = 1.6289  ->  +62.89%

the difference is return earned by earlier return:
  62.89% - 50.00%            = 12.89 percentage points
  • Balance after n periods with no cash flows: final = start x (1 + r)^n, with r expressed as a decimal.
  • 5 percent for 10 periods is a factor of 1.05^10 = 1.6289, not 1.50.
  • Periods enter as an exponent, so the horizon tends to dominate the result over long runs.
  • With no deposits or withdrawals, reordering the same returns does not change the final balance.

A projection worked month by month

Assume a starting balance of 10,000 in the account currency, an assumed 2 percent return per month, a horizon of 12 months, and no deposits. The closed form gives the answer immediately: 10,000 x 1.02^12 = 10,000 x 1.268242 = 12,682.42, a gain of 2,682.42, or 26.82 percent on the starting balance.

Running it period by period shows where that gain comes from. Month 1 earns 2 percent of 10,000, which is 200.00. Month 2 earns 2 percent of 10,200.00, which is 204.00 - four more, purely because the base grew. By month 12 the same unchanged 2 percent rate is earning 248.67, because it is being applied to 12,433.74 rather than to 10,000. The rate never moved. Only the base it acted on did.

Note the shape of that result. Twelve months at 2 percent is not 24 percent, but it is not dramatically more than 24 percent either - it is 26.82 percent. Over a single year at a modest rate the compounding premium is small. The premium becomes large only over long horizons, which is precisely the regime where assuming a constant rate is least defensible.

One rounding note, because it is visible in the table below: the model compounds on unrounded balances and rounds only for display, so adding a rounded gain to a rounded start can land a cent away from the rounded end balance. That is a display artifact rather than an error in the arithmetic.

10,000 at an assumed 2% per month for 12 months, no deposits
closed form:  10,000 x 1.02 ^ 12  =  12,682.42

month      start        gain      end balance
    1   10,000.00      200.00       10,200.00
    2   10,200.00      204.00       10,404.00
    3   10,404.00      208.08       10,612.08
  ...         ...         ...             ...
   11   12,189.94      243.80       12,433.74
   12   12,433.74      248.67       12,682.42

rounding note: unrounded, month 12 is
12,433.7431 + 248.6749 = 12,682.4179 -> 12,682.42,
while adding the two rounded columns shows 12,682.41.

total gain = 12,682.42 - 10,000.00 =  2,682.42
return     =  2,682.42 / 10,000.00 =   +26.82%

Same 2% every month. The gain per month rises
only because the balance it is applied to rises.

Deposits change the balance and quietly change the return figure

A regular deposit added at the end of each period is a second growth engine running alongside the first, and the two have to be kept separate or the resulting percentage stops meaning anything. In closed form, the starting balance grows as start x (1 + r)^n while the stream of deposits grows as deposit x [((1 + r)^n - 1) / r], the standard ordinary-annuity factor. Because each deposit lands at the end of its period, it earns the rate from the following period onward, which means the final deposit earns nothing at all.

Take the same 10,000 at an assumed 2 percent per month for 12 months, now with 500 added at the end of every month. The starting balance still grows to 12,682.42. The 6,000 of deposits grows to 6,706.04, so the deposits earned 706.04 between them. The ending balance is 19,388.46, of which 16,000 is money you contributed and 3,388.46 is growth.

Here is the part worth being careful about. Expressed as a return on the starting balance, 3,388.46 / 10,000 is 33.88 percent - noticeably more than the 26.82 percent the same rate produced without deposits. Nothing about the trading assumption improved. The extra 7.06 percentage points are returns earned on deposited cash, and the two components reconcile exactly: 26.82 + 7.06 = 33.88. Reporting a deposit-inflated figure as a trading return, to yourself or to anyone else, overstates performance.

The clean approach is to judge the rate per period, which is unaffected by cash flows, and to treat the ending balance as a separate question about saving. A growing account balance can reflect deposits, returns, or both, and only one of those says anything about trading.

10,000 at an assumed 2% per month for 12 months, plus 500 deposited at each month end
growth on the starting balance:
  10,000 x 1.02 ^ 12                          = 12,682.42

growth on the deposit stream:
  500 x ((1.02 ^ 12) - 1) / 0.02
  500 x (0.2682418 / 0.02) = 500 x 13.412090  =  6,706.04

ending balance                                = 19,388.46
less deposits made        12 x 500            = -6,000.00
less starting balance                         = -10,000.00
net growth                                    =  3,388.46

where the 33.88% headline comes from:
  from the starting balance  2,682.42/10,000  = 26.82%
  from the deposits            706.04/10,000  =  7.06%
  total                      3,388.46/10,000  = 33.88%

Only the 26.82% reflects the assumed trading rate.
  • Deposits at period end: final = start x (1 + r)^n + deposit x [((1 + r)^n - 1) / r].
  • The last deposit earns nothing, because it arrives after the final period's growth has been applied.
  • Return measured against the starting balance is inflated by every deposit made along the way.
  • Withdrawals work the same way in reverse, permanently reducing the base that all later periods compound on.

Losses compound on exactly the same arithmetic

The multiplication that makes gains accelerate makes losses accelerate too, and it is not symmetric in the way intuition expects. A 10 percent loss followed by a 10 percent gain does not return you to the start: 1.00 x 0.90 x 1.10 = 0.99, leaving you down 1 percent. The gain was applied to a smaller base than the loss was, and that shortfall does not close on its own.

Generalised, recovering a drawdown of L requires a gain of 1 / (1 - L) - 1, and the requirement grows faster than the loss that caused it. Down 20 percent needs 25 percent to get level. Down 50 percent needs 100 percent. Down 75 percent needs 300 percent. This is why capital preservation is arithmetic rather than temperament - the deeper the hole, the more disproportionate the climb out, and past some depth the required return stops being plausible under any assumption you would be willing to write down.

There is a subtler version of the same effect that shows up even in accounts that finish profitable. A sequence of returns with the same arithmetic average but more variability compounds to less. Alternating plus 10 and minus 10 percent averages zero arithmetically but compounds to minus 0.50 percent per period. Alternating plus 20 and minus 20 also averages zero and compounds to minus 2.02 percent per period. The drag is approximately half the variance, so doubling the volatility roughly quadruples the penalty. Two strategies with identical arithmetic average returns do not produce identical balances.

The practical reading is that the constant-rate model on this page is optimistic by construction - not because the rate you typed is too high, but because holding any rate constant removes the variability that would otherwise reduce the compounded result.

Recovery arithmetic, and the cost of variability
-10% then +10%:  1.00 x 0.90 x 1.10 = 0.9900  ->  -1.00%

gain needed to return to the previous high:
  loss  -10.0%   ->  1 / 0.900 - 1  =  +11.11%
  loss  -20.0%   ->  1 / 0.800 - 1  =  +25.00%
  loss  -25.0%   ->  1 / 0.750 - 1  =  +33.33%
  loss  -1/3     ->  1 / (2/3) - 1  =  +50.00%
  loss  -50.0%   ->  1 / 0.500 - 1  = +100.00%
  loss  -75.0%   ->  1 / 0.250 - 1  = +300.00%

same arithmetic average of zero, different variability:
  +10% / -10%  ->  0.99 ^ (1/2) - 1 =  -0.50% per period
  +20% / -20%  ->  0.96 ^ (1/2) - 1 =  -2.02% per period
  • Gain required to recover a loss of L = 1 / (1 - L) - 1.
  • Down 10% needs +11.11%. Down 20% needs +25%. Down 25% needs +33.33%. Down 50% needs +100%. Down 75% needs +300%.
  • A constant rate compounds better than a variable sequence with the same arithmetic average, by roughly half the variance per period.
  • Position sizing controls how much a single period can subtract. It does not prevent losses, and gaps or slippage can exceed a stop.

Why no account actually returns a constant percentage

A 2 percent month is not twenty-four winning trades of a twelfth of a percent each. It is whatever a month of wins, losses and scratches happened to net out to, and the following month's figure is drawn from the same distribution rather than copied from the last one. Twelve consecutive months at exactly 2 percent has essentially no chance of occurring, and that is the honest reading of every row in the table above.

A single bad period damages the whole run in a way that averaging conceals. Eleven months at an assumed 2 percent with one month at minus 30 percent gives 1.02^11 x 0.70 = 0.8704, so a starting balance of 10,000 ends at 8,703.62 - a loss of 12.96 percent, against the 12,682.42 the clean projection produced. A shortfall of 3,978.80 came out of one period in twelve. Because the factors multiply, no amount of steady months elsewhere in the year offsets it proportionally.

There is also a feedback loop between compounding and position sizing that the model cannot show. Risking a fixed percentage per trade means the cash at risk tracks the balance: 1 percent of 10,000 is 100, but after a 20 percent drawdown to 8,000 the same rule risks 80. That slows the rate at which further losses accumulate, but it also means the recovery is attempted with smaller positions than the ones that caused the damage, and the 25 percent gain needed to return to 10,000 is being pursued at a lower absolute risk per trade than before.

None of this is an argument against compounding, which is simply how repeated multiplication works. It is an argument against reading a projection as a plan. The realistic use of the table is to test whether an assumption is worth pursuing at all, and to see what a drawdown would cost before it happens rather than after.

One bad month inside an otherwise steady year (start 10,000)
clean run, 12 months at an assumed +2%:
  10,000 x 1.02 ^ 12                       = 12,682.42

same year, but one of those months is -30%:
  10,000 x (1.02 ^ 11) x 0.70
  10,000 x 1.243374 x 0.70                 =  8,703.62
                                             (-12.96%)

cost of that single month:
  12,682.42 - 8,703.62                     =  3,978.80
  • Returns are a distribution, not a rate. This model replaces the distribution with its mean and discards the variability entirely.
  • One severe period can outweigh a year of modest ones, because the periodic factors multiply rather than add.
  • Fixed-percentage risk makes position size follow the balance down as well as up.
  • Stress-test the horizon and a drawdown scenario, not just the headline ending figure.

Converting a rate between periods, and a sanity test

Rates only compare when they refer to the same period, and converting between periods is multiplicative rather than proportional. To annualise a monthly rate, use (1 + monthly)^12 - 1. To go the other way, use (1 + annual)^(1/12) - 1. Dividing an annual rate by 12, or multiplying a monthly rate by 12, is the straight-line approximation, and it misstates the compounded figure - slightly at low rates and substantially at high ones. An assumed 20 percent per year is 1.53 percent per month, not the 1.67 percent that dividing by twelve suggests.

This conversion is the fastest reality check available. An assumed 2 percent per month annualises to 26.82 percent. An assumed 5 percent per month - a figure that sounds modest in isolation, and is the placeholder this calculator opens with - annualises to 79.59 percent, which is a materially different claim about a strategy. Running the conversion before accepting a rate turns an abstract monthly number into one you can weigh against something recognisable.

The test is most revealing on daily rates. One percent per day compounded over roughly 252 trading days is a factor of 12.27, turning 10,000 into 122,740, a gain of 1,127 percent. So any claim implying a steady 1 percent a day is a claim of more than twelvefold annual growth, sustained. Restating a daily rate in annual terms is usually enough to settle whether the assumption belongs in the input box.

Compounding also depends on every trade being sized against the balance it is meant to protect, which is where the rest of the toolkit comes in. Use the position size calculator to turn a risk percentage and stop distance into a lot size, the profit and loss calculator to project what an individual trade contributes, the pip value calculator to confirm what each pip is worth at that size, the margin calculator to check the position fits, and the trade journal to replace an assumed return with a measured one. A projection built on your own recorded results carries some information. One built on a rate that looked appealing carries none.

The same growth expressed over different periods (all rates assumed)
assumed 2% per month  -> 1.02 ^ 12        - 1 = +26.82% per year
assumed 5% per month  -> 1.05 ^ 12        - 1 = +79.59% per year
assumed 20% per year  -> 1.20 ^ (1 / 12)  - 1 =  +1.53% per month
  straight-line shortcut  20 / 12             =  +1.67% per month
  which overstates the true monthly figure

the daily sanity test, 252 trading days:
  1.01 ^ 252                                  =  12.27x
  10,000 -> 122,740                           = +1,127%
  • Monthly to annual: (1 + r)^12 - 1. Annual to monthly: (1 + r)^(1/12) - 1.
  • 2% per month = 26.82% per year. 5% per month = 79.59% per year.
  • 20% per year = 1.53% per month, not the 1.67% that dividing by twelve gives.
  • 1% per day over 252 trading days is a factor of 12.27, or +1,127%. Treat such rates as claims to be verified, not inputs to be trusted.

Frequently asked

What return per period should I use?

Use a figure you can realistically sustain after losing trades and drawdowns — for many traders that is a low single-digit monthly percentage. The point is consistency, not a headline number.

Does the deposit compound too?

Yes. Each deposit is added at the end of its period, then earns the return rate from the next period onward, just like the reinvested gains.

Why does the curve bend upward?

Because each period earns a return on a larger balance than the last. That feedback loop is what makes the equity curve exponential rather than a straight line.