Garman-Klass-Yang-Zhang Historical Volatility Calculation – Volatility Analysis in Python

Subscribe to newsletter

In the previous post, we introduced the Garman-Klass volatility estimator that takes into account the high, low, open, and closing prices of a stock. In this installment, we present an extension of the Garman-Klass volatility estimator that also takes into consideration overnight jumps.

Garman-Klass-Yang-Zhang (GKYZ) volatility estimator consists of using the returns of open, high, low, and closing prices in its calculation. It also uses the previous day’s closing price.  It is calculated as follows,

volatility trading strategies in python

where hi denotes the daily high price, li is the daily low price, ci is the daily closing price and oi is the daily opening price of the stock at day i.

Subscribe to newsletter https://harbourfrontquant.beehiiv.com/subscribe Newsletter Covering Trading Strategies, Risk Management, Financial Derivatives, Career Perspectives, and More

We implemented the above equation in Python. We downloaded SPY data from Yahoo finance and calculated the GKYZ historical volatility using the Python program. The picture below shows the GKYZ historical volatility of SPY from March 2015 to March 2020.

Garman-Klass-Yang-Zhang Historical Volatility Trading Strategy

We note that the GKYZ volatility estimator takes into account overnight jumps but not the trend, i.e. it assumes that the underlying asset follows a GBM process with zero drift. Therefore the GKYZ volatility estimator tends to overestimate the volatility when the drift is different from zero. However, for a GBM process, this estimator is eight times more efficient than the close-to-close volatility estimator.

To download the accompanying Excel workbook or Python program for this post:
1. Subscribe to the newsletter. If you're already a subscriber, go to the next step
2. Once subscribed, refer a friend
After completing these steps, you’ll gain access to the file for this post, along with files for a dozen other posts.


Also check out Historical Volatility Online Calculator.

Further questions

What's your question? Ask it in the discussion forum

Have an answer to the questions below? Post it here or in the forum

LATEST NEWSThree Israeli hostages freed in Gaza, Israel begins releasing 369 Palestinians in exchange
Three Israeli hostages freed in Gaza, Israel begins releasing 369 Palestinians in exchange
Stay up-to-date with the latest news - click here
LATEST NEWSOutcome of Italy's bank M&A wave to be decided by investors, cenbank says
Outcome of Italy's bank M&A wave to be decided by investors, cenbank says
Stay up-to-date with the latest news - click here
LATEST NEWSCD, Checking, and Savings Rates Today: Explore Today's Best Rates
CD, Checking, and Savings Rates Today: Explore Today's Best Rates

Open a new bank account today and earn a top interest rate. Our experts have researched the best rates on checking, savings, and CD accounts to help you maximize your earnings.

Stay up-to-date with the latest news - click here
LATEST NEWSRussian court puts US citizen in custody suspected of drug smuggling
Russian court puts US citizen in custody suspected of drug smuggling
Stay up-to-date with the latest news - click here
LATEST NEWSAs inflation rises, a few local institutions are paying at least 9% interest for your cash
As inflation rises, a few local institutions are paying at least 9% interest for your cash

Local financial institutions are offering extremely high rates on bank accounts. Find out if you qualify to open one before these offers end.

Stay up-to-date with the latest news - click here

8 Comments

Leave a Reply