Tuesday, August 20, 2013

Guest Post: A qualitative review of VIX F&O pricing and hedging models

By Azouz Gmach

VIX Futures & Options are one of the most actively traded index derivatives series on the Chicago Board Options Exchange (CBOE). These derivatives are written on S&P 500 volatility index and their popularity has made volatility a widely accepted asset class for trading, diversifying and hedging instrument since their launch. VIX Futures started trading on March 26th, 2004 on CFE (CBOE Future Exchange) and VIX Options were introduced on Feb 24th, 2006.


VIX Futures & Options

VIX (Volatility Index) or the ‘Fear Index’ is based on the S&P 500 options volatility. Spot VIX can be defined as square root of 30 day variance swap of S&P 500 index (SPX) or in simple terms it is the 30-day average implied volatility of S&P 500 index options. The VIX F&O are based on this spot VIX and is similar to the equity indexes in general modus operandi. But structurally they have far more differences than similarities. While, in case of equity indices (for example SPX), the index is a weighted average of the components, in case of the VIX it is sum of squares of the components. This non-linear relationship makes the spot VIX non-tradable but at the same time the derivatives of spot VIX are tradable. This can be better understood with the analogy of Interest Rate Derivatives. The derivatives based on the interest rates are traded worldwide but the underlying asset: interest rate itself cannot be traded.

The different relation between the VIX derivatives and the underlying VIX makes it unique in the sense that the overall behavior of the instruments and their pricing is quite different from the equity index derivatives. This also makes the pricing of VIX F&O a complicated process. A proper statistical approach incorporating the various aspects like the strength of trend, mean reversion and volatility etc. is needed for modeling the pricing and behavior of VIX derivatives.


Research on Pricing Models

There has been a lot of research in deriving models for the VIX F&O pricing based on different approaches. These models have their own merits and demerits and it becomes a tough decision to decide on the most optimum model. In this regards, I find the work of Mr. Qunfang Bao titled ‘Mean-Reverting Logarithmic Modeling of VIX’ quite interesting. In his research, Bao not only revisits the existing models and work by other prominent researchers but also comes out with suggestive models after a careful observation of the limitations of the already proposed models. The basic thesis of Bao’s work involves mean-reverting logarithmic dynamics as an essential aspect of Spot VIX.

VIX F&O contracts don’t necessarily track the underlying in the same way in which equity futures track their indices. VIX Futures have a dynamic relationship with the VIX index and do not exactly follow its index. This correlation is weaker and evolves over time. Close to expiration, the correlation improves and the futures might move in sync with the index. On the other hand VIX Options are more related to the futures and can be priced off the VIX futures in a much better way than the VIX index itself.


Pricing Models

As a volatility index, VIX shares the properties of mean reversion, large upward jumps & stochastic volatility (aka stochastic vol-of-vol). A good model is expected to take into consideration, most of these factors.

There are roughly two categories of approaches for VIX modeling. One is the Consistent approach and the other being Standalone approach.

        I.            Consistent Approach: - This is the pure diffusion model wherein the inherent relationship between S&P 500 & VIX is used in deriving the expression for spot VIX which by definition is square root of forward realized variance of SPX.

      II.            Standalone Approach: - In this approach, the VIX dynamics are directly specified and thus the VIX derivatives can be priced in a much simpler way. This approach only focuses on pricing derivatives written on VIX index without considering SPX option.
Bao in his paper mentions that the standalone approach is comparatively better and simpler than the consistent approach.


MRLR model

The most widely proposed model under the standalone approach is MRLR (Mean Reverting Logarithmic Model) model which assumes that the spot VIX follows a Geometric Brownian motion process. The MRLR model fits well for VIX Future pricing but appears to be unsuited for the VIX Options pricing because of the fact that this model generates no skew for VIX option. In contrast, this model is a good model for VIX futures.


MRLRJ model

Since the MRLR model is unable to produce implied volatility skew for VIX options, Bao further tries to modify the MRLR model by adding jump into the mean reverting logarithmic dynamics obtaining the Mean Reverting Logarithmic Jump Model (MRLRJ). By adding upward jump into spot VIX, this model is able to capture the positive skew observed in VIX options market.


MRLRSV model

Another way in which the implied volatility skew can be produced for VIX Options is by including stochastic volatility into the spot VIX dynamics. This model of Mean Reverting Logarithmic model with stochastic volatility (MRLRSV) is based on the aforesaid process of skew appropriation.
Both, MRLRJ and MRLRSV models perform equally well in appropriating positive skew observed in case of VIX options.


MRLRSVJ model

Bao further combines the MRLRJ and MRLRSV models together to form MRLRSVJ model. He mentions that this combined model becomes somewhat complicated and in return adds little value to the MRLRJ or MRLRSV models. Also extra parameters are needed to be estimated in case of MRLRSVJ model.

MRLRJ & MRLRSV models serve better than the other models that have been proposed for pricing the VIX F&O. Bao in his paper, additionally derives and calibrates the mathematical expressions for the models he proposes and derives the hedging strategies based on these models as well. Quantifying the Volatility skew has been an active area of interest for researchers and this research paper addresses the same in a very scientific way, keeping in view the convexity adjustments, future correlation and numerical analysis of the models etc. While further validation and back testing of the models may be required, but Bao’s work definitely answers a lot of anomalous features of the VIX and its derivatives.

---
Azouz Gmach works for QuantShare, a technical/fundamental analysis software.

===
My online Mean Reversion Strategies workshop will be offered in September. Please visit epchan.com/my-workshops for registration details.

Also, I will be teaching a new course Millisecond Frequency Trading (MFT) in London this October.

-Ernie

20 comments:

  1. Azouz Gmach,

    Hi, nice post. Interesting read. I did have a quick look at QuantShare but must admit to being confused. What is the pricing model, I doubt you provide all those features without any kind of interest in monetizing it. (Too old to believe in Santa). I also have difficulties finding any information about "Corporate Trading" that is behind the software.

    Don't get me wrong, the service looks good, I'll create a test account to have a closer look, but the information I am missing sets of alarm bells.

    However, thanks for the article anyhow.

    ReplyDelete
  2. Hi Ernie,

    If I have ten years of historical data for optimization and two variables for a simple interdays trading system, do these steps make sense:
    1. Do the optimization with 10 years of data, find the best 2 variables values with the highest Sharpe ratio. I would also look at the results with good sharpe ratio to see if the highest one looks like lucky or that closed range of variables can provide similar high sharpe ratio.
    2. Do a walk forwarding test with the variable I got from step 1 to do 1 year in simple then next year out of sample, then I get 10 results. I eyeball to see if most of the result confirm with the answer I got from step 1, and see if there are many years with result very different from the answer from step 1. If there are few years that are very different from the answer I got from step 1, then I doubt the creditability.
    3. Look at a 3D graph of result from step 1 with variable 1 being x axis and variable 2 being y axis, check and see if the result of step 1 has good "flat area" around the answer of step 1. "flat area" is to confirm the variables I got from step 1 are not by luck and that range has good predictive power.
    4. If there is a flat area and the answer in step 1 is not at the middle area of the flat area but it is at the edge of the flat area, I may choose a point at the middle of the "flat area" instead using the best answer in step 1 in order to have a more stable predictive result. Then I will repeat step 1 to 4 with this points at the middle of flat area.

    -HK

    ReplyDelete
  3. Hi HK,
    If you have 10 years of data, and you want to generate optimized backtest results starting with the 2nd year, you should optimize parameters with the 1st year of data and start your backtest.

    Thereafter, you can add an extra day to your in-sample data to re-optimize your data, and generate backtest trades for the next day.

    Ernie

    ReplyDelete
  4. Hi,

    QuantShare pricing can be found here:
    http://www.quantshare.com/index.php?option=quantshare&add=

    It is normally visible only after you set up a trial account, but I gave you the direct link.
    The company behind it is a small company. We started implementing the software several years ago (+7) and began selling it just 2 years ago.

    ReplyDelete
  5. Hi Ernie,

    I a currently working with one-minute data, programming in Matlab. However, I would like to go to tick data. Is Matlab feasible for backtesting with tick data, all the way down to milliseconds? Especially, can Matlab be used for including adding/subtracting liquidity in the backtest. Or do I have to change language to backtest millisecond data?

    Thanks

    ReplyDelete
  6. Hi Anon,
    Sure, Matlab can backtest tick data and even order book data. But you do have to backtest small segment at a time due to memory constraints.
    Ernie

    ReplyDelete
  7. How do you do that? Simply split a very large csv file with tick data and order book data into smaller files and loop over them?

    ReplyDelete
  8. Anon,
    Yes, you can read in a small number of lines at a time in a loop and run your model on those.
    Ernie

    ReplyDelete
  9. Hi Ernie,

    I am trying to find a better way of executing my order rather than limit or market orders.

    Have you tried IBalgo or CFSB algo at IB? What's your experience?

    Other ways of improving execution?

    ReplyDelete
  10. Hi Anon,
    Is your order size much bigger than the typical bid-ask size? If so, it is reasonable to try these algos. I myself have never executed such orders on IB. We did that through Lime.
    Ernie

    ReplyDelete
  11. Hi Ernie,

    I am trying to find a better way of executing my order rather than limit or market orders.

    Have you tried IBalgo or CFSB algo at IB? What's your experience?

    Other ways of improving execution?

    ReplyDelete
  12. Ernie,

    Thanks for your reply regarding algos.

    How do I best avoid getting screwed by HFT algos when executing my trades? I've been using relative orders which are continously pegged to NBBO (possibly with some offset) but I just read that HFTs track those orders and can exploit them.

    What would you recommend in terms of order types? I typically trade close to the close.

    ReplyDelete
  13. Hi Anon,
    If you trade close to close, why not use LOC or MOC orders? These cannot be gamed since they participate in an auction with lots of volume.

    If you have to execute intraday, I recommend IOC orders, which will not interact with any HFT orders.

    Ernie

    ReplyDelete
    Replies
    1. My problem with LOC or MOC is that they need to be input at latest 345 or 350 as you know. So the signal and weights are determined way before the price you get. Prices even in the most liquid names can move substantially in the last 5 min.

      Thanks a lot for your fast replies. I really appreciate it.

      Delete
  14. Hi Ernie,

    I have a question about cointegration at different time scale. I found a pair of instruments that does cointegrate in the past year if I use day close price. If I want to do intraday mean reversion trading, do I have to perform cointegration tests again at intraday level?

    Thanks
    Paul

    ReplyDelete
  15. Hi Paul,
    If you wish to perform cointegration test over intraday data, assuming you are always flat at the close, then you need to concatenate all intraday prices data together into one time series, and "backadjust" the prices to remove the overnight gap. This process is similar to the backadjustment of futures prices to form a continuous price series.
    Ernie

    ReplyDelete
  16. Thanks Ernie

    I have been reading your 2nd book.
    One more question about determining a mean reversion strategy breakdown. How should we decide whether a strategy starts failing to work? Intuitively I can use a moving window and check whether johensen test yields an eigenvector. Is there any other methods?

    ReplyDelete
  17. Hi Paul,
    Yes, checking for cointegration over a moving window is one method. Checking the drawdown and comparing it to the historical maximum is another.
    Ernie

    ReplyDelete
  18. Hi Ernie,

    What is the industry standard for computing Sharpe ratios? Daily, monthly, or annual returns?

    Even when annualized, the frequency of returns matter since returns are not i.i.d.

    Thanks

    ReplyDelete
  19. Hi Anon,
    The Sharpe ratio reported on fund prospectuses is computed based on monthly returns.
    However, internal backtests or academic papers typically use daily returns.
    Ernie

    ReplyDelete