第32章 Heath, Jarrow 和 Morton 模型#
在 1990 年, David Heath, Bob Jarrow 和 Andy Morton (HJM) 发表了一篇重要文章, 文章描述了一种收益率曲线模型必须满足的无套利条件。为了描述他们的模型, 我们使用如下记号:
$P(t,T)$ :本金为1美元,在时间T到期的零息债券在时间t时的价格。
$\Omega_{t}$ :该向量是用来确定时间 t 时与波动率相关的过去和现在的利率与债券价格。
$v(t,T,\Omega_{t}):P(t,T)$ 的波动率。
$f(t,T_{1},T_{2})$ :在时间 t 观察的用于时间 $T_{1}$ 与 $T_{2}$ 之间的远期利率。
$F(t,T)$ :在时间 t 观察的适用于时间 T 到期合约的瞬时远期利率。
$r(t)$ :时间 t 的短期无风险利率。
$dz(t)$ :驱动期限结构移动的维纳过程。
零息债券价格和远期利率过程#
我们首先假设只有一个因子,并且采用传统风险中性世界来进行分析。由于零息债券是一个不提供收入的可交易债券,在传统风险中性世界里,它的收益率为 $r$ 。这意味着描述零息债券的随机过程有如下形式
$$ \mathrm{d}P (t, T) = r (t) P (t, T) \mathrm{d}t + v (t, T, \Omega_{t}) P (t, T) \mathrm{d}z (t)\tag{32-1} $$如变元 $\Omega_{t}$ 所示,在模型的最一般形式下,零息债券的波动率可以是过去和现在利率与债券价格的函数(只要函数具有某些性质)。由于债券价格波动率在到期日下降为 0,我们必须有
$$ v (t, t, \Omega_{t}) = 0 $$由式(4-5)得出,远期利率 $f(t,T_{1},T_{2})$ 与债券价格满足以下关系式
$$ f (t, T_{1}, T_{2}) = \frac{\ln [ P (t , T_{1}) ] - \ln [ P (t , T_{2}) ]}{T_{2} - T_{1}}\tag{32-2} $$由式(32-1)和伊藤引理得出
$$ \mathrm{d}\ln [ P (t, T_{1}) ] = [ r (t) - \frac{v (t , T_{1} , \Omega_{t}) ^{2}}{2} ] \mathrm{d}t + v (t, T_{1}, \Omega_{t}) \mathrm{d}z (t) $$和
$$ \mathrm{d}\ln [ P (t, T_{2}) ] = [ r (t) - \frac{v (t , T_{2} , \Omega_{t}) ^{2}}{2} ] \mathrm{d}t + v (t, T_{2}, \Omega_{t}) \mathrm{d}z (t) $$因此由式(32-2)
$$ \mathrm{d}f (t, T_{1}, T_{2}) = \frac{v (t , T_{2} , \Omega_{t}) ^{2} - v (t , T_{1} , \Omega_{t}) ^{2}}{T_{2} - T_{1}} \mathrm{d}t + \frac{v (t , T_{1} , \Omega_{t}) - v (t , T_{2} , \Omega_{t})}{T_{2} - T_{1}} \mathrm{d}z (t)\tag{32-3} $$式(32-3)说明, $f$ 的风险中性过程只依赖于 $v$ ,它对于 $r$ 和 $P$ 的依赖性仅仅是因为 $v$ 本身依赖于这些变量。
在式(32-3)中,令 $T_{1} = T$ 和 $T_{2} = T + \Delta T$ ,然后取 $\Delta T$ 趋于0时的极限,这时 $f(t,T_1,T_2)$ 变为 $F(t,T)$ , $\mathrm{dz}(t)$ 的系数变为 $-v_{T}(t,T,\Omega_{t})$ ,而 $\mathrm{dt}$ 的系数变为
$$ \frac{1}{2} \frac{\partial [ v (t , T , \Omega_{t}) ^{2} ]}{\partial T} = v (t, T, \Omega_{t}) v_{T} (t, T, \Omega_{t}) $$其中 $v$ 的下标表示偏导数,于是
$$ \mathrm{d}F (t, T) = v (t, T, \Omega_{t}) v_{T} (t, T, \Omega_{t}) \mathrm{d}t - v_{T} (t, T, \Omega_{t}) \mathrm{d}z (t)\tag{32-4} $$一旦给出了函数 $v(t,T,\Omega_{t})$ , $\mathrm{d}F(t,T)$ 的风险中性过程即为已知。
式(32-4)说明在瞬时远期利率的漂移率与标准差之间存在一种关系,这一点正是HJM模型的关键所在。从 $\tau = t$ 到 $\tau = T$ 对 $v_{\tau}(t, T)$ 进行积分,我们得出
$$ v (t, T, \Omega_{t}) - v (t, t, \Omega_{t}) = \int_{t} ^{T} v_{\tau} (t, \tau , \Omega_{t}) \mathrm{d}\tau $$因为 $v(t,t,\Omega_{t})=0$ ,以上方程变为
$$ v (t, T, \Omega_{t}) = \int_{t} ^{T} v_{\tau} (t, \tau , \Omega_{t}) \mathrm{d}\tau $$如果 $m(t, T, \Omega_t)$ 和 $s(t, T, \Omega_t)$ 分别为 $F(t, T)$ 的瞬时漂移率和标准差, $F(t, T)$ 满足
$$ \mathrm{d}F (t, T) = m (t, T, \Omega_{t}) \mathrm{d}t + s (t, T, \Omega_{t}) \mathrm{d}z (t) $$那么由式(32-4)得出
$$ m (t, T, \Omega_{t}) = s (t, T, \Omega_{t}) \int_{t} ^{T} s (t, \tau , \Omega_{t}) \mathrm{d}\tau\tag{32-5} $$这就是 HJM 的结果。
在一般的HJM模型下, 短期利率 $r$ 的过程为非马尔科夫过程。这说明 $r$ 在将来时刻 $t$ 的分布既依赖于 $r$ 在时间 $t$ 的值, 也依赖于 $r$ 在现在与时间 $t$ 之间的路径。 $^{①}$ 这一点正是在实现一般HJM模型时的困难所在, 所以不得不采用蒙特卡罗模拟法。利用树形结构时会有很多问题, 因为当我们利用树形结构来表示期限结构移动时, 树形的分叉呈不重合的形状。假设模型只含有一个因子, 树形为图32-1所示的二叉树, 那么在 $n$ 步后将有 $2^{n}$ 个节点 (当 $n = 30$ 时, $2^{n}$ 大约为10亿)。
图32-1 一般 HJM 模型中产生的非重合树形
由式(32-4)所表达的HJM模型貌似简单,其实却非常复杂。在大多应用中某个特定的远期利率 $F(t,T)$ 是个马尔科夫过程,并且我们可以用一个重合树形来描述,但这一树形却不能用于所有的远期利率。如果取 $s(t, T, \Omega_z)$ 为常数 $\sigma$ ,我们将会得到 Ho-Lee 模型(见练习题 32.3)。当取 $S(t, T, \Omega_t) = \sigma e^{-a(T - t)}$ 时,我们将会得到 Hull-White 模型(见练习题 32.4)。这些都是 HJM 模型为马尔科夫过程的例子,而且在这些例子中短期利率 $r$ 与所有远期利率均可由同一个树形来表示。
延伸到多因子模型#
HJM 的结果可以被推广到存在多个相互独立因子的情形。假设
$$ \mathrm{d}F (t, T) = m (t, T, \Omega_{t}) \mathrm{d}t + \sum_{k} s_{k} (t, T, \Omega_{t}) \mathrm{d}z_{k} (t)
$$
利用与前面类似的分析(见练习题32.2),我们可以得出
$$ m (t, T, \Omega_{t}) = \sum_{k} s_{k} (t, T, \Omega_{t}) \int_{t} ^{T} s_{k} (t, \tau , \Omega_{t}) d \tau\tag{32-6} $$32.2 LIBOR 市场模型#
HJM 模型的一个缺陷是它由瞬时远期利率来表示的,而这些利率并不能直接在市场上观测到。另一个缺陷是很难利用在市场上交易活跃的产品来校正模型,这使得 Brace、Gatarek 和 Musiela(BGM),Jamshidian,Miltersen、Sandmann 和 Sondermann 提出了新的模型。这个模型被称为 LIBOR 市场模型(LIBOR Market Model,LMM),或 BGM 模型(BGM model),该模型是针对交易员使用的远期利率而建立的。
32.2.1 模型#
定义 $t_0 = 0$ ,并设 $t_1, t_2, \cdots$ 为目前在市场上交易的上限重置时间。在美国,最流行的上限是按季度重置的,因此 $t_1 = 0.25, t_2 = 0.5, t_3 = 0.75$ ,等等。定义 $\delta_k = t_{k+1} - t_k$ ,以及 $F_{k}(t)$ :时间 t 所观察的在时间 $t_{k}$ 与 $t_{k+1}$ 之间按 $\delta_{k}$ 时间段复利的远期利率,这里 $\delta_{k}$ 以 “实际天数/实际天数”(actual/actual)计天惯例来表示; $m(t)$ :对应于时间 t 的下一个重置日,这意味着 $m(t)$ 是使得 $t \leqslant t_{m(t)}$ 的最小整数; $\zeta_{k}(t): F_{k}(t)$ 在时间 t 的波动率。 我们首先假设只有一个因子。如28.4节所示,在一个对 $P(t, t_{k+1})$ 为远期风险中性的世界里, $F_k(t)$ 是一个鞅,并且服从以下过程
$$ \mathrm{d}F_{k} (t) = \zeta_{k} (t) F_{k} (t) \mathrm{d}z\tag{32-7} $$其中 dz 为维纳过程。
债券价格 $P(t, t_{k+1})$ 的过程具有如下形式
$$ \frac{\mathrm{d}P (t , t_{k})}{P (t , t_{k})} = \dots + v_{k} (t) \mathrm{d}z $$因为债券价格与利率之间有负相关性, $v_{k}(t)$ 为负值。
在实际中,给利率期权定价最方便的方式是考虑对某个债券为远期风险中性的世界,这个债券总是等于在下一个重置日到期的零息债券。我们将这个世界称为滚延远期风险中性世界(rolling forward risk-neutral world)。 $^{①}$ 在这个世界里,我们对时间 $t_{k+1}$ 到 $t_{k}$ 之间的贴现是利用在 $t_{k}$ 所观察到的以 $t_{k+1}$ 为期限的零息利率。在定价过程中,我们不需要考虑在时间 $t_{k}$ 与 $t_{k+1}$ 之间的利率会如何变化。
在时间 $t$ ,滚延远期风险中性世界是关于债券价格 $P(t, t_{m(t)})$ 为远期风险中性的。在式(32-7)里 $F_{k}(t)$ 所遵循的过程是处在对 $P(t, t_{k+1})$ 为远期风险中性的世界里。由28.8节的结论,我们可以得出 $F_{k}(t)$ 在滚延远期风险中性世界里所遵循的过程为
$$ \mathrm{d}F_{k} (t) = \zeta_{k} (t) [ v_{m (t)} (t) - v_{k + 1} (t) ] F_{k} (t) \mathrm{d}t + \zeta_{k} (t) F_{k} (t) \mathrm{d}z\tag{32-8} $$远期利率与债券价格之间的关系式为
$$ \frac{P (t , t_{i})}{P (t , t_{i + 1})} = 1 + \delta_{i} F_{i} (t) $$或
$$ \ln P (t, t_{i}) - \ln P (t, t_{i + 1}) = \ln [ 1 + \delta_{i} F_{i} (t) ] $$利用伊藤引理, 我们可以计算以上方程左端和右端所服从的过程, 然后比较 $\mathrm{dz}$ 的系数得出
$$ v_{i} (t) - v_{i + 1} (t) = \frac{\delta_{i} F_{i} (t) \zeta_{i} (t)}{1 + \delta_{i} F_{i} (t)}\tag{32-9} $$因此由式(32-8)可以得出, $F_{k}(t)$ 在滚延远期风险中性世界里的过程为
$$ \frac{\mathrm{d}F_{k} (t)}{F_{k} (t)} = \sum_{i = m (t)} ^{k} \frac{\delta_{i} F_{i} (t) \zeta_{i} (t) \zeta_{k} (t)}{1 + \delta_{i} F_{i} (t)} \mathrm{d}t + \zeta_{k} (t) \mathrm{d}z\tag{32-10} $$由式(32-4)给出的HJM结果是以上表达式当 $\delta_{i}$ 趋向于零时的极限情形(见练习题32.7)。
32.2.2 远期利率波动率#
我们现在将模型进行简化,假设 $\zeta_{k}(t)$ 仅是介于 $t$ 之后的第一个重置日与时间 $t_{k}$ 之间完整累计区间数目的函数,当其中有 $i$ 个这样的区间时,定义 $\Lambda_{i}$ 为 $\zeta_{k}(t)$ 的值,因此 $\zeta_{k}(t) = \Lambda_{k - m(t)}$ 是一个阶梯函数。 这些 $\Lambda_{i}$ 参数(至少在理论上)可以由布莱克模型里对于上限单元定价的波动率来进行估计(也就是图29-3 中的即时波动率)。 $^{③}$ 假设 $\sigma_{k}$ 为对应于时间 $t_{k}$ 到 $t_{k+1}$ 之间区间上限单元的布莱克波动率。比较方差项,我们可以得出
$$ \sigma_{k} ^{2} t_{k} = \sum_{i = 1} ^{k} \Lambda_{k - i} ^{2} \delta_{i - 1}\tag{32-11} $$我们可以利用以上方程以递推的形式求得所有的 $\Lambda$ 。
假设 $\delta_{i}$ 都相等,前3个上限单元的即时波动率分别为 $24\%$ , $22\%$ 和 $20\%$ ,这意味着 $\Lambda_0 =$
24%,因为
$$ \Lambda_{0} ^{2} + \Lambda_{1} ^{2} = 2 \times 0.22^{2} $$由此得出, $\Lambda_{1}$ 为 $19.80\%$ ,又因为
$$ \Lambda_{0} ^{2} + \Lambda_{1} ^{2} + \Lambda_{2} ^{2} = 3 \times 0.20^{2} $$$\Lambda_{2}$ 为 $15.23\%$ 。
考虑表 32-1 中上限单元波动率 $\sigma_{k}$ 的数据。这些数据呈现出我们在 29.3 节讨论过的驼峰状态。 $\Lambda$ 的值显示在第 2 行。注意, $\Lambda$ 呈现比 $\sigma$ 更为明显的驼峰形状。
表 32-1 波动率数据;累计区间为 1 年
| 年,k: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| $\sigma_k(\%)$ : | 15.50 | 18.25 | 17.91 | 17.74 | 17.27 | 16.79 | 16.30 | 16.01 | 15.76 | 15.54 |
| $\Lambda_{k-1}(\%)$ : | 15.50 | 20.64 | 17.21 | 17.22 | 15.25 | 14.15 | 12.98 | 13.81 | 13.60 | 13.40 |
32.2.3 模型的实现#
LIBOR 市场模型可以用蒙特卡罗模拟来实现。将式(32-10)以 $\Lambda_{i}$ 表达
$$ \frac{\mathrm{d}F_{k} (t)}{F_{k} (t)} = \sum_{i = m (t)} ^{k} \frac{\delta_{i} F_{i} (t) \Lambda_{i - m (t)} \Lambda_{k - m (t)}}{1 + \delta_{i} F_{i} (t)} \mathrm{d}t + \Lambda_{k - m (t)} \mathrm{d}z\tag{32-12} $$利用伊藤引理
$$ \mathrm{d}\ln F_{k} (t) = \left[ \sum_{i = m (t)} ^{k} \frac{\delta_{i} F_{i} (t) \Lambda_{i - m (t)} \Lambda_{k - m (t)}}{1 + \delta_{i} F_{i} (t)} - \frac{\left(\Lambda_{k - m (t)}\right) ^{2}}{2} \right] \mathrm{d}t + \Lambda_{k - m (t)} \mathrm{d}z\tag{32-13} $$作为近似,在计算 $\ln F_{k}(t)$ 的漂移项时,我们假定对于 $t_j < t < t_{j+1}$ , $F_{i}(t) = F_{i}(t_{j})$ ,这时
$$ F_{k} \left(t_{j + 1}\right) = F_{k} \left(t_{j}\right) \exp \left[ \left(\sum_{i = j + 1} ^{k} \frac{\delta_{i} F_{i} \left(t_{j}\right) \Lambda_{i - j - 1} \Lambda_{k - j - 1}}{1 + \delta_{i} F_{i} \left(t_{j}\right)} - \frac{\Lambda_{k - j - 1} ^{2}}{2}\right) \delta_{j} + \Lambda_{k - j - 1} \varepsilon \sqrt{\delta_{j}} \right]\tag{32-14} $$其中 $\varepsilon$ 是均值为 0 、标准差为 1 的正态分布随机样本。在蒙特卡罗模拟中, 这个方程可以用来由在时间 0 的远期利率来计算 $t_1$ 的远期利率, 然后再用来计算 $t_2$ 的远期利率, 等等。
32.2.4 多因子情形下的推广#
LIBOR 模型可以被推广到包含多个因子的情形。假设共有 $p$ 个因子, $\zeta_{k,q}$ 表示 $F_{k}(t)$ 的波动率中来源于第 $q$ 个因子的部分。式(32-10)可以被表达为(见练习题32.11)
$$ \frac{\mathrm{d}F_{k} (t)}{F_{k} (t)} = \sum_{i = m (t)} ^{k} \frac{\delta_{i} F_{i} (t) \sum_{q = 1} ^{p} \zeta_{i , q} (t) \zeta_{k , q} (t)}{1 + \delta_{i} F_{i} (t)} \mathrm{d}t + \sum_{q = 1} ^{p} \zeta_{k, q} (t) \mathrm{d}z_{q}\tag{32-15} $$当从下一个重置日到远期合约到期日之间总共有 $i$ 个累计区间时,定义 $\lambda_{i,q}$ 为波动率中的第 $q$ 个部分,式(32-14)变为
$$ F_{k} \left(t_{j + 1}\right) = F_{k} \left(t_{j}\right) \exp \left[ \left(\sum_{i = j + 1} ^{k} \frac{\delta_{i} F_{i} \left(t_{j}\right) \sum_{q = 1} ^{p} \lambda_{i - j - 1 , q} \lambda_{k - j - 1 , q}}{1 + \delta_{i} F_{i} \left(t_{j}\right)} - \frac{\sum_{q = 1} ^{p} \lambda_{k - j - 1 , q} ^{2}}{2}\right) \delta_{j} + \sum_{q = 1} ^{p} \lambda_{k - j - 1, q} \varepsilon_{q} \sqrt{\delta_{j}} \right]\tag{32-16} $$其中 $\varepsilon_{q}$ 是均值为 0、标准差为 1 的正态分布随机样本。
当假设远期利率的漂移率在每个累计区间上为常数时,在进行模拟中我们可以从一个重置日跳到下一个重置日。这是一个很方便的假设,因为我们已经提到过,滚延远期风险中性世界使得我们可以从一个重置日贴现到下一个重置日。假设我们想模拟一条具有 N 个累计区间的零息曲线,在每次实验中,我们从时间 0 的远期利率开始,这些是由初始零息曲线计算出的利率 $F_{0}(0)$ , $F_{1}(0)$ ,…, $F_{N-1}(0)$ 。利用式(32-16)可以计算出 $F_{1}(t_{1})$ , $F_{2}(t_{1})$ ,…, $F_{N-1}(t_{1})$ ,然后再利用式(32-16)可以计算出 $F_{2}(t_{2})$ , $F_{3}(t_{2})$ ,…, $F_{N-1}(t_{2})$ ,依此类推,直到最后得出 $F_{N-1}(t_{N-1})$ 。注意,随着时间的推移,零息曲线变得越来越短。例如,假设每个区间长度为 3 个月以及 N = 40,我们从一个 10 年的零息曲线开始,在 6 年的时间点上(时间为 $t_{24}$ )所做的模拟给了我们关于一条 4 年零息曲线的信息。
我们可以利用式(32-16)计算上限单元价格,并将得出的价格与布莱克模型的价格进行比较,这样可以检验对漂移项所做假设(即对 $t_j < t < t_{j+1}$ , $F_i(t) = F_i(t_j)$ )的近似程度。 $F_k(t_k)$ 的值是 $t_k$ 与 $t_{k+1}$ 之间所实现的利率,这样可使我们计算上限在时间 $t_{k+1}$ 上的收益,再逐个在每个累计区间上对这个收益进行贴现,直到时间0。上限单元价格是贴现后收益的平均值。以这种形式所做的分析证明,由蒙特卡罗模拟得出的结果与布莱克模型所得结果并无很大差别,即使当累计区间为1年时,大量抽样后所得出的结果证明这一点仍然正确。 $^{\ominus}$ 这说明我们对漂移项所做的假设并无大碍。
32.2.5 跳动上限、黏性上限和灵活上限#
LIBOR 市场模型也可以用来对一些非标准形式的上限定价。考虑跳动上限(ratchet cap)与黏性上限(sticky cap),这些产品含有一些确定每个上限单元利率的规则。跳动上限的上限率等于上一个重置日的 LIBOR 利率加上一个利差,黏性上限的利率等于前一阶段被封顶后的上限率加上一个利差。假设在时间 $t_{j}$ 的上限率为 $K_{j}$ ,在时间 $t_{j}$ 的 LIBOR 利率为 $R_{j}$ ,利差为 s。在跳动上限里 $K_{j+1} = R_{j} + s$ ,而在黏性上限里 $K_{j+1} = \min(R_{j}, K_{j}) + s$ 。
表 32-2 和表 32-3 给出了由单个、2 个和 3 个因子的 LIBOR 市场模型以 LIBOR 贴现计算出的跳动上限和黏性上限的价格。在这里,本金为 100 美元,期限结构为水平状,利息为年息 5%(连续复利或 5.127% 按年复利),上限波动率如表 32-1 所示,其中利率每年重置一次,利差为按年复利利率上的 25 个基本点。表 32-4 和表 32-5 展示了当模型含有 2 个和 3 个因子时,如何对波动率进行分解。这些结果是基于 100000 次蒙特卡罗模拟以及在 21.7 节中描述的对偶变量技巧,每个价格的标准差为 0.001。
表 32-2 跳动上限的定价
| 开始时间(年) | 单因子 | 两个因子 | 三个因子 | 开始时间(年) | 单因子 | 两个因子 | 三个因子 |
| 1 | 0.196 | 0.194 | 0.195 | 6 | 0.180 | 0.189 | 0.193 |
| 2 | 0.207 | 0.207 | 0.209 | 7 | 0.172 | 0.180 | 0.188 |
| 3 | 0.201 | 0.205 | 0.210 | 8 | 0.167 | 0.174 | 0.182 |
| 4 | 0.194 | 0.198 | 0.205 | 9 | 0.160 | 0.168 | 0.175 |
| 5 | 0.187 | 0.193 | 0.201 | 10 | 0.153 | 0.162 | 0.169 |
表 32-3 黏性上限的定价
| 开始时间(年) | 单因子 | 两个因子 | 三个因子 | 开始时间(年) | 单因子 | 两个因子 | 三个因子 |
| 1 | 0.196 | 0.194 | 0.195 | 6 | 0.498 | 0.512 | 0.524 |
| 2 | 0.336 | 0.334 | 0.336 | 7 | 0.502 | 0.520 | 0.533 |
| 3 | 0.412 | 0.413 | 0.418 | 8 | 0.501 | 0.523 | 0.537 |
| 4 | 0.458 | 0.462 | 0.472 | 9 | 0.497 | 0.523 | 0.537 |
| 5 | 0.484 | 0.492 | 0.506 | 10 | 0.488 | 0.519 | 0.534 |
第3种非标准上限是灵活上限(flexi cap),它与普通上限一样,但对可以被行使的上限单元的总数却有限制。考虑一个按年支付的灵活上限,本金为100美元,期限结构为水平状,利率为 $5\%$ ,上限波动率如表32-1、表32-4和表32-5所示。假如在所有的实值上限单元中可以最多行使5次,对于单个、2个和3个因子的情形,LIBOR市场模型给出的价格分别为3.43、3.58和3.61(对于其他类型的灵活上限,见作业题32.15)。
表 32-42 个因子模型中的波动率因子
| 年,k: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| $λ_{k-1,1}$ (%): | 14.10 | 19.52 | 16.78 | 17.11 | 15.25 | 14.06 | 12.65 | 13.06 | 12.36 | 11.63 |
| $λ_{k-1,2}$ (%): | -6.45 | -6.70 | -3.84 | -1.96 | 0.00 | 1.61 | 2.89 | 4.48 | 5.65 | 6.65 |
| 合计波动率(%): | 15.50 | 20.64 | 17.21 | 17.22 | 15.25 | 14.15 | 12.98 | 13.81 | 13.60 | 13.40 |
基本类型的上限价格只依赖于总波动率,而与因子的数目无关。这是由于基本类型的上限单元只依赖于一个远期利率的变化。我们所考虑的非标准产品的价格却与此不同,因为它们依赖于多个不同远期利率的联合分布。因此,这些非标准产品的价格确实依赖于因子的个数。
表 32-53 个因子模型中的波动率因子
| 年,k: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| $λ_{k-1,1}$ (%): | 13.65 | 19.28 | 16.72 | 16.98 | 14.85 | 13.95 | 12.61 | 12.90 | 11.97 | 10.97 |
| $λ_{k-1,2}$ (%): | -6.62 | -7.02 | -4.06 | -2.06 | 0.00 | 1.69 | 3.06 | 4.70 | 5.81 | 6.66 |
| $λ_{k-1,3}$ (%): | 3.19 | 2.25 | 0.00 | -1.98 | -3.47 | -1.63 | 0.00 | 1.51 | 2.80 | 3.84 |
| 合计波动率(%): | 15.50 | 20.64 | 17.21 | 17.22 | 15.25 | 14.15 | 12.98 | 13.81 | 13.60 | 13.40 |
32.2.6 欧式互换期权定价#
在 LIBOR 市场模型下,存在一个对欧式互换期权定价的近似公式。 $^{①}$ 假设我们以 LIBOR 进行贴现。令 $T_{0}$ 为互换期权的期限,假设互换的支付日期为 $T_{1}, T_{2}, \cdots, T_{N}$ 。定义 $\tau_{i} = T_{i+1} - T_{i}$ 。由式(28-23)得出在时间 t 的互换利率为
$$ s (t) = \frac{P (t , T_{0}) - P (t , T_{N})}{\sum_{i = 0} ^{N - 1} \tau_{i} P (t , T_{i + 1})} $$对于 $1 \leqslant i \leqslant N$ ,以下公式同样正确
$$ \frac{P (t , T_{i})}{P (t , T_{0})} = \prod_{j = 0} ^{i - 1} \frac{1}{1 + \tau_{j} G_{j} (t)} $$其中 $G_{j}(t)$ 是时间 $t$ 观察的 $T_{j}$ 与 $T_{j+1}$ 之间的远期利率。以上两个方程定义了 $s(t)$ 与 $G_{j}(t)$ 之间的关系。利用伊藤引理(见练习题32.12),互换利率 $s(t)$ 的方差 $V(t)$ 由下式给出
$$ V (t) = \sum_{q = 1} ^{p} \left[ \sum_{k = 0} ^{N - 1} \frac{\tau_{k} \beta_{k , q} (t) G_{k} (t) \gamma_{k} (t)}{1 + \tau_{k} G_{k} (t)} \right] ^{2}\tag{32-17} $$其中
$$ \gamma_{k} (t) = \frac{\prod_{j = 0} ^{N - 1} [ 1 + \tau_{j} G_{j} (t) ]}{\prod_{j = 0} ^{N - 1} [ 1 + \tau_{j} G_{j} (t) ] - 1} - \frac{\sum_{i = 0} ^{k - 1} \tau_{i} \prod_{j = i + 1} ^{N - 1} [ 1 + \tau_{j} G_{j} (t) ]}{\sum_{i = 0} ^{N - 1} \tau_{i} \prod_{j = i + 1} ^{N} [ 1 + \tau_{j} G_{j} (t) ]} $$其中 $\beta_{j,q}(t)$ 为 $G_{j}(t)$ 波动率的第 q 个部分。对所有的 j 和 t,我们假定 $G_{j}(t) = G_{j}(0)$ ,并以此来计算 $V(t)$ 的近似值。在标准市场模型中用来对互换期权定价的互换波动率为
$$ \sqrt{\frac{1}{T_{0}} \int_{t = 0} ^{T_{0}} V (t) \mathrm{d}t} $$或
$$ \sqrt{\frac{1}{T_{0}} \int_{t = 0} ^{T_{0}} \sum_{q = 1} ^{p} \left(\sum_{k = 0} ^{N - 1} \frac{\tau_{k} \beta_{k , q} (t) G_{k} (0) \gamma_{k} (0)}{1 + \tau_{k} G_{k} (0)}\right) ^{2} \mathrm{d}t}\tag{32-18} $$在互换期权中标的互换合约的累计区间长度与上限单元累计区间长度一致的情形下, $\beta_{k,q}(t)$ 是期限为 $T_{k} - t$ 的上限远期波动率的第 $q$ 个部分,这可以从类似表32-5这样的表中查到。 在欧式互换期权经纪人报价中,互换期权累计区间并不总是与经纪人所报的上限和下限的累计区间一致。例如,在美国,标准上限和下限是按季度重置的,但标准欧式互换期权中的互换却是按半年重置。幸运的是,欧式互换期权的定价结果可以被推广到当每个互换累计区间都包含 $M$ 个可以为典型上限累计区间的情形。定义 $\tau_{j,m}$ 为第 $j$ 个累计区间中的第 $m$ 个时间区间,于是
$$ \tau_{j} = \sum_{m = 1} ^{M} \tau_{j, m} $$定义 $G_{j,m}(t)$ 为在时间 $t$ 所观察的在 $\tau_{j,m}$ 累计区间上的远期利率,由于
$$ 1 + \tau_{j} G_{j} (t) = \prod_{m = 1} ^{M} [ 1 + \tau_{j, m} G_{j, m} (t) ] $$通过修改推导式(32-18)的分析过程,我们可以使 $s(t)$ 的波动率由 $G_{j,m}(t)$ (而不是 $G_{j}(t)$ )的波动率来表示。可以证明(见练习题32.13),在对互换期权定价时,代入标准市场模型中的互换波动率为
$$ \sqrt{\frac{1}{T_{0}} \int_{t = 0} ^{T_{0}} \sum_{q = 1} ^{p} \left[ \sum_{k = n} ^{N - 1} \sum_{m = 1} ^{M} \frac{\tau_{k , m} \beta_{k , m , q} (t) G_{k , m} (0) \gamma_{k} (0)}{1 + \tau_{k , m} G_{k , m} (0)} \right] ^{2} \mathrm{d}t}\tag{32-19} $$其中 $\beta_{j,m,q}(t)$ 为 $G_{j,m}(t)$ 波动率的第 q 个部分,这是期限为从 t 到互换累计区间 $(T_{j}, T_{j+1})$ 中的第 m 个小区间开始时刻的上限远期利率的波动率。 式(32-18)和式(32-19)中互换波动率表达式涉及所做的近似 $G_{j}(t) = G_{j}(0)$ 和 $G_{j,m}(t) = G_{j,m}(0)$ 。赫尔和怀特对由式(32-18)和式(32-19)计算出的欧式互换期权价格与由蒙特卡罗模拟所得的价格做了比较,他们发现这两个价格非常接近。一旦LIBOR市场模型经过校正后,式(32-18)和式(32-19)就可提供一种计算欧式互换期权的快捷方法。分析人员由此可以确定相对于上限,欧式互换期权的价值是否太高或太低。我们在下面将会看到,分析人员也可以采用这些结果而以互换期权市场价格来校正模型。以上分析亦可推广到 OIS 贴现。
32.2.7 模型校正#
参数 $\Lambda_{j}$ 是在时间 $t$ 所观察的 $t_{k}$ 与 $t_{k + 1}$ 之间的远期利率波动率,其中在 $t$ 与 $t_{k}$ 之间共有 $j$ 个完整累计区间。为了校正LIBOR市场模型,我们必须确定 $\Lambda_{j}$ ,并且确定如何将其分配到 $\lambda_{j,q}$ 上。这些 $\Lambda$ 参数通常是由当前市场数据来确定的,但如何分配到 $\lambda$ 上则是基于历史数据。 首先考虑如何由 $\Lambda$ 值来确定 $\lambda$ 值。我们可以将主成分分析法(见22.9节)用在远期利率数据上,并由此确定将 $\Lambda$ 分配到 $\lambda$ 的方式。主成分分析法模型为
$$ \Delta F_{j} = \sum_{q = 1} ^{M} \alpha_{j, q} x_{q} $$其中 M 为因子的总个数(等于不同远期利率的个数), $\Delta F_{j}$ 为第 j 个远期利率 $F_{j}$ 的变化, $\alpha_{j,q}$ 为第 j 个远期利率和第 q 个因子的因子载荷, $x_{q}$ 为第 q 个因子的因子得分。定义 $s_{q}$ 为第 q 个因子得分的标准差。如果在 LIBOR 市场模型中所用的因子个数 p 等于因子总数 M,那么对于 $1 \leqslant j, q \leqslant M$ ,我们可以设
$$ \lambda_{j, q} = \alpha_{j, q} s_{q} $$当 $p < M$ 时,我们必须对 $\lambda_{j,q}$ 乘上一个比例使得
$$ \Lambda_{j} = \sqrt{\sum_{q = 1} ^{p} \lambda_{j , q} ^{2}} $$我们可以取
$$ \lambda_{j, q} = \frac{\Lambda_{j} s_{q} \alpha_{j , q}}{\sqrt{\sum_{q = 1} ^{p} s_{q} ^{2} \alpha_{i , q} ^{2}}}\tag{32-20} $$下面考虑对这些 $\Lambda$ 参数的估计。式(32-11)提供了一种使它们与上限单元价格保持一致的方法。但在实际中,我们往往不使用这种方式,因为它会导致 $\Lambda$ 值大幅度地摆动,甚至有时与上限报价一致的 $\Lambda$ 并不存在。通常使用的矫正方法与 31.8 节里的单因子模型相似。假设 $U_{i}$ 是第 $i$ 个校正产品(一般是上限或欧式互换期权)的市场价格, $V_{i}$ 为模型价格。我们选取使得下式达到最小的 $\Lambda$ 值
$$ \sum_{i} \left(U_{i} - V_{i}\right) ^{2} + P $$其中 $P$ 是一个惩罚函数,选择函数的标准是通常使 $\Lambda$ 取值“表现良好”。与31.8节类似,函数 $P$ 可以取成以下形式
$$ P = \sum_{i} w_{1, i} (\Lambda_{i + 1} - \Lambda_{i}) ^{2} + \sum_{i} w_{2, i} (\Lambda_{i + 1} + \Lambda_{i - 1} - 2 \Lambda_{i}) ^{2} $$当一些校正产品为欧式互换期权时,式(32-18)与式(32-19)使得我们可利用 Levenberg-Marquardt 程序来求最小值。式(32-20)可被用来由 $\Lambda$ 值来确定 $\lambda$ 。
32.2.8 波动率偏态#
经纪人对上限所报价格中既包括非平值上限也包括平值上限。在某些市场里我们可以观察到波动率偏态的现象,也就是说,对上限或下限的波动率报价(布莱克波动率)是执行价格的递减函数,这一波动率特性可由CEV模型来处理(见26.1节中CEV模型在股权中的应用),CEV模型表达形式为
$$ \mathrm{d}F_{i} (t) = \dots + \sum_{q = 1} ^{p} \zeta_{i, q} (t) F_{i} (t) ^{\alpha} \mathrm{d}z_{q}\tag{32-21} $$其中 $\alpha$ 为常数 ( $0 < \alpha < 1$ )。这种模型可以由与对数正态模型类似的方式处理。我们可以利用非中心 $\chi^{2}$ 分布对上限或下限产品由解析方法定价,对于上面讨论的欧式互换期权也存在某种解析估计式。 $^{①}$
32.2.9 百慕大式互换期权#
百慕大式互换期权(Bermudan swap option)是一种非常流行的利率衍生产品,这种互换期权行使时间可以是标的互换的某些支付日或所有支付日。利用 LIBOR 市场模型对百慕大式互换期权定价非常困难,这是因为 LIBOR 市场模型依赖于蒙特卡罗模拟,而使用蒙特卡罗模拟时对是否提前行使决策的判断非常困难。幸运的是,我们可以利用在 27.8 节中描述的处理方法来对产品定价。当存在许多因子时,Longstaff 和 Schwartz 利用了最小二乘法的处理方式,他们假定在一个支付日上不被行使的期权价格为因子值的多项式函数。 $^{②}$ Andersen 证明了在定价过程中,可以采用最优提前行使边界的处理方式。Andersen 对不同形式的提前行使边界参数化形式进行了比较,并发现当假设提前行使边界只依赖于期权内在价值时,计算效果很好。 $^{③}$ 对百慕大式互换期权定价时,大多数交易员使用在第 31 章中介绍的单因子无套利模型。但是,使用单因子模型对百慕大式互换期权定价的精确性仍然是一个很有争议的问题。 $^{④}$
32.3 对多种零息曲线的处理方法#
在第29章、第31章以及本章目前为止所考虑的模型中,我们都是假设只需要一条利率曲线来对利率衍生产品定价。在2007年开始的信用危机之前,在实际中大部分也确实是这样做的:对于许多衍生产品定价时计算收益与贴现因子所用的都是LIBOR/互换零息曲线。如第9章所述,目前通常是利用OIS零息曲线作为无风险零息曲线进行贴现(至少对抵押产品定价时是这样做的)。这说明对于像互换、利率上/下限以及互换期权定价时,我们需要考虑多条利率曲线,原因是这些产品的收益都依赖于LIBOR利率,所以我们需要利用LIBOR零息曲线来计算收益,而利用OIS零息曲线进行贴现。
如果我们同时对 OIS 零息曲线与 LIBOR/互换零息曲线建立模型,并且假设银行可以无风险地按任何一条利率曲线所得利率进行借贷(到目前为止我们一直是这样假定的),那么不可避免地将在金融市场上存在套利机会:银行可以按 OIS 借款,然后按 LIBOR 利率贷给别人而锁定盈利。一种替代方法是建立能够解释信用风险与流动性风险的模型,并以此模型解释OIS利率与LIBOR利率之间的区别,但不幸的是这种方法非常复杂,因此很难用在实际中。由于这些原因,许多从业人员决定在不明确地考虑违约风险与流动性风险的前提下对LIBOR利率与OIS利率分别建模,并且忽略了由于使用多条零息曲线所产生的套利机会。
我们可以认为只有一条 LIBOR 曲线。假设知道了 LIBOR 的短期利率,那么如第 31 章所述,整条 LIBOR 零息曲线即为已知。在金融危机之前,这种假设比较合理。如 9.3 节所述,在金融危机之后,从业人员常常从依赖 1 个月、3 个月、6 个月以及 12 个月 LIBOR 利率的产品来分别计算零息曲线,而且这些曲线并不相同。 $^{①}$ 这说明交易 LIBOR 的衍生产品从业人员同时使用了至少 5 条零息曲线。
从原理上讲可以直截了当地对 OIS 零息曲线建立模型:可以利用第 31 章里的短期利率模型,或者利用本章所讨论的 HLM/LMM 方法(“LIBOR 市场模型”成为“OIS 市场模型”)。在 9.3 节里我们解释过以 OIS 贴现所计算的远期 LIBOR 利率与以 LIBOR 贴现所计算的远期 LIBOR 利率是不同的。这一点非常重要,却在实际应用中往往被忽视。定义 $F_{\mathrm{LD}}(t, t_1, t_2)$ 为在时间 $t$ 介于 $t_1$ 与 $t_2$ 之间以 LIBOR 贴现的远期 LIBOR 利率,而 $F_{\mathrm{OD}}(t, t_1, t_2)$ 为相应以 OIS 贴现的远期利率。例 9-2 与例 9-3 演示了如何从 LIBOR - 对固定利率互换报价中以息票剥离法的方式计算 $F_{\mathrm{LD}}(t, t_1, t_2)$ 和 $F_{\mathrm{OD}}(t, t_1, t_2)$ 。定义 $P_{\mathrm{LD}}(t, T)$ 为时间 $t$ 、期限为 $T$ 并以 LIBOR 贴现的零息债券价格, $P_{\mathrm{OD}}(t, T)$ 为相应以 OIS 利率贴现的价格。由 28.4 节中结果可知,在关于 $P_{\mathrm{LD}}(t, t_2)$ 为远期风险中性的世界里, $F_{\mathrm{LD}}(t, t_1, t_2)$ 是个鞅,因此等于在 $t_1$ 与 $t_2$ 之间 LIBOR 利率的期望值。以前对以 LIBOR 贴现的上限单元定价时,我们利用了这个结果。然而一般来讲,在对 $P_{\mathrm{OD}}(t, T)$ 为风险中性的世界里, $F_{\mathrm{LD}}(t, t_1, t_2)$ 并不是个鞅。当考虑以 OIS 贴现时我们应当使用的是 $F_{\mathrm{OD}}(t, t_1, t_2)$ ,而不是 $F_{\mathrm{LD}}(t, t_1, t_2)$ 。这是因为在关于 $P_{\mathrm{OD}}(t, T)$ 为风险中性的世界里, $F_{\mathrm{OD}}(t, t_1, t_2)$ 为鞅,因此等于在这个世界里介于 $t_1$ 与 $t_2$ 之间的 LIBOR 利率期望值。 在第9章中我们曾解释过,在对以OIS贴现的互换合约定价时,我们假设远期利率 $F_{\mathrm{OD}}(t, t_1, t_2)$ 为所实现的利率,并且以OIS利率贴现。在对上限与上限单元定价时,我们可以利用式(29-7)与式(29-8)。但是如29.4节所述,在定义适当变量时需要非常小心。这些方程中的 $F_k$ 是 $F_{\mathrm{OD}}(t, t_k, t_{K+1})$ , $P(0, t_{k+1})$ 是这里的 $P_{\mathrm{OD}}(0, t_{k+1})$ ,通常由市场价格蕴含的波动率依赖于使用的是LIBOR利率还是OIS利率。
我们可以按类似的方式对以OIS贴现的互换期权定价。在利用式(29-10)与式(29-11)时,我们定义
$$ A = \frac{1}{m} \sum_{i = 1} ^{m n} P_{\mathrm{OD}} (0, T_{i}) $$并且以 $F_{\mathrm{OD}}$ 利率(而不是 $F_{\mathrm{LD}}$ 利率)来计算远期互换利率。蕴含波动率仍然依赖于使用的贴现率是LIBOR还是OIS。
在软件 DerivaGem 3.00 里,既可以对按 LIBOR 贴现也可以对按 OIS 贴现的互换、上/下限以及互换期权进行定价。
在对更复杂的产品定价时,常常需要同时建立 LIBOR 和 OIS 零息曲线的模型。一些研究人员认为这是可行的:一种做法先对两种曲线分别建立模型,比如假设 LIBOR 和 OIS 短期利率服从具有相关性的随机过程。这样做的缺点是有时 OIS 利率会高于 LIBOR 利率。一种比较好的方法是利用第 31 章里的短期利率模型或本章里的 HJM/LMM 模型来刻画 OIS 利率,而 LIBOR 高于 OIS 的利差期限结构可以用非负的变量来描述,比如最简单的方法是假设利差等于远期利差。对于随机利差模型,我们知道在关于 $P_{\mathrm{OD}}(t, t_{i+1})$ 为风险中性的世界里,远期 LIBOR 利率 $F_{\mathrm{OD}}(t, t_i, t_{i+1})$ 是鞅,同时远期 OIS 远期利率也是鞅,因此在这个世界里,利差(两者之差)也是个鞅。
描述远期利差时,我们可以使用类似于式(32-10)与式(32-15)中含有一个或多个因子的远期利率模型
$$ \frac{\mathrm{d}F_{k} (t)}{F_{k} (t)} = \dots + \sum_{q = 1} ^{p} \xi_{k, q} (t) \mathrm{d}z_{q} $$其中为了简化记号, $F_{k}(t)$ 为时间 $t$ 所观察介于 $t_{k}$ 与 $t_{k+1}$ 之间的远期利差, $\xi_{k,q}$ 为这个利差波动率的第 $q$ 个成分。32.2节中用来计算利率服从过程的所有结果都可以用到利差上。
32.4 联邦机构住房抵押证券#
本章所述模型可以应用在美国联邦机构住房抵押证券(Agency mortgage-backed securities,联邦机构 MBS)上。
联邦机构 MBS 与第 8 章里所描述的资产支持证券(ABS)相似,其唯一不同之处是债券的付款通常由诸如政府国民住房抵押贷款协会(Government National Mortgage Association, GNMA)或联邦国民住房抵押贷款协会(Federal National Mortgage Association, FNMA)这些与政府有关的机构来担保,所以投资者不承担违约风险。这使 MBS 看起来好像与政府发行的普通固定收入证券相同,但实际上,联邦机构 MBS 与普通固定收入证券之间有着重要差别:MBS 中的住房贷款具有提前偿付(prepayment)特权。对房主而言,这些提前偿付特权可能会很有价值。在美国,住房贷款的期限一般是 30 年,并可以在任意时刻提前偿付。这意味着房主随时可以将房屋贷款的面值退还给贷款借出方,也就是说相当于房主持有一个 30 年期的美式期权。
在现实中,提前偿付贷款的原因有多种多样。有时利率下跌,房主决定以更低的利率再融资。而在另外一些情形下,提前偿付贷款的简单原因是房屋已经被出售。对 MBS 定价的关键是确定提前偿付函数(prepayment function),这个函数描述了在某个时刻 $t$ ,房屋贷款提前偿付与时间 $t$ 的利率曲线以及其他相关变量之间的函数关系。
当预测个别住房贷款的提前偿付情况时,利用提前偿付函数来预测实际提前偿付数量是很不可靠的。但将许多类似的住房贷款放在一起时,大数定律(law of large number)会起作用,从而通过历史数据,我们可以比较精确地预测提前偿付的数量。我们在前面提到过,提前偿付并不完全是由于利率的因素。尽管如此,提前偿付在利率很低时会更容易产生。这意味着投资者会要求联邦机构 MBS 比其他固定收入产品支付更高的利息以便补偿所承约的提前偿付期权。
32.4.1 分级偿还房产抵押贷款证券#
最简单的 MBS 通常被称为过手证券(pass-through)。在这里,所有的投资者都获得同样的收益并承受同样的提前偿付风险。并非所有的 MBS 都以这种方式运作。分级偿还房产抵押贷款证券(collateralized mortgage obligations,CMO)将投资者分成不同的级别,并设定一套规则来决定如何将本金支付给不同级别的投资者。一个 CMO 构造了不同级别的证券,不同证券承担不同的提前偿还风险。这与在第 8 章中讲过的资产抵押证券一样,在那里不同级别的证券承
担了不同的信用风险。
作为一个 CMO 的例子,考虑某个联邦机构 MBS,其投资者被分成三级:A 级、B 级和 C 级。所有的本金支付(既包括正常支付也包括提前支付)先分配给 A 级投资者,直到对该级别投资者的支付全部完毕。然后,本金支付分配给 B 级投资者,直到该级别投资者的支付也全部完毕。最后,本金支付分配给 C 级投资者。在这种情况下,A 级投资者所承受的提前偿还风险最大。可以预料,A 级证券的实际期限比 B 级要短,同样,B 级证券的实际期限比 C 级要短。
这种结构的目的是产生不同类型的证券。对机构投资者而言,这种证券比那些简单的过手证券更有吸引力。不同类型证券所对应的提前偿付风险取决于每一类证券的面值(par value)。例如,当 A 类、B 类和 C 类的面值分别为 400、300 及 100 时,C 级类承担的提前偿付风险很小。但当各类的面值分别为 100、200 及 500 时,C 类会承担较大的提前偿付风险。
分级偿还房产抵押贷款证券的构造者还构造了许多比我们刚刚讨论的证券更加特殊的结构,业界事例32-1给了一个这样的例子。

业界事例 32-1 纯息债券和纯本金债券
32.4.2 对联邦机构房产抵押贷款证券的定价#
对联邦机构房产抵押贷款证券的定价一般是利用蒙特卡罗模拟的方式对国债利率变化建立模型。我们可以使用HJM或LIBOR市场模型。考虑在一次模拟试验中可能发生的情况,在每个月内,利用目前的收益率曲线以及收益率曲线变动的历史,我们可以计算预期的提前偿付数量。由这些提前偿付的数量可以确定MBS持有者的预期现金流,然后按国库券利率加上一定利差来将现金流贴现到时间零,从而得到一个联邦机构MBS价格的样本。MBS价值的估计值是由许多模拟实验所得样本而产生的平均值。
32.4.3 期权调整利差#
除了计算房产抵押贷款证券以及其他含有隐含期权的债券价格外,交易员还常常喜欢计算所谓的期权调整利差(option-adjusted spread,OAS),它所指的是在考虑所有内含期权后,产品所提供的高于国库券收益率的利差。
在计算一个产品的 OAS 时,我们首先利用零息国库券曲线加上一个利差来对产品定价。我们将模型所给的产品价格与市场价格相比较,然后利用一系列的迭代来确定使得模型价格等于市场价格的利差。这个利差就是所求的 OAS。
小结#
在计算利率衍生产品时,HJM 和 LMM 模型给用户提供了能够自由选择波动率期限结构的处理方法。LMM 模型比 HJM 模型具有两项关键的优势:首先,LMM 模型的建立是基于确定上限价格的远期利率,而不是瞬时远期利率;其次,相对而言,我们能够比较容易地利用上限价格或欧式互换期权价格对模型进行校正。HJM 和 LMM 都具有的缺点是它们不能被再重合树形来表示。这意味着在实际中我们必须利用蒙特卡罗模拟来实现这些模型,因此与第 31 章所介绍的简单模型相比,这里所需要的计算时间要长得多。
在 2007 年开始的信用危机之后,在对抵押衍生产品进行贴现时常常将 OIS 利率当成是无风险利率。这意味着我们需要对利率互换、上/下限以及互换期权定价的程序加以调整,以便使我们能够用 OIS 利率贴现,而且远期利率与互换利率都是在适当远期风险中性测度下计算的。对更复杂的产品定价时,我们需要对 OIS 零息曲线与 LIBOR 零息曲线一起建立模型。
在美国,在联邦机构房产抵押贷款证券市场上产生了许多特种利率衍生产品:CMO,IO,PO,等等。这些产品对其持有者所提供的现金流依赖于房产抵押贷款的提前偿还率。提前偿还率的大小与许多因素有关,其中包括利率的高低。房产抵押贷款证券的价格对路径有很强的依赖性,因此价格计算必须通过蒙特卡罗模拟来实现。这些产品是HJM模型和LMM模型比较理想的应用对象。
推荐阅读#
Andersen, L., “A Simple Approach to the Pricing of Bermudan Swaption in the Multi-Factor LIBOR Market Model,” The Journal of Computational Finance, 3, 2 (2000): 5–32.
Andersen, L., and J. Andreasen, “Volatility Skews and Extensions of the LIBOR Market Model,” Applied Mathematical Finance, 7, 1 (March 2000): 1–32.
Andersen, L., and V. Piterbarg, Interest Rate Modeling, Vols. I–III. New York: Atlantic Financial Press, 2010.
Brace A., D. Gatarek, and M. Musiela “The Market Model of Interest Rate Dynamics,” Mathematical Finance, 7, 2 (1997): 127–55.
Duffie, D. and R. Kan, “A Yield-Factor Model of Interest Rates,” Mathematical Finance 6, 4 (1996), 379–406.
Heath, D., R. Jarrow, and A. Morton, “Bond Pricing and the Term Structure of Interest Rates: A Discrete Time Approximation,” Journal of Financial and Quantitative Analysis, 25, 4 (December 1990): 419–40.
Heath, D., R. Jarrow, and A. Morton, “Bond Pricing and the Term Structure of the Interest Rates: A New Methodology,” Econometrica, 60, 1 (1992): 77–105.
Hull, J., and A. White, “Forward Rate Volatilities, Swap Rate Volatilities, and the Implementation of the LIBOR Market Model,” Journal of Fixed Income, 10, 2 (September 2000): 46–62.
Jamshidian, F., “LIBOR and Swap Market Models and Measures,” Finance and Stochastics, 1 (1997): 293–330.
Jarrow, R.A., and S.M. Turnbull, “Delta, Gamma, and Bucket Hedging of Interest Rate Derivatives,” Applied Mathematical Finance, 1 (1994): 21–48.
Mercurio, F., and Z. Xie, “The Basis Goes Stochastic,” Risk, 25, 12 (December 2012): 78–83.
Miltersen, K., K. Sandmann, and D. Sondermann, “Closed Form Solutions for Term Structure Derivatives with Lognormal Interest Rates,” Journal of Finance, 52, 1 (March 1997): 409–30.
Rebonato, R., Modern Pricing of Interest Rate Derivatives: The LIBOR Market Model and Beyond. Princeton University Press, 2002.
练习题#
32.1 解释关于短期利率的马尔科夫模型与非马尔科夫模型之间的区别。
32.2 证明在多因子模型下,式(32-6)里HJM模型的远期利率的漂移项与波动率之间的关系式。
32.3 “当HJM模型中的远期利率波动率 $s(t,T)$ 是常数时,所得到的模型是Ho-Lee模型。”通过证明HJM给出的债券价格过程与第31章中Ho-Lee模型一致来验证这个结果是正确的。
32.4 “当HJM模型中的远期利率波动率 $s(t,T)$ 等于 $\sigma \mathrm{e}^{-a(T - t)}$ ,所得到的模型是Hull-White模型。”通过证明HJM给出的债券价格过程与第31章中Hull-White模型一致来验证这个结果是正确的。
作业题#
32.14 在一个按年付款的上限里,期限为1年、2年、3年和5年开始而一年后结束的上限单元布莱克波动率分别是 $18\%$ 、 $20\%$ 、 $22\%$ 和 $20\%$ 。当期限如下时,估计LIBOR市场模型中1年远期利率的波动率:(a) $0 \sim 1$ 年;(b) $1 \sim 2$ 年;(c) $2 \sim 3$ 年;(d) $3 \sim 5$ 年。假设零息曲线为水平,利率为每年 $5\%$ (按年复利)。利用DerivaGem估计2年、3年、4年、5年和6年平值上限的水平波动率。
32.15 在32.2节里考虑的灵活上限中,持有者有行使前 $N$ 个实值上限单元的义务。在
32.5 同HJM模型相比,LMM模型的优点是什么?
32.6 从直观上说明当因子的个数增加时,跳跃上限的价值也会增加。
32.7 证明当 $\delta_{i}$ 趋于零时,式(32-10)变为式(32-4)。
32.8 解释为什么黏性上限要比一个类似的跳跃上限更贵。
32.9 解释为什么提前偿还率对 IO 和 PO 有相反的影响。
32.10 “期权调整利差类似于债券的收益率。”解释这个结论。
32.11 证明式(32-15)。
32.12 证明式(32-17)中互换利率的方差 $V(T)$ 的公式。
32.13 证明式(32-19)。
此之后,持有者不能再行使其他上限单元(在例子中,N=5)。有时灵活上限也可以由另外两种方式来定义:
(a) 持有者可以决定是否行使一个上限单元,但能够行使的上限单元数不超过 N 个;
(b) 一旦持有者决定行使一个上限单元,所有随后的实值上限单元都必须被行使,直到最多 $N$ 个。
讨论对这些类型的灵活上限定价时会存在什么问题。在三种类型的灵活上限中,你认为哪类会最贵?哪类会最便宜?
互换合约对衍生产品场外交易市场的成功起了关键的作用。事实证明,互换合约是管理风险的一种灵活工具。无论是交易的合约种类,还是每年的交易总量,我们都可以说互换是金融市场上有史以来最成功的革新之一。
在第 7 章和第 9 章里我们讨论了如何对标准利率互换定价。标准的定价方式可以被概括为:“假设远期利率将会实现。”步骤如下:
假设将来的 LIBOR 利率等于由今天在市场上交易产品价格所计算出的远期利率, 然后计算互换的净现金流 (在 9.3 节里我们曾指出过, 以 OIS 利率贴现与以 LIBOR 利率贴现所得远期利率是不一样的)。
互换的价值等于所得净现金流的贴现值。
在本章中我们描述几种非标准互换:一些可以利用“假设远期利率将会实现”的处理方法,另一些需要应用我们在第30章里讲过的曲率、时间和Quanto调整,还有一些则包括隐含期权,这时我们必须利用第29章、第31章和第32章中所描述的方法来定价。