# Correct way to find the mean of annual geometric returns of monthly returns?

Say I'm given I set of monthly returns over 10 years on a monthly basis. What is the correct way to find the geometric returns of this data? I ask because a classmate and I are on different sides of the coin.

I found the cumulative returns of each year, then found the geometric mean of the 10 years. He found the cumulative returns of the entire time period, then took the (months in a year / total months) root of that data.

The numbers turn out to be very close, but if I remember correctly mine are slightly lower over all the funds we measured.

Or is there a different way and we're both wrong?

-

1
Did you mean he took the (months in a year / total months) power? Taking the root with that would lead to a huge number. – chrisaycock♦ May 4 '11 at 22:49

## 3 Answers

If I understand you correctly, your question is whether this is true:

\begin{equation} \sqrt[10]{\prod_{i=1}^{10}{Y_i}} < \sqrt[10]{A} \end{equation}

where $Y$ is the yearly cumulative returns (your method), and $A$ is the absolute cumulative return (your classmate's method).

The question then becomes whether you find this relationship:

\begin{equation} \prod_{i=1}^{10}{Y_i} < A \end{equation}

But that can't be! The absolute cumulative return must be equal to the product of the yearly cumulative returns. So if your yearly returns don't multiply to be his absolute return, then one of you has made a mistake.

If you believe that your and his math are both correct, then the culprit is most likely a rounding error.

-

@chrisaycock already gave you a correct answer, but I thought I would add a more verbose version (and practice some MathJax by the way).

In fact when I began answering I thought it was going to be a straightforward answer, but having spent some more time with this question I see there are some potential traps you can fall in.

Especially since some of the steps you name are not 100% clear, I assumed the worst-case scenario (AKA everything wrong). I suppose some of them are just shorthand notions. Sorry if you already do it the right way and it's obvious it's wrong making my explanations ridiculous, but at least one of the steps is to blame as you are getting different results.

• `Say I'm given a set of monthly returns over 10 years on a monthly basis.`

Let's call them

$$r_{1_{jan}}, \ ...,\ r_{1_{dec}}, \ ...,\ r_{10_{jan}}, \ ...,\ r_{10_{dec}} \ [eq. 1]$$

What you do is:

• `I found the cumulative returns of each year`

Your cumulative return for a year is a product of monthly returns:

$$R_{i} = (1+r_{i_{jan}}) * \ ... \ * (1+r_{i_{dec}}) - 1 \ [eq. 2]$$

OK, straightforward. Not that many options here.

• `then found the geometric mean of the 10 years`

if you mean that literally (I warned you I would take the worst approach possible, sorry), as in found the geometric mean of those 10 returns:

$$R_{G} = \sqrt[10]{R_{1} * R_{2} * \ ... \ * R_{10}} \ [eq. 3]$$

we have our first problem. While technically you can calculate anything (as long as it's not negative), it doesn't make sense. We are looking for a geometric average rate of return instead:

$$R_{G} = \sqrt[10]{(1 + R_{1}) * (1 + R_{2}) * \ ... \ * (1 + R_{10})} - 1 \ [eq. 4]$$

OK, done, should be the correct answer.

• `He found the cumulative returns of the entire time period,`

He calculated it either this way:

$$AR = (1+r_{1_{jan}}) * \ ... \ * (1+r_{1_{dec}}) * \ ... \ * (1+r_{10_{jan}}) * \ ... \ * (1+r_{10_{dec}}) - 1 \ [eq. 5]$$

or just used $\frac{P_{last}}{P_{first}} - 1$ which is the same. No problem here.

• `then took the (months in a year / total months) root of that data.`

First assumption - I suppose you meant power here (or `total months / months in a year` root), because otherwise it wouldn't make much sense.

Now, if we literally take the root out of our accumulated returns ($AR$):

$$\sqrt[\frac{120}{12}]{AR} = \sqrt[10]{(1+r_{1_{jan}}) * \ ... \ * (1+r_{1_{dec}}) * \ ... \ * (1+r_{10_{jan}}) * \ ... \ * (1+r_{10_{dec}}) - 1} \ [eq. 6]$$

using $[eq. 2]$ we get:

$$= \sqrt[10]{(1+R_{1})*(1+R_{2})* \ ... \ * (1+R_{10}) - 1}$$

Oops, seems similar to $[eq. 4]$, but it's not the same. We did something wrong.

In fact we wanted it this way (remembering that we're looking for annual returns):

$$R_{G} = \sqrt[10]{1 + AR} - 1 \ [eq. 7]$$

Now plugging $[eq. 5]$ and $[eq. 2]$:

$$= \sqrt[10]{1 + (1+R_{1})*(1+R_{2})* \ ... \ * (1+R_{10}) - 1} -1$$

$$= \sqrt[10]{(1+R_{1})*(1+R_{2})* \ ... \ * (1+R_{10})} - 1$$

and this is the same as $[eq. 4]$

This way you see that both methods should give equivalent results. If not, then either it's a calculation mistake/rounding issue or you're using different methods and someone is not calculating an actual geometric average rate of return.

I hope now you can find where the issue was.

-

Hmm, I see there's no easy way to deal with long MathJax lines. And there are some issues with multi-line equations too, which I will report on meta. But it was a nice primer on using LaTeX on SE. I didn't realize I forgot that much syntax. ;-) – Karol Piczak May 5 '11 at 12:31

I assume you have net simple montly returns. 12 months and 10 years gives you 120 monthly returns $r_1, r_2,...,r_{120}$. You want to know the annual geometric return. Then solve for $r_g:$

$$(1+r_1)\times(1+r_2)\times \dots \times(1+r_{120})=(1+r_g)^{10}$$

The order of the multiplication on the LHS is important, that is, you should start multiplying with the oldest return ($r_1$).

-

2
I don't think in this case your LHS ordering is important. It's simple multiplication only. – Karol Piczak May 5 '11 at 12:33
You are right of course. – Dmitrii I. May 5 '11 at 13:39
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 12, "mathjax_display_tex": 11, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 20, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9411337971687317, "perplexity_flag": "middle"}