从零开始学 SANOS
1/5参数化模型存在形状偏差
每个参数化模型——SVI、SABR、多项式拟合——都从选择一个公式族开始。这个公式族在您看到任何一条市场报价之前,就已决定了哪些形状是可能的。
SVI 有五个参数,即五个自由度来匹配市场微笑曲线。对于流动性好、表现规律的市场,五个通常已足够。微笑曲线平滑、大致呈抛物线形,SVI 能完美拟合。
但市场并非总是表现规律。财报事件、协议漏洞攻击、监管新闻——这些都可能在特定行权价处造成隐含波动率的局部凸起。一条五参数曲线无法在 K=90 处形成凸起而在其他位置保持平坦,它必须扭曲整条曲线来迁就一个局部特征。
SANOS 采取相反的方法。它不选择公式族,而是在网格的每个节点上放置一个值,让数据决定曲面的形状。唯一的要求是:曲面必须平滑、必须无套利,并且必须符合观测到的买价/卖价报价。
SVI 就像用一把可弯曲的模板尺去拟合一组点——尺子可以弯曲,但无法产生折角。SANOS 则像在这些点上铺一张柔性网格,每个交叉点都能独立移动。网格能捕捉尺子无法捕捉的局部特征。
用网格取代公式
在 SANOS 中,波动率曲面由节点网格定义:每个(行权价、到期日)交叉点对应一个值。9 个行权价和 5 个到期日提供 45 个自由变量;扩展到 20 个行权价和 5 个到期日则有 100 个。
每个节点存放一个总方差值(等价于一个隐含波动率)。节点之间的曲面通过插值得到。与参数化模型的关键区别在于:这些值之间没有公式相连。每个节点都是自由变量,只受无套利和平滑性约束。
下方网格展示了各行权价和到期日的隐含波动率值。注意 K=90、T=0.25 附近的局部凸起——这正是参数化模型会遗漏的特征。右侧面板展示所选到期日的微笑曲线,并叠加了 SVI 最优拟合以供对比。
点击任意单元格调整其波动率。观察 SANOS 微笑曲线(绿色)如何在网格捕捉到局部结构的位置偏离 SVI(黄色虚线)。SVI 被迫保持全局平滑;而网格可以逐点跟随数据。
SANOS: N_K × N_T nodes → local flexibility
以线性约束表达无套利
有了 100 个自由变量,就需要护栏。SANOS 通过静态无套利条件获得这些护栏,它们以网格值上的线性不等式表达。
两个关键约束:
日历价差约束。 总方差(w = σ^2 × T)在每个行权价上必须随 T 非递减。如果它递减,您可以在同一行权价卖出短期期权并买入长期期权,获得无风险利润。在网格上,这意味着每一列必须从上到下递增。
蝶式价差约束。 在每个到期日上,看涨期权价格必须对行权价呈凸性。等价地,相邻行权价之间总方差的二阶差分必须非负。这防止了负概率密度——在物理上不可能的情况。
两个约束在网格值上都是线性的。日历:w(K, T_2) ≥ w(K, T_1) for T_2 > T_1. Butterfly: w(K-1, T) - 2·w(K, T) + w(K+1, T) ≥ 0. 没有非线性项,没有复杂的耦合。只是一些您可以交给线性求解器的不等式。
这是在网格上以总方差空间工作的深层优势:在隐含波动率下呈非线性的无套利条件,在总方差下变为线性。整个曲面构建问题得以保持在线性规划的范畴内。
用线性规划求解
汇集所有要素:节点值作为未知数,买价/卖价边界作为箱式约束,无套利作为线性不等式,平滑性作为目标函数。整个问题就是一个线性规划。
LP 有一个关键性质:没有局部极小值。 可行域是一个凸多面体,最优解总是位于某个顶点。与 SVI 校准不同(后者是非线性的,可能因初始化不同而陷入局部极小值),LP 总能找到全局最优解。
买价/卖价报价定义了箱式约束:在每个观测到的行权价处,总方差必须位于买价隐含值与卖价隐含值之间。价差越窄,箱子越小。价差越宽,SANOS 就有越多自由度去寻找平滑、无套利的曲面。
观察可行域(绿色)如何随约束的加入而收缩。正性、日历、蝶式和买价/卖价——每一个约束都剔除掉不可能的曲面。LP 解(黄点)位于最终多面体的一个顶点。该顶点保证是与所有数据一致的最平滑无套利曲面。
subject to: bid_i ≤ w_i ≤ ask_i (data)
w(K, T_2) ≥ w(K, T_1) (calendar)
w(K-1) - 2w(K) + w(K+1) ≥ 0 (butterfly)
SANOS 何时占优、何时不占优
SANOS 并非在所有情况下都优于参数化模型。它有特定的适用场景,而知道何时使用它比知道它如何运作更为重要。
SANOS 占优的情形:
数据稀疏。 当您只有 5 条报价却需要完整曲面时,参数化模型会因数据点不足以确定参数而陷入困境。SANOS 能从稀疏数据构建曲面,因为无套利约束本身就提供信息——即便没有市场报价,它们也能缩小可行集。
买价/卖价价差过宽。 对中间价的参数化拟合可能产生落在买价/卖价区间之外的无套利曲面。SANOS 将价差视为特征而非噪音。价差越宽,寻找平滑、无套利曲面的自由度就越大。
局部特征。 事件驱动的波动率凸起、集中持仓造成的折角、特定到期日的效应。任何五参数公式无法表达的结构。
拉宽价差滑块,观察 SANOS 拟合(绿色)如何偏离中间价(橙色虚线)。两者都穿过买价/卖价区间条,但 SANOS 利用额外的自由度保持更平滑。价差收紧时,两条拟合曲线趋于一致。
SANOS 不占优的情形:
缺乏动态解释。 SVI 参数(a、b、rho、m、sigma)具有经济含义:整体方差、偏斜幅度、相关性、位移。SANOS 节点只是网格上的数字。您失去了说“偏斜上升了 0.02”的能力——只能说“这 20 个节点移动了”。
存储与传输。 SVI 曲面每个到期日只需 5 个数字——存储和传输都极为简单。SANOS 曲面则包含数百个节点值。对于数据库、缓存和传输协议而言,这很重要。
久经考验的记录。 SVI 已使用 20 多年,SANOS 则较新。在可靠性和团队熟悉度至关重要的生产系统中,这是一项实实在在的成本。
实践中的模式:用 SANOS 做拟合和定价(局部精度重要之处),用 SVI 做存储和传输(紧凑性重要之处)。二者相辅相成。