In this simulation, we will compare three different investment return policies with a fixed starting investment over 10 time periods.
fixed.return <- rep(1.05, 10)
fixed.return
## [1] 1.05 1.05 1.05 1.05 1.05 1.05 1.05 1.05 1.05 1.05
Here are the cumulative fixed returns for 10 periods.
prod(fixed.return)
## [1] 1.628895
This means that after 10 time periods, the return on the initial investment from a fixed return policy is 62.89%. The arithmetic mean return in each period, relative to the initial investment, is 62.89 / 10 = 6.289%. The geometric mean return in each period, relative to the initial investment is \((1.05^{10})^{\frac{1}{10}}=1=5\%\)
Now, here is a simulation of low variability returns. We’ll simulate 100,000 sets of variable returns over 10 time periods from a normal distribution with mean 1.05 and sd = .01:
l.variable.returns.vec <- sapply(1:1e5, function(x) {
prod(rnorm(n = 10, mean = 1.05, sd = .01))}
)
# Print the first 10 results
l.variable.returns.vec[1:10]
## [1] 1.573076 1.666184 1.617289 1.617581 1.524480 1.639563 1.577857
## [8] 1.678560 1.647298 1.625120
# Calculate summary stats
summary(l.variable.returns.vec)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.405 1.595 1.628 1.629 1.661 1.843
The mean variable return was 62.88% – exactly the same as the fixed return. Here is a histogram of the distribution of variable returns. The fixed return amount of 62.89% is shown with a red dot:
Now, let’s repeat the previous simulation, but we’ll increase the variability of the returns, by increasing the standard deviation from 1% to 10%. Importantly, this will also allow for negative returns (i.e.; changes less than 1.0)
h.variable.returns.vec <- sapply(1:1e5, function(x) {
prod(rnorm(n = 10, mean = 1.05, sd = .1))}
)
# Print the first 10 results
h.variable.returns.vec[1:10]
## [1] 1.989094 2.025661 1.629437 2.713504 1.708839 1.794740 1.388120
## [8] 1.805163 1.227965 1.548143
# Calculate summary stats
summary(h.variable.returns.vec)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.432 1.273 1.564 1.630 1.915 6.302
The mean high-variability return was 63.04% – again, almost exactly the same as the mean low-variability and fixed return! Here is a histogram of the distribution of high-variability returns.
I was a bit puzzled by this result as before we found evidence that variability can hurt. For example, let’s compare a fixed return policy with two alternating return policies, where the returns deterministically alternate between -x and + x from the fixed return. I’ll compare a low-variability alternating return (+1% and + 9%) with a high-variability alternating return (-5% and +5%):
Here are the results:
# Fixed 5% return over 10 time periods (same as before)
prod(c(1.05, 1.05, 1.05, 1.05, 1.05, 1.05, 1.05, 1.05, 1.05, 1.05))
## [1] 1.628895
# Low variability alternating returns
# +1% and +9%
prod(c(1.01, 1.09, 1.01, 1.09, 1.01, 1.09, 1.01, 1.09, 1.01, 1.09))
## [1] 1.617109
# High variability alternating returns
# -5% and +15%
prod(c(.95, 1.15, .95, 1.15, .95, 1.15, .95, 1.15, .95, 1.15))
## [1] 1.55635
Here, the fixed returns give 62.89% returns (again), while the low-variability alternating returns give less at 61.71%, and the high-variability alternating returns give even less at 55.64%.
Conclusion Alternating returns hurt!