A family of Microsoft spreadsheet software with tools for analyzing, charting, and communicating data.
The index is around 14% (don't know the exact) and I want to compare my systems to this standard deviation.
Not sure where you are getting the historical number (index sd of 14%), but your method does not even come close. (No big surprise; just making a point.)
Or perhaps you are doing the right thing after all, and you merely miscommunicated the methodology, which led to my misunderstanding.
You might want to look at http//www.investopedia.com/articles/04/021804.asp. It states: "When we calculate the volatility for the S&P 500 index as of January 31, 2004, we get anywhere from 14.7% to 21.1%. Why such a range? Because we must choose both an interval and a historical period".
Using their methodology, you would compute the standard deviation of the daily returns, then annualize it. Note that they are indeed using an __annualized__ sd, not the average "annual" sd that you specified.
For example, if the closing SP500 index values for 1950 through 2009 are in E2:E15099, define the name "close1s" for E2:E15098 and "close1e" for E3:E15099.
(Note: The named ranges should be absolute references prefixed by the sheet name. Excel will do that for you if you define the names as I described previously in this thread. I'm just too lazy to type them.)
Then the (daily) sd of the daily (simple) returns is the array formula (remember: ctrl+alt+Enter) =STDEVP(close1e/close1s). And the annualized daily sd is the array formula =STDEVP(close1e/close1s)*SQRT(252).
(Note that I use 252 instead of the 250 used in investopedia.com web page. The average trade days per year is 251.6 between 1950 and 2009. And 252 is divisible by 12.)
For the 1950-2009 data, the daily sd is 0.97%, which is close to the 1.1% (for a different period) in the investopedia.com web page. The annualized sd is 15.32%.
For comparison, the annual sd computed by the daily year-over-year return is 16.49%. That is computed by the array formula =STDEVP(close252e/close252s), where "close252s" is E2:E14847 and "close252e" is E254:E15099.
But you might also want to look at http://www.riskglossary.com/link/volatility.htm. It defines volatility in the "typical" fashion, namely: the standard deviation of the log returns.
Thus, the (daily) sd of the daily log returns is the array formula =STDEVP(LN(close1e/close1s)), and the annualized daily sd is the array formula =STDEVP(LN(close1e/close1s))*SQRT(252).
In this case, the daily (log) sd appears to be about the same, 0.97%. The annualized (log) sd is 15.38%.
The sd of the year-over-year log returns is 16.10%, which is computed with the array formula =STDEVP(LN(close252e/close252s)).