6
$\begingroup$

I want to calculate realized/historical volatility for the underlying products of various options using the Garman-Klass estimator, but I can't see to find an equation, although I know it involves OHLC data. In the comments there is a link to the equation, but I still am looking for a little explanation. Why does this work? What is the variable "F"?

$\endgroup$
  • $\begingroup$ Google is your best friend, todaysgroep.nl/media/236846/measuring_historic_volatility.pdf $\endgroup$ – Matthias Wolf May 15 '14 at 15:39
  • 1
    $\begingroup$ I found this, but was hoping for a better explanation. For example, what is the variable "F"? Frequency? Is this suppose to be the sqrt(252) to annualize the volatility? $\endgroup$ – Stu May 15 '14 at 15:40
  • 3
    $\begingroup$ My Google-fu didn't turn up anything great so I will produce something below. Credits to @joshuaulrich for the TTR R-package I used as source. $\endgroup$ – Bob Jansen May 15 '14 at 16:20
10
$\begingroup$

In the R TTR package the Garman-Klass volatility is given by

# Historical Open-High-Low-Close Volatility: Garman Klass
# https://web.archive.org/web/20100326172550/http://www.sitmo.com/eq/402
if( calc=="garman.klass" ) {
  s <- sqrt( N/n * runSum( .5 * log(OHLC[,2]/OHLC[,3])^2 -
             (2*log(2)-1) * log(OHLC[,4]/OHLC[,1])^2 , n ) )
}

which corresponds to*

$$ \sigma = \sqrt{ \frac{Z}{n} \sum \left[ \textstyle\frac{1}{2}\displaystyle \left( \log \frac{H_i}{L_i} \right)^2 - (2\log 2-1) \left( \log \frac{C_i}{O_i} \right)^2 \right] }. $$

I think this code is fairly self-explanatory but what's what?

Z = Number of closing prices in a year, n = number of historical prices used for the volatility estimate.

* $\LaTeX$ taken from the vignette.

$\endgroup$
  • 7
    $\begingroup$ I like when my documentation helps non-users of my code. :) $\endgroup$ – Joshua Ulrich May 16 '14 at 19:49
  • $\begingroup$ It really is excellent, better than the papers Google gives. Thanks for that! $\endgroup$ – Bob Jansen May 16 '14 at 19:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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