I employ volatility analysis extensively in the hedge fund I manage both at the individual stock level and at the index level. Both types of analysis are essential if you hope to trade successfully, so in today’s blog I’m going to discuss each of them. Index volatility will however form the focus of our discussion: I’ll share a highly effective technique that I’ve developed to create a synthetic volatility index for any of the global market indices. This is a very useful tool because it allows one to quickly and simply glean an understanding of broader market volatility in any global market regardless of whether the respective market has an associated volatility index. We’ll kick-off today’s discussion with single stock volatility.
Understanding volatility inherent in individual stocks helps one to define one’s expectations of the severity of future price swings, which in turn enables one to implement prudent risk management. For example, one may decide to allocate smaller portions of one’s capital to highly volatile stocks, while maintaining higher capital allocations to stock’s with low volatility. One could apply different rule sets to stock’s that exhibit high or low volatility. The possibilities are endless. The point is: having an understanding of single stock volatility is of outmost importance for effective risk management, particularly in short-term trading.
But there’s another approach to analysing volatility which is no less important: index volatility analysis. Index volatility provides one with a view of broader market risk. High levels of index volatility are typically associated with uncertain market conditions that present additional risk to trader’s portfolios. Therefore, index volatility can be used as an input into high level risk-on/off decision making. In fact, this type of analysis is an integral part of my risk management strategy in the fund I manage. In the USA I study the VIX, but many market indices don’t have an associated volatility index. So how do we analyse index volatility in those instances? We can’t, so we’ll have to build our own custom algorithm. The good news is that I’ve done all the hard work for you. I’ve developed a simple and highly effective method to build a synthetic volatility index for any market index. But before we move on, let’s first examine the VIX.
The VIX (CBOE Volatility Index) is a well-known volatility index which represents the market’s expectation of 30-day volatility in the S&P 500. It’s a widely used measure of market risk and is often referred to as the “investor fear gauge”. The calculation of the index is quite complex, involving implied volatilities from a range of S&P 500 index options. Due to this, constructing a similar measure of volatility for any other market index is near impossible, especially for emerging indices with non-existent options markets. This led me to develop and quantify a custom approach that 1) when applied to the S&P 500 mirrors the VIX index as closely as possible and 2) relies solely on price as an input so that it can be applied to any market index.
After some elbow grease I came up with a solution that when applied to the S&P 500 has a correlation of +0.92 with the VIX. In other words, it’s almost perfectly correlated with the VIX and could therefore be effectively employed in favour of the VIX to measure volatility in the S&P 500. But more importantly, we can apply the indicator to any market index.
In last week’s post I discussed two basic requirements for our proposed synthetic index: 1) it must accept price as its sole input for its calculation and 2) it must exhibit a high correlation with the VIX when applied to the S&P 500. An indicator that satisfies both of these requirements could be effectively used to measure broad market volatility in any global index, regardless of whether or not the index in question has a corresponding volatility index. Because changes in volatility often precede changes in market regime, it can be of tremendous value to monitor the volatility of your favourite market.
A good place to start any search related to volatility is with the Average True Range (ATR). The ATR is based on price alone, and thus fulfils our first criteria. Developed by Welles Wilder, it measures volatility in price by taking an n-period exponential moving average of the true range. The true range accounts for gaps in its calculation by comparing moves form the prior days close. Its formula follows:
Max[ (high – low), abs(high –prevClose), abs(low – prevClose) ]
An index experiencing a high level of volatility will have a higher ATR relative to its past and vice versa. One of the downfalls of the ATR is that it can’t be used for cross-sectional analysis: we cannot use the ATR to rank indexes from high to low volatility because an index with a high ATR may just be trading at a higher price. A simple solution to this problem is to divide the ATR by its closing price. This in effect normalises the ATR, giving us a value that can be used to compare the volatilities of a basket of indexes/stocks.
My preferred method of measuring volatility is slightly different to Wilders to allow for the shortcomings mentioned above. It involves taking an n-period simple moving average of the true range divided by the close, or:
Simple Moving Average (trueRange / close)
This normalises the daily volatility and then averages it over our desired timeframe. The normalised value is returned in the form of a percentage: it is the average daily percentage movement in the index over our chosen timeframe. Because it is a normalised value – unlike Wilder’s ATR – we can use it for cross-sectional analyses such as ranking from high to low volatility.
Next I had to decide on a lookback period to employ. This couldn’t just be any value, but one that when applied to the S&P 500 achieved the highest correlation with the VIX. After running some optimisation code I finally came up with a suitable candidate that has a correlation of +0.92. Below I share my results:
We find that as we approach a parameter value of 20 for our lookback the correlation improves, while the correlation deteriorates for values above 20. Our optimal value then is 20, or:
Simple 20 day moving average of (true range / close)
Taking into account the sample size (I ran this test from 1990 to the present) and parameter robustness, I believe these findings to be statistically significant. In other words, we can apply our synthetic indicator to any market index and be confident that we capture the inherent volatility in much the same way that the VIX captures volatility in the S&P 500. The image below nicely illustrates the high correlation of our Synthetic Volatility Index with the VIX.
For those of you that use Metastock, here’s the formula to calculate our synthetic index: Mov(ATR(1)/C,20,S).