波动率曲面构建 - 验证逻辑说明
波动率曲面构建 - 验证逻辑说明
上海子午线新荣科技有限公司,猛犸期权团队
2025年3月7日
前言
波动率曲面的构造受多种因素影响,不同工具采用不同的模型,并遵循各自的市场规则。这些因素包括:
- Smile插值方式:如 cubic、linear、SVI、SABR 等,涵盖内插和外推。
- Smile插值空间:基于 strike、log-moneyness 或 delta。
- 时间插值:时间维度上的处理方式。
- 市场规则:
- ATM Convention:ATM Forward、DNS(Delta Neutral Straddle)、ATM Spot。
- Delta Convention:Forward Delta、Spot Delta。
- Premium Adjusted:是否调整期权费用(Yes/No)。
上述任一参数的不一致均可能导致构造结果的差异。
目的
本测试旨在验证我们构建的波动率曲面准确无误,符合预期要求。
证明方法
彭博系统(Bloomberg)提供了丰富的市场数据,包括原始即期价格、利率数据、远期点数据,以及以 ATM、RR(Risk Reversal)、BF(Butterfly)形式发布的波动率。此外,彭博系统具备校准功能,通过其内部模型构造波动率曲面,并输出以下结果:
- 更广泛的 Delta 点(如 5、10、15、25、35、ATM 等);
- 各 Delta 对应的 Strike;
- 各 Strike 对应的 Volatility。
我们的验证逻辑如下:
- 数据与规则一致性:
- 使用彭博提供的原始数据。
- 确保与彭博采用的 Convention(如 ATM、Delta 定义等)保持一致。
- 结果验证:
- 基于上述数据构建波动率曲面。
- 获取对应 Delta 的 Strike 和 Volatility。
- 将结果与彭博校准后的输出进行对比,确保 Strike 和 Volatility 一致。
测试与结论
我们选取了彭博系统中的两组数据进行对比验证:
- 数据日期:2025年3月5日 和 2023年6月5日。
对比结果
- 10 Delta 以内:Strike 和 Volatility 与彭博结果基本一致。
- 10 Delta以外:Strike 和 Volatility 与彭博结果略有差异。
结论
通过上述对比,我们认为:
- 我们的波动率曲面构造方法和逻辑符合行业要求。
- 结果与国际惯例(以彭博为基准)高度一致,验证了构建过程的准确性。
原始数据(彭博)
以2025年3月5日为例:
即期价格
spot 7.2605
利率曲线和远期曲线

波动率数据

波动率数据的convention
总结:
ATM Convention:DNS
Premium Adjusted
Delta Convention:Spot Delta (1年一下),Forward Delta(一年以上含一年)

波动率插值
插值方法;预设 (不确定什么插值方法)

校准后的波动率(彭博)
彭博校准后(实际上是波动率曲面计算结果)的波动率,包括了计算后的strike、更多的delta等。

我们的验证过程
构建波动率曲面
采用和彭博完全一致的市场数据和市场规则,如下:

波动率校准
按照5DPUT 10DPUT 15DPUT 25DPUT 35DPUT ATM 35DCAL 25DCAL 15DCAL 10DCAL 5DCAL、以及对应期限,生成相应的strike、volatility
Strike对比
下面是先对strike进行对比,结论:
在10D以内的strike基本保持一致,误差合计0.071 (9 x 15组数据)
10D以外的差别稍大,整个误差(包括10D以内的和以外的)合计0.382 (11 x 15组数据)
解释:彭博采用的外差方法不确定,我们的外差方式是线性插值。
1D的误差稍大
解释:彭博没有提供1D的远期价格,远期价格偏差导致计算误差稍大

Volatility对比
彭博的波动率:

MCP(猛犸)计算的波动率:

对比结论
1D的稍有差别
原始彭博数据中没有1D的远期价格
10D以内的差距较小
10D以外的差别稍明显
还是线性外差的原因
如下图1Y的来看,蓝色的(MCP计算的),是保持了线性外差 (注意:图上写错了,是1Y)

附件
- 波动率曲面构建 - 验证逻辑说明0306 - 子午线.xlsx
对于尾部波动率的优化方案(2025/3/14)
目的和现状(CUBICSPLINE + LINEREXPLORATION)
解决10D以外的数据插值或拟合问题。
根据上面的测试案例,按照之前smile curve构造(CUBICSPLINE + LINEREXPLORATION)逻辑,对比数据如下:
Strike反算结果 | 10D以内的总偏差 | 包括5D的总偏差 |
---|---|---|
0.0536 | 0.3587 | |
Volatility插值结果 | 0.49885% | 1.974% |
平均偏差 0.000168075 最大偏差 0.001819134 最小偏差 1.64778E-09 |
期望:能提高10D以外插值的准确性
优化方法和结论
经过多种方法对比(外插CUBICSPLINE、SABR+CUBICSPLINE、翼部参数化(Wing Parameterization))。我们的结论是:
- SABR+CUBICSPLINE、翼部参数化(Wing Parameterization)两种方式都能比现有方案(CUBIC+LINEAR)对尾部处理比较好
- 以翼部参数化(Wing Parameterization)这种方式效果最好,这种方式的逻辑是:设置翼比(wing ratio)”参数,这个参数通过校准或交易员市场经验设置,通过翼比来调整尾部波动率
测试结果(翼部参数化(Wing Parameterization))
Strike反算结果 | 10D以内的总偏差 | 包括5D的总偏差 |
---|---|---|
0.058 | 0.153 | |
Volatility插值结果 | 0.464543% | 1.702% |
平均偏差 0.000171078 最大偏差 0.001945885 最小偏差 1.30545E-08 |
具体测试数据
Strike对比

Volatility对比
彭博波动率

MCP(猛犸)计算的波动率:

1Y对比图

18月图

3月图
