第二十讲:曲面在奇异期权中的应用

奇异期权,说白了就是那些结构比较复杂的期权。普通欧式期权你闭着眼睛都能定价,但碰到障碍期权、亚式期权这些,光靠BS公式可不行。曲面在这里扮演的角色,比你想的要重要得多。

我个人习惯把奇异期权分成两类:一类是路径依赖型,比如亚式期权;另一类是边界依赖型,比如障碍期权。这两类对曲面的敏感度完全不同,处理手法也不一样。

障碍期权的曲面调整

先说说障碍期权。这东西有个特点——价格在障碍附近会变得特别敏感。我记得刚入行时,有个交易员问我:“为什么我的障碍期权Delta在障碍附近跳得那么厉害?”

原因很简单:障碍期权在障碍附近存在一个“奇点”。当标的价格接近障碍水平时,期权的价格行为会变得非常不稳定。这时候,如果你还用平值附近的波动率去定价,那结果肯定不准。

核心问题:障碍期权在障碍附近对波动率曲面的形状极其敏感。特别是当障碍水平处于曲面陡峭区域时,一个小小的波动率输入误差,可能导致定价偏差超过10%。

那怎么调整?我一般用三步法:

  1. 识别关键区域:找出障碍水平在曲面上的位置。是处于波动率微笑的左侧还是右侧?是处于期限结构的短期还是长期?
  2. 局部曲面重构:在障碍水平附近,对曲面进行局部插值加密。我通常会在障碍水平上下各加2-3个虚拟节点,用三次样条插值。
  3. 动态调整:随着标的价格移动,障碍的相对位置也在变。需要实时更新曲面在这个区域的形状。

实战技巧:我曾经处理过一个双障碍期权,上下两个障碍都在曲面微笑的左侧。当时我直接用标准曲面定价,结果回测发现对冲成本比预期高了15%。后来改成在障碍附近用局部波动率模型校准,效果就好多了。

亚式期权的曲面处理

亚式期权是另一种情况。它的 payoff 取决于整个路径上的平均价格,而不是终点价格。这意味着什么?意味着你需要的不是某个时间点的波动率,而是整个存续期内的波动率路径。

这里有个常见的误区:很多人直接用期初的曲面去定价亚式期权。但你想,亚式期权的平均价格是在整个期限内逐步形成的,每个时间点的权重不同。用静态曲面显然不合理。

我建议的做法是:

  • 构建波动率路径:从曲面中提取出不同期限的远期波动率,形成一条波动率路径。这条路径反映了市场对未来波动率的预期变化。
  • 加权平均处理:根据亚式期权的平均方式(算术平均还是几何平均),对波动率路径进行加权。算术平均更看重近期波动,几何平均则相对均衡。
  • 局部波动率校准:如果条件允许,用局部波动率模型替代隐含波动率曲面。局部波动率能更好地捕捉波动率随标的价格和时间的变化。

注意:亚式期权的vega分布和普通期权完全不同。普通期权的vega集中在到期日附近,而亚式期权的vega分散在整个存续期内。这意味着你对冲波动率风险的方式也要调整。

曲面调整的具体技巧

说了这么多理论,来点实际的。我总结了几条曲面调整的实用技巧:

调整场景 问题描述 调整方法
障碍水平在微笑左侧 波动率被低估 在障碍水平处增加一个局部波动率凸点
障碍水平在微笑右侧 波动率被高估 平滑处理,避免过度外推
亚式期权长期限 远期波动率不确定 用期限结构的前端数据约束后端
亚式期权短期限 平均路径短,波动敏感 增加采样频率,细化曲面网格

嗯,这里要注意一点:调整曲面不是越复杂越好。有时候加太多参数反而会过拟合。我见过有人给障碍期权加了5个调整参数,结果回测效果还不如简单的线性调整。

一个实际案例

说个我自己的经历。有一次做市一个向下敲出的看跌期权,障碍水平在90%的位置。当时曲面在90%附近有个明显的微笑凸起,我直接用标准曲面定价,报了个价出去。

结果对方秒接。我当时就觉得不对劲——太容易成交了。后来一算,原来曲面凸起导致障碍附近的波动率被高估了3个vol,我的报价比合理价格低了将近8%。

从那以后,我养成了一个习惯:对于障碍期权,一定要在障碍水平附近做局部波动率分析。具体做法是:

# 伪代码示例:障碍期权曲面调整
def adjust_surface_for_barrier(surface, barrier_level, spot):
    # 1. 找到障碍在曲面上的位置
    barrier_moneyness = barrier_level / spot
    
    # 2. 在障碍附近加密采样点
    local_points = generate_local_points(barrier_moneyness, num_points=5)
    
    # 3. 用三次样条插值重构局部曲面
    local_surface = cubic_spline_interp(surface, local_points)
    
    # 4. 计算调整后的波动率
    adjusted_vol = local_surface.get_vol(barrier_moneyness, time_to_expiry)
    
    return adjusted_vol

这个逻辑其实很简单,但效果很明显。后来我把这个逻辑写进了我们的定价引擎,成了标准流程的一部分。

曲面调整的边界条件

最后说一个容易被忽略的点:边界条件。奇异期权对曲面在极端行权价处的行为特别敏感。比如深度虚值的障碍期权,它的价格几乎完全取决于曲面尾部的形状。

我建议的做法是:

  • 对于障碍期权,确保曲面在障碍水平之外至少还有2-3个标准差的延伸
  • 对于亚式期权,确保期限结构在到期日之后还有合理的延伸
  • 定期检查曲面外推部分的合理性,避免出现负波动率或波动率爆炸

避坑指南:我曾经因为曲面外推参数设置不当,导致一个深度虚值障碍期权的定价出现了负vega。排查了半天才发现是外推函数在极端位置产生了振荡。后来改用单调三次样条插值,问题就解决了。

说白了,奇异期权的曲面调整,核心就是一句话:在关键区域做精细处理,在其他区域保持稳定。不要试图用一个全局模型解决所有问题,局部调整往往更有效。

奇异期权曲面调整流程 原始波动率曲面 障碍期权 亚式期权 识别障碍水平位置 局部曲面加密 动态调整 构建波动率路径 加权平均处理 局部波动率校准 调整后曲面 障碍期权路径 亚式期权路径

这张图展示了奇异期权曲面调整的核心流程。从原始曲面出发,根据期权类型选择不同的处理路径,最终汇聚到调整后的曲面。记住,关键不在于流程有多复杂,而在于每个环节是否真正解决了实际问题。

公众号:蓝海资料掘金营,微信deep3321