bshfun.m
上传用户:hfch80
上传日期:2007-10-25
资源大小:3637k
文件大小:1k
源码类别:

行业发展研究

开发平台:

Matlab

  1. function [y] = bshfun(x,u,t);
  2. % PURPOSE : Measurement model function.
  3. % INPUTS  : - x:  The evaluation point in the domain.
  4. % OUTPUTS : - y:  The value of the function at x.
  5. % AUTHORS  : Nando de Freitas      (jfgf@cs.berkeley.edu)
  6. %            Rudolph van der Merwe (rvdmerwe@ece.ogi.edu)
  7. % DATE     : 10 March 2000
  8. if nargin < 3, error('Not enough input arguments.'); end
  9. [dim,np] = size(x);
  10. y=zeros(2,np);
  11. for j=1:np,
  12.   r   = x(1,j);   % Risk free interest rate.
  13.   sig = x(2,j);   % Volatility.
  14.   S   = u(1);
  15.   tm  = u(2);
  16.   
  17.   d1 = ( log(S) + (r+0.5*(sig^2))*tm ) / (sig * (tm^0.5));
  18.   d2 = d1 - sig * (tm^0.5);
  19.   % Compute call prices:
  20.   y(1,j) = S*normcdf(d1) - exp(-r*tm)*normcdf(d2);
  21.   % Compute put prices:
  22.   y(2,j) = - S*normcdf(-d1) + exp(-r*tm)*normcdf(-d2);
  23.  
  24. end