1、1美式看跌期权二叉树数值算法比较【摘要】美式期权的特征赋予其投资者可以选择是否提前执行期权,在什么情况下执行期权便成了主要考虑的问题。当股票不存在分红时,其他参数均相同,那么美式看涨期权与欧式看涨期权的价值相同,即不存在提前执行。然而,不付红利的美式看跌期权却可以提前执行。本文着重分析在为美式看跌期权定价时,二叉树二叉树法中的两种不同的matlab 代码的其各自特点。 【关键词】美式看跌期权;二叉树 - 现今金融创新技术日新月异,金融衍生产品无论从种类还是数量上都已经获得了极大的发展,随着“火箭科学家”的加入,产品的独特性与复杂性也越来越高。但期权依然是其中最基础也是最重要的一种,也依然是学界
2、研究的重点。期权在风险管理和投资理财等领域有着无可替代的重要作用,获得合理地期权定价就成为发挥其功能的主要前提,由此才能进一步促进全球金融市场的健康与稳定发展。1973 年,Black 和Scholes 给出了欧式看涨期权的解析价格,用评价公式可以很简单的得到欧式看跌期权的价格,后续研究者进一步推广了 BS 定价公式,从而使欧式期权的定价问题得以比较完备的解决。而具有可提前执行特性的美式期权,其定价问题从数学角度看,是一个在随机微分方程下含有自由边2界的求值问题,即无法获得封闭解。在无法获得封闭解的情况下,以二叉树为代表的数值方法为美式期权定价就成了可行之道。 1 二叉树法 A 针对美式看涨/
3、看跌期权的特点,matlab 中的金融工具箱已给出公式binprice。输入各参数,可得到股票价格的二叉树路径和相应的期权价格。针对美式看跌期权,其代码并不复杂,即:(使用 CRR 模型)function price = Binprice(s0,k,r,T,sigma,n) tt=T/n; u=exp(sigma*sqrt(tt) ) ; d=exp(-sigma*sqrt(tt) ) ; p=(exp(r*tt)-d)/(u-d) ; price=zeros(n+1) ; price(1,1)=s0; for i=1:n+1; for j=1:n+1; if j=i; price(i,j)=
4、price(1,1)*u(j-i)*d(i-1) ; end end end opition=zeros(n+1) ; 3opition(:,n+1)=max(k-price(:,n+1) ,0) ; for j=n:-1:1; for i=1:n; if i=j; opition(i,j)=max(k-price(i,j) ,exp(-r*tt)*(1-p)*opition(i+1,j+1)+p*opition(i,j+1) ) ) ; end end end opition 此种方法的有点在于操作简单,结果明显,并输出了股票价格矩阵,令使用者可以非常直观的美式看跌期权的最佳执行边界。并且,
5、稍做修改便可适用于非 CRR 的其他二叉树模型。然而,其缺点在于当二叉树层数 n 较大时(例如 n=10000) ,由于要生成 n+1 阶矩阵,此程序往往不能胜任(matlab 会显示 out of memory) 。根据此特点,我们需要优化代码。2 二叉树法 B function price = AmPutLattice(S0,K,r,T,sigma,N) tic deltaT = T/N; u=exp(sigma * sqrt(deltaT) ) ; d=1/u; 4p=(exp(r*deltaT) - d)/(u-d) ; discount = exp(-r*deltaT) ; p_u
6、= discount*p; p_d = discount*(1-p) ; SVals = zeros(2*N+1,1) ; SVals(N+1) = S0; for i=1:N SVals(N+1+i) = u*SVals(N+i) ; SVals(N+1-i) = d*SVals(N+2-i) ; end PVals = zeros(2*N+1,1) ; for i=1:2:2*N+1 PVals(i) = max(K-SVals(i) ,0) ; end for tau=1:N for i= (tau+1):2:(2*N+1-tau) hold = p_u*PVals(i+1) + p_d
7、*PVals(i-1) ; PVals(i) = max(hold, K-SVals(i) ) ; end end price = PVals(N+1) ; toc 5此代码计算速度快的主要原因在于利用了 CRR 模型中上升比例与下降比例乘积为 1(u*d=1)这一特点。 其优点在于只需生成一个列向量来表示股价并进行迭代,计算期权价格,运算速度较快。数值算例:S=52;k=52;r=0.1;sigma=0.4;T=5/12;n=10000; 输出结果 price=4.4555 运行时间 1.897011 seconds 其缺点在于,只输出期权价格,并不能得到最佳执行边界,并且不适用于非 CRR 模型。 参考文献: 1姜礼尚.期权定价的数学模型和方法 2约翰?赫尔.