Compounding Arithmetic Returns and Summing Log Returns
Summary
The document distinguishes how to combine monthly returns over a multi-period horizon. For arithmetic returns, each period’s gross return is chained multiplicatively, then one is subtracted to express the result as a cumulative percentage return. Simply adding arithmetic returns does not generally produce the same compounded outcome, although the gap may be modest over a short interval and more noticeable over longer spans.
For logarithmic returns, the period values add directly because each is the log of the ratio between successive prices. A simple simulation and plot illustrate how cumulative products and sums of arithmetic returns can diverge over time, but the discussion offers no empirical market study. The correct aggregation therefore depends on how the dataset defines its return observations; the document does not address other conventions, such as annualization or missing periods.
Key ideas
- Arithmetic returns compound by multiplying their gross returns across periods.
- Adding arithmetic returns is not generally equivalent to compounding them.
- Logarithmic returns can be summed across periods to obtain the total log return.
- The return definition in the dataset determines the appropriate aggregation method.
- The example illustrates the distinction but is not an empirical market analysis.
Tags
Full text
# cumulative return calculation, disagreement # cumulative return calculation, disagreement A friend of mine and myself are having an argument on how to correctly determine cumulative return. The dataset has monthly return data and we are trying to determine the 6-month cumulative return. I proposed the following: Cumulative return for 6 months is a product of monthly returns: (1) Ri=(1+ri_1)∗ ... ∗(1+ri_6)−1 He mentioned just adding up the different return values: (2) Ri=(ri_1)+ ... (ri_6) Now I am pretty sure my way of calculating this is correct, although differences can be small. Question Am I correct that when academic papers talk of cumulative return they calculate this with equation (1) Thank you in advance. S Gontscharoff ## Answer by Forgottenscience (score 1, accepted) https://quant.stackexchange.com/a/26403 To expand on my comment, consider the following R code: ``` set.seed(1) returns <- runif(1000, 0.95,1.055) #Extremely simple return generation with a slight drift. plot(cumprod(returns), type = "l") lines(cumsum(returns-1)+1, col = "blue") ``` Which gives the following result: As you can see the effect is not linear, as the difference nearly disappears around index 300 and is greatly reduced at 900, but increases again as the compounding effect increases. So, you will most likely not see major differences in 6 month data, but as soon as you go to larger time scales the effect become noticeable. ## Answer by dm63 (score 2) https://quant.stackexchange.com/a/26401 If the dataset contains arithmetic returns where 1+r(i)= S(i)/S(i-1) then you are correct. If the dataset contains logarithmically defined returns where r(i) = log (S(i)/S(i-1)) then your friend is correct.
Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.