I would like to calculate the Yearly Sharpe Ratio on MSCI World index

I have monthly values of the index that falls back up to Jan/1970, hence about: 44 years, 528 months

In order to calculate Sharpe Ratio we need standard deviation of the yearly rate or returns, there are two ways to calculate this:

Which one is the right way to calculate yearly sharpe ratio? 1 or 2 OR 3? And why?

WAY 1) I calculate rolling yearly rate of returns, and then I simply calc the mean and the stddev

Just to make it clear, I calc the rolling yearly Rate of Returns (RoR) in this way:

RoR1 = (Val(12) - Val(0)) / Val(0)
RoR2 = (Val(13) - Val(1)) / Val(1)
RoR3 = (Val(14) - Val(2)) / Val(2)
RoRN = (Val(N) - Val(N-12)) / Val(N-12)

where Val(N) is the value of the MSCI World index at time N

Hence, we calc about N-12 RoRs which for my sample is 516 RoRs

Then I would just find the mean (M) and the stddev of the previously calulated RoRs

WAY 2) I calculate yearly rate of returns, and then I simply calc the mean and the stddev

Just to make it clear, I calc the yearly Rate of Returns (RoR) in this way:

RoR1 = (Val(12) - Val(0)) / Val(0)
RoR2 = (Val(24) - Val(12)) / Val(12)
RoR3 = (Val(36) - Val(24)) / Val(24)

Hence we calc about 44 RoRs

WAY 3) we calculate the yearly Sharpe ratio by using the mean and stddev of annualized monthly rate of returns (see for instance this Morningstar paper that explains it).

But this 3rd way adds a bit of complexity (and some arguments about whether is correct to annualize stddev by simply multiplying by sqrt of 12)

And I don't understand why would even someone look at this 3rd way, when way 1 or 2 could suffice.

  • 3
    $\begingroup$ What you refer to a yearly return, others might refer to as a rolling 1-year return or a year over year (YoY) return. I can't recall anyone ever doing this to calculate Sharpe ratio over a full sample. It is more common to annualize monthly returns. I'm also a little confused on what you want the output to be. Do you want the Sharpe ratio for each year, a rolling Sharpe ratio, or over the whole sample? $\endgroup$
    – John
    Feb 26, 2014 at 20:23
  • $\begingroup$ @John: thanks for your comment which started to enlight things up a bit. I thought the rolling yearly was the way to go because it generated more RoRs, I updated the question. Please let me know what you think, and how I could improve it. $\endgroup$ Feb 27, 2014 at 13:09
  • 2
    $\begingroup$ The best advice I can give is to just do whatever your boss wants. Annualizing monthly returns might be more common, but there's nothing wrong with using yearly returns to calculate Sharpe ratios. Just don't do the first method. $\endgroup$
    – John
    Feb 27, 2014 at 16:26
  • $\begingroup$ I absolutely agree with @John : if you do not know $100\%$ what the interpretation is then don't do statistics on rolling returns. Furthermore: yes, use monthly or weekly returns. John, would you post this as answer - just to have this one answered. $\endgroup$
    – Richi Wa
    Feb 28, 2014 at 7:39
  • $\begingroup$ @Richard: thanks, I got the point to NOT use WAY 1, let's ignore rolling returns then, but still the question remains: why shoukd i use annualized monthly returns which adds a bit of complexity, instead of just yearly (non-rolling) returns (i.e. WAY 2). I updated again the question, hope it helps to make it more clear. $\endgroup$ Feb 28, 2014 at 15:45

2 Answers 2


Here is an example calculation according to the formula by William F. Sharpe, 1994.

The OP's method of annualising the variance (as used below), is also specified by the Committee of European Securities Regulators in this document, page 5, box 1.

For this example, taking 24 months of returns of risk-free proxy (US 4-week T-bills) and an example stock, (and using Mathematica).

riskfree = {0.02, 0.06, 0.06, 0.07, 0.07, 0.05,
   0.07, 0.09, 0.07, 0.11, 0.13, 0.04, 0.05, 0.08, 0.08,
   0.05, 0.02, 0.03, 0.02, 0.04, 0.02, 0.11, 0.05, 0.02};

index = {2.54, 6.06, -0.75, -6.46, 1.39, 0.21,
  -0.15, 6.47, -6.23, -1.86, 0.78, 6.01, -0.69, 6.21, -5.04,
   3.19, -8.13, 2.06, -6.08, 1.6, -3.23, 0.8, 4.39, -5.81};

(* annualised mean excess return *)
amer = 12*Mean[index - riskfree];

(* annualised standard deviation *)
asd = StandardDeviation[index - riskfree]*Sqrt[12]

(* ex-post Sharpe ratio *)
ratio = amer/asd


"A negative Sharpe ratio indicates that a risk-less asset would perform better than the security being analysed." - Investopedia

(* plot cumulative returns *)
crf = FoldList[Times, 100, riskfree/100 + 1];
cidx = FoldList[Times, 100, index/100 + 1];
ListLinePlot[{crf, cidx}, DataRange -> {0, 24},
 PlotLegends -> {"Risk-free", "Stock"}]

enter image description here


There are sufficiently different ways to calculate the Sharpe ratio that the best advice I can give is to do whatever your boss wants. Also, if it is for a paper or research document, just make clear you document your method.

My approach is usually to calculate the highest frequency Sharpe ratio I can based on the data. The higher frequency choice is to get a better estimate of the standard deviation. I might then put the annualized value in parentheses after it, mainly as others are more familiar with what a good annual Sharpe would be.

However, I almost always discuss the Sharpe ratio as relative to something else, i.e. the Sharpe of a portfolio strategy relative to some index or benchmark. It can be difficult to interpret these ratios by themselves.

For annualization, CAGRs are generally preferred to multiplying the return by the frequency, which really only holds if you assume a normal distribution for log returns. The CAGR is perhaps most common and can be thought of as the annualized return you would get if you invested in the portfolio over the relevant horizon. The only problem with CAGRs is that it's not clear what the standard deviation should be that goes with it. Most people just multiply the standard deviation by the square root of 12. It's probably not correct, but it's what everybody does so you probably should too.

As Richard notes in the comments, what you calculate also depends on how you need the statistic to be interpreted. The most common way the Sharpe ratio is used is as an ex-post evaluation of portfolio performance. However, it is also possible to use the Sharpe ratio in portfolio optimization, which requires a forward-looking forecast of what the Sharpe ratio of a portfolio will be in the future. The relevant forward looking Sharpe ratio for optimization relies on the arithmetic returns and standard deviations since that is what is required to aggregate from security returns to portfolio returns. However, the ex post evaluation Sharpe ratio above was using CAGR, which is a geometric return. The goal in that case is to figure out what you actually returned on an annualized basis, rather than the distribution of the return as some point in the future.

  • $\begingroup$ Thanks for explaining also when to use CAGR (ex-post Sharpe Ratio) and when to use simple arithmetic returns (forward-looking forecast Sharpe Ratio) $\endgroup$ Mar 5, 2014 at 12:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.