Category: Investing Insight

Investing insight to make you a better investor.

Budget-day Options

A lot of ink is spilled on the budget. Some are prescriptive (and completely useless.) Some are predictive (and mostly wrong.) Most investors will do well to just ignore the noise and continue with their SIP/DCA. However, if you do want to trade it, what should you do?

Of the last 26 budgets, 16 ended the day red. You could just short the NIFTY and play the odds.

Budget days tend to have huge intraday ranges that lead to dislocations that you could monetize. However, this is largely a high-frequency trading affair and may not be feasible for most.

Another thing worth pursuing are delta-hedged short-strangles. The table above gives you the P&L of shorting NIFTY ATM delta-hedged strangles overnight and closing them on budget-day (or the immediate business-day.) There’s a fair amount of execution risk here given the intraday volatility on the day. However, it seems like a decent profit pool to fish in.

Code and charts on github.

Macro: Timing the NIFTY 50

Prior research has shown that there is no correlation between GDP growth and stock market returns (see: The Enigma of Economic Growth and Stock Market Returns).

GDP is a trailing measure. However, does the relationship change if we use leading economic indicators?

To answer this question, we look to the OECD Composite Leading Indicator database. It is a monthly time series of CLIs of different regions. Here’s India’s and the G7’s charted from 1980:

If we scatter India’s CLI with next month’s NIFTY 50 returns, we get:

No correlation whatsoever.

However, we know that the market likes growth. So, what happens if we scatter the diff of the CLI over returns?

Noisy, but not hopeless!

Turns out, if you go long NIFTY 50 only when the CLI is improving, you get a 2% boost over the long run return.

The kicker here is that the drawdowns are a lot less severe.

Code and charts are on github.

Roll’s Serial Covariance Spread Estimator

The book Trading and Exchanges (Amazon,) has a section on Roll’s Serial Covariance Spread Estimator which tackles the problem of estimating the bid/ask spread with only the price series.

The Roll’s serial covariance spread estimator is an econometric model designed to estimate the average bid/ask spread (or effective spread) of a security using only transaction prices, without needing quotation data. It is one of the best-known estimators based on price change serial covariances.

The idea is from the 90’s and we’ve come a long way since then. Now, we have streaming quotes from which the spread can be directly computed. What makes this approach interesting is the decomposition of volatility that was used to estimate the spread can be used to estimate fundamental volatility instead.

Total Volatility = Fundamental Volatility + Transitory Volatility

Fundamental volatility consists of seemingly random price changes that do not revert. These changes often have the properties of a random walk.

Transitory volatility consists of price changes that ultimately revert. This price reversal creates negative serial correlation in the series of price changes.

Using Roll’s model, Fundamental Volatility = Total Volatility – (Effective Spread)2/4

Here’s NIFTY through Roll’s model:

Code on Github.

VVIX for VIX

Came across an intriguing post by Markku Kurtti: Employing volatility of volatility in long-term volatility forecasts (outcastbeta). The gist of it is that the volatility of volatility and average volatility is more predictable. So, predict them separately and then put them together to get a volatility forecast.

Our previous attempts at forecasting VIX have led us the conclude that nothing beats locf. Just extending the last value of VIX forward has beaten all of the models we’ve looked at.

What if, we applied the process outlined in Mr. Kurtti’s blog for VIX?

Not looking so good if you forecast out for 20-days.

A good forecasting model should be able to estimate large spikes and reversion to mean from them. If not the former, then at least the latter. So, if a model is good at the mean-reverting bit, then you can combine both locf and the model to get better predictions.

For example, if you only consider the 1-day forecast, then obviously locf has the upper hand.

However, as you try to predict farther away, you expect the model to nail the mean-reversion bit.

That is not the case here.

Once again, locf wins.

Code and charts up on github.

CGMM for VIX

Previously, we explored using Meta’s Prophet library to predict VIX. It turned out that simply extrapolating the last value of the index worked better (Prophet for VIX). In fact, locf (last one carried forward) works better than GARCH(1, 1) and most other approaches. Can the same be said about Conditional Gaussian Mixture Models?

We used the cgmm python library to forecast 20-day forward VIX and compared its root-mean-squared errors (rmse) to those of locf‘s.

locf is pretty hard to beat.

Especially so when the VIX index itself is volatile.

Code up on github.