波动率建模(三)Heston模型及其Python实现
1. 为什么需要Heston模型?
BS模型假设:波动率(volatility)是常数。然而现实金融市场中,BS模型的假设存在明显缺陷:
- 波动率是变化的:市场波动率会随时间剧烈变化(例如金融危机期间波动率飙升)。
- 波动率聚集(Volatility Clustering):高波动率倾向于跟随高波动率,低波动率跟随低波动率。
- 杠杆效应(Leverage Effect):股价下跌时,公司杠杆上升,风险增加,波动率上升。
- 波动率微笑/偏斜(Volatility Smile/Skew):用B-S模型反推的隐含波动率随行权价变化,形成“微笑”或“偏斜”曲线,这与常数波动率假设矛盾。
Heston模型通过引入随机波动率和波动率与资产价格的相关性,成功解释了这些现象。
2. Heston模型的基本设定
Heston模型的核心思想是:资产价格的波动率本身也是一个随机过程,通常用一个均值回归的随机过程(如CIR过程)来描述。
模型在风险中性测度下由以下两个随机微分方程(SDE)定义:
(1) 资产价格过程:
(2) 方差过程(波动率平方):,这个其实是CIR过程的形式。
(3) 资产价格和波动率的相关性过程:
其中:
- :标的资产在时间
的价格。
- :资产价格的瞬时方差(即波动率的平方,
)。注意:Heston模型对方差建模,而非波动率。
- :无风险利率(假设为常数)。
- :方差过程的均值回归速度(Speed of mean reversion)。值越大,方差越快回到长期均值。
- :方差过程的长期均值(Long-term variance)。
-
