资源简介
matlab开发-Vasicek。说明了在Vasicek模型下计算债券价格的各种方法。

代码片段和文件信息
function Vasicek(kr_barsigmar)
% k is the speed of mean reversion
% r_bar is the risk-neutral long run mean of the short rate
% sigma is the volatility of the short rate
% Our model is dr(t)=k(r_bar-r(t))dt+sigma*dW where dW is a Brownian
% motion.
% r is the current short rate at time t
if nargin<4
r=.07;
k=.3;
r_bar=.08;
sigma=.01;
end
step=1; % Yearly frequency
mat=[0:step:10]‘; % Maturity matrix
%% Analytical solution
B=(1-exp(-k*mat))/k;
A=(r_bar-sigma^2/(2*k^2))*(B-mat)-(sigma^2*B.^2)/(4*k);
P=exp(A-B*r);
%% ODE solution
function dy=vasicek_ode(ty) %#ok
dy(11)=(1/2)*sigma^2*y(2)^2-r_bar*k*y(2);
dy(21)=1-k*y(2);
end
[~y]=ode45(@vasicek_odemat[0 0]);
A_ode=y(:1); B_ode=y(:2);
P_ode=exp(A_ode-B_ode*r);
%% Simulation solution
delta_t=step/50;
no_sim=1000; no_per=max(mat)/delta_t;
rsim=zeros(no_simno_per); drsim=zeros(no_simno_per);
rsim(:1)=r;
for j=2:no_per
dW=randn(no_sim1);
drsim(:j)=k*(r_bar-rsim(:j-1))*delta_t+sigma*sqrt(delta_t)*dW;
rsim(:j)=rsim(:j-1)+drsim(:j);
end
P_sim=ones(length(mat)1);
for i=2:length(mat)
P_sim(i)=mean(exp(-delta_t*sum(rsim(:1:mat(i)/delta_t)2)));
end
%% Plots
figure
plot(matP‘b‘matP_ode‘r o‘matP_sim‘g *‘)
legend(‘Analytical Price‘‘ODE Price‘‘Simulation Price‘)
xlabel(‘Maturity‘)
ylabel(‘Price‘)
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1384 2016-05-26 16:28 Vasicek.m
文件 1313 2016-05-26 16:28 license.txt
相关资源
- matlab开发-能带计算
- matlab开发-FlockingAlgorithm
- matlab开发-MuellerStokesJonesCalculus
- matlab开发-HX711的自定义数据库
- matlab开发-SMOTEBoost
- matlab开发-果蝇优化算法第二版
- matlab开发-多变量决策树
- matlab开发-水轮发电机模型
- matlab开发-交通警告标志识别标签代码
- matlab开发-RUSBoost
- matlab开发-基于遗传算法的机器人运动
- matlab开发-MPU6050加速度陀螺仪
- matlab开发-功率曲线FAsmallscalewindturbi
- matlab开发-NASAJPLDE405开发星历表
- matlab开发-SortinoRatio
- matlab开发-永磁TDC并联电机数学模型
- matlab开发-3相SPWM整流器
- matlab开发-Kilobotswarm控制Matlabarduino
- matlab开发-简单音频播放
- matlab开发-记录文件的绘图仪加速度、
- matlab开发-永磁同步电机PMSM动态数学模
- matlab开发-多目标优化差分进化算法
- matlab开发-随机微分方程解算
- matlab开发-波长调制光谱的二次谐波模
- matlab开发-仿制药生物生理学基础药动
- matlab开发-使用svmrfe选择功能
- matlab开发-KDTreeNearestNeighborandRangeSear
- matlab开发-stlread
- matlab开发-三维图像堆栈查看器
- matlab开发-动态电压恢复器故障dvr
评论
共有 条评论