What's new

calculating volatility

David, I am a bit concerned of voatility. This is given and that is fine, but lets put us for a minute in the shoes of a real trader. Ca you check the example and say if you think I am right or wrong computing volatility in this case of a currency pair. Of course this is only an example, I am sure there are several other ways to calculate volatility, but I just want to know what you think of it?gbpusd vol.jpg

Nicole Seaman

Director of FRM Operations
Staff member
Note: This was also posted here in this thread (duplicate post): https://www.bionicturtle.com/forum/threads/hull-01-35.6293/. I wanted to place that link here for reference. @Maxim Rastorguev We ask that you do not post the same thing in different threads, as it can clutter up the forum and can get overwhelming when trying to answer every member's questions.

@David Harper CFA FRM I will let you decide if this should be moved to the thread I listed above or if it deserves its own thread here.

David Harper CFA FRM

David Harper CFA FRM
Staff member
Hi @Maxim Rastorguev Yes, yours is a perfectly acceptable volatility calculation! As you suggest, there are a few methodological choices:
  • Your returns are arithmetic (which have the advantage of being additive across the portfolio). The returns could also be given by ln(spot_n/spot_n-1) which is geometric and has the advantage of being time additive. But for daily returns, they generally approximate each other
  • You implicitly assume the mean return is zero because the variance is the average of squared deviations as given by (r_day - r_average)^2, but you follow Hull in assuming r_average = 0 such that you are simply squaring the daily returns. Some authors argue that assuming zero (your approach) is best; e.g., see https://www.bionicturtle.com/forum/...on-without-mean-in-ewma-garch.6803/post-23238 . The alternative is to follow the technical definition of standard deviation and use the sample mean return (I've even seen the expected return used but that's atypical!)
  • You've divided the sum of squared deviations by (n-1) which is accurate for sample (which this is! it's a historical sample ...) because it's an unbiased sample variance. Although some would divide by (n) which generates a valid but biased estimate of the sample variance. But your (n-1) is best, in my opinion, because it's anyhow slightly more conservative in addition to being unbaised.
  • The final step to annualize by multiplying by SQRT(250) is, of course, correct ... although it is good to notice that it requires an important assumption that the daily returns are independent and identically distributed (i.i.d.) which embeds the assumption that the returns are not auto-correlated. Very common assumption but might not be realistic; for example, it the returns mean revert, then this annualized number overstates the actual per annum volatility. I hope that's helpful!
Last edited: