目录
参考资料
数据、代码:GitHub - Alexdachen/ivix: 中国波指的计算
阅读文章:小C:VIX指数的来龙去脉和iVIX的计算方法 - 知乎
数据的介绍:vixDate是计算当日的日期
VIX介绍
VIX计算的是未来30天的加权波动率
总公式
总公式如上图所示,可以看出有2个未知变量T、σ:
T1:VixDate到近月合约到期日之间的时间间隔
T2:VixDate到次近月合约到期日之间的时间间隔
σ1:近月合约贡献的波动率
σ2:次近月合约贡献的波动率
时间间隔T
- 使用EXE_ENDDATE筛选找到近月和次近月合约
- 计算VixDate与合约到期日之间的时间间隔T
波动率σ
未知变量:远期价格F、
:筛选出近月合约和次近月合约后,分别使用这2个月份的数据,计算每个月份下每个执行价格下的看涨期权的价格和看跌期权之间的价格差,选择价格差最小的那个期权的执行价格和看涨期权价格和看跌期权价格来计算远期价格,计算公式如下所示:
:选择离F最近且小于F的期权执行价,找到K0后再进行一次数据筛选,选择执行价格小于K0的看跌期权,选择执行价格大于K0的看涨期权
:区分好近月和次近月合约后,筛选好用于计算的期权数据后,数据按照看涨或者看跌类型排序,这个指标表示执行价格为Ki的期权的上一个期权执行价格与下一个期权执行价格之间的间隔的二分之一,如果这个价格是最高的执行价格或者最低的执行价格,这个指标取执行价Ki和临近执行价的均值。
表示执行价格为Ki的期权价格
R:无风险利率,使用插值法获得。
代码复现
导入库
from datetime import datetime
import numpy as np
import pandas as pd
from scipy.interpolate import make_interp_spline #原代码中的spline已经不兼容了,代码会报错