不拼不博 发表于 2019-8-6 14:52:23

用Excel实现Vasicek模型的动态模拟


第一步:建立可调整的变量和参数的输入
注:启动Excel 后,需要先加载分析工具库。步骤如下:“工具”→ “加载宏”→选中“分析工具库”。
①设置输入区域: 在A1 单元格内输入标题“The Vasicek 动态模型”,A3 单元格输入“Input”,将A4-C8区域划为输入区;
②输入解释变量和参数名称: 在A4-A8 单元格内分别输入变量“Short Rate (γ )”, 参数“Long-Run Mean Lever (L)”、“Speed Of Adjustment (S)”、“Standard Deviation (σ)”、“Market Price Of Interest Rate Risk(λ)”;
③建立可调整的解释变量和参数值:在C4-C8 单元格内分别输入数值8、10、11、4、10;同时打开“视图”→“工具栏”→“窗体”,在C4-C8 单元格内分别画出5 个“微调项”,然后在“微调项”属性的单元格连接中分别选中4、5、6、7、8 单元格。
最后在B4-B8 单元格里输入“=C4/200”、“=C5/200”、“=C6/100+0.01”、“=C7/500”、“=C8/100”, 并将B4-B8 单元格分别命名为γ、L、S、σ 和λ,完成后效果图如下


第二步:计算Vasicek 动态模型的计算输出值
①显示各个输出值名称:
在B10-B16 单元格内,分别输入“Outputs:” 和“Time To Maturity (T)”、“Infinitely- Long Rate(Y∞)”、“B”、“A”、“Bond Price (P)”、“Y”;
②计算各个输出值:
在B11:N11 区域分别输入“=1/12”, “=1/4”, “=1/2”, 1, 2, 3, 4, 5, 10, 15, 20, 25,30;
在B12:N12 单元格输入“=L-σ^2/(2*S^2)+(λ*σ)/S”;
在B13 单元格输入“=(1-EXP(-S*B11))/S”,拷贝B134粘贴到C13-N13 单元格;
在B14 单元格输入“=(B13-B11)*B12 -(σ^2*B13^2)/(4*S^2)”, 拷贝B14 粘贴到C14 -N14 单元格;
在B15 单元格输入“=EXP (-S*B11”,拷贝B15 粘贴到C15-N15 单元格;
在B15 单元格输入“=(-B14)/B11+(B13/B11)*4”,拷贝B16粘贴到C16-N16 单元格。

至此, 到期时间分别为1 个月、3 个月、6 个月、1年、2 年、3 年、4 年、5 年、10 年、15 年、20 年、25 年、30年的到期收益率(Y)的值就运算完毕。完成后效果图如下



第三步:画出Vasicek 动态模型的图表
选中单元格B12-N12,再按住Ctrl 键选中单元格B16-N16。
然后从主菜单中选择“插入/图表”命令,选择图表类型为XY 散点图,然后按照图表向导的其他选择完成图形。将图表放在E2-I10 的区域内。

页: [1]
查看完整版本: 用Excel实现Vasicek模型的动态模拟