Ernie Chan recently proposed using Variance Risk Premium as a factor for future price change prediction. VRP is defined as implied volatility minus historical volatility. I've decided to check if this factor works.
There are various methods to calculate historical volatility, I tried some of them and found out that best is using average logarithm of daily range, including morning gaps. Standard deviation of daily changes works too, but, as usual, shows worst results.
Data used: SPY all available daily data from Yahoo.Finance
Correlation between VRP and future normalized daily price change: +0.051
Factor successfully pass the cross-validation of the model, which is not the usual case.
Cross-validated equity of a stategy, using only the VRP factor:
Yearly Sharpe 0.80 against 0.64 for factor-free strategy (which uses only volatility normalization).
No costs included.
Conclusion: VRP definitely works for S&P 500, correlation with future price change is positive, which means that when VIX is higher than local historical volatility, the price tends to grow. VIX tends to oscillate around local historical volatility and you can profit from it.
Hi Alexander,
ReplyDeletewould you be able to share an R code?
Or send to jozef.rudy@gmail.com
Would save me a lot of time,
Kind Regards, Jozef
I don't use R, sorry.
Deleteor whatever language you use.
DeleteWill understand if you are against sharing. Would just make implementation quicker on my side.
DeleteBecause - strategy says nothing if only applied to S&P 500.
However, if could be made universal - applying to e.g. gold (has its own vol index), and other assets as well (where you calculate VIX yourself) and use the same methodology as you used, this could be a good strategy.
I use small custom research framework on Java which I'm not ready to make public.
DeleteI'll try to make the same research with ^OVX and ^GVZ, but unfortunately there's not much data there, only couple of years.
ok, so I will try to reproduce your results.
DeleteAnyway - there are public rules, how OVX, GVZ, VIX are calculated. I think these can be done on your own, so you can calculate custom indices.
The question is whether this is universal, or only works on equities - where it's long known that implied vol<realized vol most of the time.
It would save time, if you tried to calculate the results on OVX and GVZ (there are more - http://www.cboe.com/micro/volatility/introduction.aspx), and showed if it works or not. If it works - fine - it is something worth having a look at, if not, it is asset specific, and I would be reluctant to have a closer look at.
Jozef
Last time I checked OVX, GVZ futures they where not liquid enough so I gave up trying to trade them - had an idea to trade contango/backwardation.
DeleteI did not mean trade OVX, GVZ - I meant using the methodology you used here - implied vol (ovx) - realized vol to time gold, etc.
DeleteI also trade VIX contango/backwardation and am aware that OVX, GVZ futures are not liquid enough.
I've checked the same factor for OVX and GVZ. Nothing.
DeleteThis comment has been removed by the author.
ReplyDeletethat's quite a big dissapointment. So the strategy is not "universal". Therefore, I would not trade it myself.
ReplyDeleteI doubt there is some kind of universal strategy that works equally well for equities and commodities. They're just too different classes of assets.
Deletefor instance trend following is "universal".
DeleteDo you have good results with trend following on equities? My research shows equity indexes have counter-trend properties on daily timeframe last 20 years.
DeleteI mean classical CTA style trend following. for instance, using monthly timeframe to trade "everything" - e.g. 60 futures, shows quite a good results since 1980.
Delete