doputmcav.m

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

M
25
字号
% DOPutMCAV.m
function [P,CI,NCrossed] = DOPutMCAV(S0,X,r,T,sigma,Sb,NSteps,NRepl)
% Generate asset paths
[Call,Put] = blsprice(S0,X,r,T,sigma);
Payoff = zeros(NRepl,1);
NCrossed = 0;
for i=1:NRepl
   [Path1,Path2] = AssetPathsAV(S0,r,sigma,T,NSteps,1);
   crossed = any(Path1 <= Sb);
   if crossed == 0
      Payoff1 = max(0, X - Path1(NSteps+1));
   else
      Payoff1 = 0;
      NCrossed = NCrossed + 1;
   end
   crossed = any(Path2 <= Sb);
   if crossed == 0
      Payoff2 = max(0, X - Path2(NSteps+1));
   else
      Payoff2 = 0;
      NCrossed = NCrossed + 1;
   end
   Payoff(i) = 0.5*(Payoff1 + Payoff2);
end
[P,aux,CI] = normfit( exp(-r*T) * Payoff);

⌨️ 快捷键说明

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