5. 波动率曲面套利策略:日历价差、对角价差在曲面上的应用
聊到波动率曲面套利,很多人第一反应是「这东西太复杂,不是我们散户玩的」。其实不然。我做了这么多年衍生品交易,最深的体会是:曲面上的套利机会,往往比平值期权更直观、更稳定。
今天咱们就聚焦两个最经典的曲面套利工具——日历价差和对角价差。说白了,它们都是在利用曲面不同位置的「定价偏差」来赚钱。
5.1 日历价差:赌的是「时间结构」的扭曲
日历价差,也叫时间价差。它的逻辑很简单:买入远月期权,卖出近月期权,行权价相同。
你可能会问:「两个期权行权价一样,那不就是赌波动率期限结构吗?」没错,就是这个意思。
我记得刚入行时,有个老交易员跟我说:「日历价差赚的是时间,不是方向。」当时我不太理解,后来自己跑了几次回测才明白——只要近月IV高于远月IV,这个组合天然就有正收益。
5.1.1 曲面上的日历价差信号
怎么判断该不该做日历价差?我一般看三个指标:
- 期限结构斜率:近月IV - 远月IV,差值越大,机会越好
- 曲面局部凸度:同一行权价上,近月IV是否异常凸起
- 事件日历效应:比如财报、FOMC会议前后,近月IV往往被高估
举个例子。假设VIX期货的曲面数据如下:
| 期限 | 平值IV | 25D Put IV | 25D Call IV |
|---|---|---|---|
| 近月(7天) | 22.5% | 24.1% | 21.3% |
| 次月(30天) | 19.8% | 20.5% | 19.2% |
| 远月(60天) | 18.2% | 18.9% | 17.8% |
你看,近月平值IV是22.5%,远月只有18.2%。差了4.3个点。这在VIX市场上不算极端,但已经足够引起注意了。
核心逻辑:如果近月IV被高估,卖出近月期权、买入远月期权,等待近月IV回归均值,同时远月IV保持稳定,就能赚取价差收益。
5.1.2 实战中的避坑指南
我曾经犯过一个低级错误:做日历价差时没考虑股息和利率。结果呢?近月期权到期时,因为利率变化,组合亏了钱。
嗯,这里要注意:日历价差对利率和股息非常敏感。尤其是VIX期权,它本身没有股息,但标的指数(SPX)有。如果你做的是SPX期权的日历价差,一定要把股息成本算进去。
我个人的习惯是:先算盈亏平衡点,再决定是否入场。具体公式:
盈亏平衡点 = 远月期权价格 - 近月期权价格 + 行权价差调整
说白了,就是确保你的入场成本足够低,低到即使近月IV不回归,你也能扛得住。
5.2 对角价差:曲面上的「双维度」套利
对角价差是日历价差的升级版。它不光赌时间结构,还赌偏度结构。什么意思呢?就是买入远月某个行权价的期权,卖出近月另一个行权价的期权。
你想想看,这样做的自由度就大多了。你可以:
- 赌曲面「微笑」的形状变化
- 赌偏度(Skew)的回归
- 赌期限结构与偏度的联合扭曲
5.2.1 典型的对角价差策略
我常用的一个策略叫「反向对角价差」:
- 买入:远月虚值Put(比如25D Put)
- 卖出:近月平值Put(比如ATM Put)
这个组合的逻辑是:近月平值Put的IV往往被高估(因为市场恐慌时大家抢着买保护),而远月虚值Put的IV相对合理。一旦恐慌情绪消退,近月IV暴跌,远月IV变化不大,你就赚了。
小技巧:我一般用「曲面曲率」指标来筛选机会。具体做法是:计算每个行权价上近月与远月的IV差值,然后找差值最大的那个行权价。那个点,往往就是最佳入场点。
5.2.2 代码实现:曲面上的价差信号
下面是我自己用的一个Python片段,用来扫描曲面上的日历价差和对角价差机会:
import numpy as np
import pandas as pd
def scan_calendar_spread(surface_df, threshold=2.0):
"""
surface_df: DataFrame, columns=['strike', 'near_iv', 'far_iv']
threshold: IV差值阈值(百分比)
"""
surface_df['iv_diff'] = surface_df['near_iv'] - surface_df['far_iv']
signals = surface_df[surface_df['iv_diff'] > threshold]
return signals
def scan_diagonal_spread(surface_df, skew_threshold=1.5):
"""
扫描对角价差机会
skew_threshold: 偏度差异阈值
"""
# 计算近月偏度
surface_df['near_skew'] = surface_df['near_iv'] - surface_df['atm_iv']
# 计算远月偏度
surface_df['far_skew'] = surface_df['far_iv'] - surface_df['atm_iv']
# 找偏度差异最大的行权价
surface_df['skew_diff'] = surface_df['near_skew'] - surface_df['far_skew']
best_strike = surface_df.loc[surface_df['skew_diff'].idxmax()]
return best_strike
这段代码不复杂,但很实用。我每天开盘前都会跑一遍,看看有没有明显的信号。
5.3 曲面套利的核心框架
说了这么多,咱们来总结一下。下面这张图是我自己画的,把日历价差和对角价差的逻辑串起来了:
从图上你能看到,整个框架分四层:
- 曲面输入:获取完整的IV曲面数据
- 策略选择:根据信号类型选择日历价差或对角价差
- 核心逻辑:赌期限结构或偏度结构的扭曲回归
- 风险控制:管理Gamma、Vega、利率等风险因子
重要提醒:曲面套利不是无风险套利。它赚的是「均值回归」的钱,但均值不一定回归。我见过最惨的一次,近月IV连续高估了两个月,做日历价差的账户直接爆仓。所以,仓位管理比信号本身更重要。
5.4 我的个人经验总结
做了这么多年,我总结了几条铁律:
- 别贪:曲面套利的单笔收益率通常不高,但胜率高。我一般设定年化15%-20%的目标,超过就收手。
- 别扛:如果曲面结构持续扭曲超过3天,说明市场逻辑变了,不是套利机会,是趋势。
- 别忘:每次交易前,算清楚你的最大亏损。我习惯用「最坏情景分析」——假设近月IV不回归,远月IV反而上升,你会亏多少?
嗯,今天就聊到这儿。曲面套利是个慢功夫,需要耐心和纪律。但一旦你掌握了,你会发现它比单纯赌方向要舒服得多。
公众号:蓝海资料掘金营,微信deep3321