Description Usage Arguments Value Author(s) References See Also Examples
This function implements the point estimation of the four model-based volatility indexes described in Grover and Thomas (2012). They are: Vega weighted VIX (VVIX), Spread Weighted VIX (SVIX), Traded Volume Weighted VIX (TVVIX), and Elasticity weighted VIX (EVVIX).
1 | vix_pt(iv_near, iv_next)
|
iv_near |
A list of objects returned by ‘weighted_iv’ for the near month maturity. |
iv_next |
A list of objects returned by ‘weighted_iv’ for the next month maturity. |
vix |
Returns a numeric value/vector of the volatility index/indexes computed. |
Akhil S. Behl akhilsbehl@gmail.com;
Rohini Grover grover.rohini@gmail.com
Grover, R. and Thomas, S. (2012). “Liquidity Considerations in Estimating Implied Volatility”, Journal of Futures Market, 32, 714 - 741.
prep_maturity, weighted_iv, vix_ci, prep_vxo, vxo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | # Example 1: Compute Vega VIX using SPX options
data(vix_spx)
# Preparing data for near and next month spx options without filtering
# options with zero traded volume.
spx_near <- prep_maturity(maturity=vix_spx$opt_near$maturity[[1]],
riskfree=vix_spx$opt_near$riskfree[[1]],
carry=vix_spx$opt_near$riskfree[[1]],
type=vix_spx$opt_near$type,
strike=vix_spx$opt_near$strike,
underlying=vix_spx$opt_near$underlying,
schemes="vega",
bid=vix_spx$opt_near$bid,
ask=vix_spx$opt_near$ask,
tv_filter=FALSE)
spx_next <- prep_maturity(maturity=vix_spx$opt_next$maturity[[1]],
riskfree=vix_spx$opt_next$riskfree[[1]],
carry=vix_spx$opt_next$riskfree[[1]],
type=vix_spx$opt_next$type,
strike=vix_spx$opt_next$strike,
underlying=vix_spx$opt_next$underlying,
schemes="vega",
bid=vix_spx$opt_next$bid,
ask=vix_spx$opt_next$ask,
tv_filter=FALSE)
# Weighted average implied volatility for near and next maturity
spx_near_iv <- weighted_iv(prepped=spx_near)
spx_next_iv <- weighted_iv(prepped=spx_next)
# Point estimate of Vega VIX
spx_vvix <- vix_pt(iv_near=spx_near_iv,
iv_next=spx_next_iv)
spx_vvix
# Example 2: Compute Spread, Elasticity, and Vega VIX using NIFTY options
data(vix_nifty)
# Preparing data for near and next month nifty options and filtering options
# with zero traded volume.
nifty_near <- prep_maturity(maturity=vix_nifty$opt_near$maturity[[1]],
riskfree=vix_nifty$opt_near$riskfree[[1]],
carry=vix_nifty$opt_near$riskfree[[1]],
type=vix_nifty$opt_near$type,
strike=vix_nifty$opt_near$strike,
underlying=vix_nifty$opt_near$underlying,
schemes=c("spread", "elasticity", "vega"),
bid=vix_nifty$opt_near$bid,
ask=vix_nifty$opt_near$ask,
traded_vol=vix_nifty$opt_near$traded_vol,
tv_filter=TRUE)
nifty_next <- prep_maturity(maturity=vix_nifty$opt_next$maturity[[1]],
riskfree=vix_nifty$opt_next$riskfree[[1]],
carry=vix_nifty$opt_next$riskfree[[1]],
type=vix_nifty$opt_next$type,
strike=vix_nifty$opt_next$strike,
underlying=vix_nifty$opt_next$underlying,
schemes=c("spread", "elasticity", "vega"),
bid=vix_nifty$opt_next$bid,
ask=vix_nifty$opt_next$ask,
traded_vol=vix_nifty$opt_next$traded_vol,
tv_filter=TRUE)
# Weighted average implied volatilities
nifty_near_iv <- weighted_iv(prepped=nifty_near)
nifty_next_iv <- weighted_iv(prepped=nifty_next)
# Point estimates of VIXs
nifty_vixes <- vix_pt(iv_near=nifty_near_iv,
iv_next=nifty_next_iv)
nifty_vixes
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.