l11.m

来自「Matlab codes for financial models」· M 代码 · 共 21 行

M
21
字号
% exercise 11 chapter 13 from Luenberger, Investment Science
% use with fzero(inline('L11(X,12,14,0.1, 0.2, 1/12, 10)'),2)
function [ initprice , lattice ] = L11(premium,S0,X,r,sigma,deltaT,N)
u=exp(sigma * sqrt(deltaT));
d=1/u;
p=(exp(r*deltaT) - d)/(u-d);
lattice = zeros(N+1,N+1);
for j=0:N
   if (S0*(u^j)*(d^(N-j)) > X)
      lattice(N+1,j+1)=S0*(u^j)*(d^(N-j)) - X - premium;
   end
end
for i=N-1:-1:0
   for j=0:i
      lattice(i+1,j+1) = exp(r*deltaT) * ...
         (p * lattice(i+2,j+2) + (1-p) * lattice(i+2,j+1));
   end
end
initprice = lattice(1,1);
   

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?