美式期权二叉树定价及MATLAB程序

合集下载

美式看跌期权定价的数值解法

美式看跌期权定价的数值解法

美式看跌期权定价的数值解法美式期权定价通常采用数值方法,包括二叉树法、有限差分法和monte carlo模拟法。

其中,二叉树法和有限差分法都属于逆向求解的方法,可以求出美式期权的最优执行时刻以及价格,但对于路径依赖期权和具有多标的资产的期权,这两种方法受到了限制。

monte carlo模拟方法的原理虽然是正向求解,但20世纪90年代以来,学者们通过将树图分析技术以及动态规划原理引入monte carlo模拟中,已经实现了美式期权的monte carlo模拟定价。

本文首先介绍了lsm方法的理论框架和基本原理,其次以单一标的资产的美式看跌期权为例,给出了具体的算法实现步骤以及matlab 程序,最后通过一个实例说明lsm方法的可行性及优缺点。

一.lsm方法的理论框架和基本原理为模拟美式期权定价,首先设立以下基本假定:标的资产价格演化过程遵循几何布朗运动市场是无摩擦;无风险利率r为固定的常数。

为简化计算,将期权的有效期[0,t]均分为个子区间,这样期权只可能在n+1个交易时点行权:0=t0<t1<t2<……<tn=t。

在t时刻前的某一可能执行点tn时刻,若立即行权,期权价值即执行期权获得的收益现金流max(k-st,0),是已知的;若继续持有,期权价值即为继续持有该期权的期望收益它是个条件期望,依赖于下一时点期权决策的价值,需逆向求解,这是一般的monte carlo模拟法无法做到的。

然而通过实证研究发现,只要标的资产价格过程具有马尔科夫性,拟合的条件期望函数可用多个不同阶的拉格朗日多项式线性组合而成,根据标的变量个数的不同,选择不同个数的多项式的线性组合。

因此,我们将所有(m条)样本路径在时点tn的价格stn和stn2为解释变量,将对应样本路径上的期望收益作为被解释变量,建立如下线性回归模型:将各个资产价格样本路径带入到回归方程,就可得到期权在各个时点继续持有的价值无偏估计。

美式期权的正则隐含二叉树定价新法

美式期权的正则隐含二叉树定价新法

美式期权的正则隐含二叉树定价新法自世界上第一个衍生产品出现后,衍生产品及衍生产品市场的发展一直没有停下脚步。

从期权交易开始起,期权的定价问题就被提上了日程。

期权立足于众多衍生产品的核心,其定价问题更是核心中的核心。

期权定价理论是现代金融学理论的重要组成部分,其作用不可估量。

历史上第一位研究期权定价问题的人是法国数学家Louis Bachelier。

他将数学的方法融入到了现代金融学之中。

他的《投机交易理论》是期权定价理论的开山之作,奠定了现代期权定价理论的基础,被公认为现代金融学的里程碑。

而1973年,由Fischer Black、Myron Scholes和Robert Merton三位教授提出的Black-Scholes模型则是现代金融学的另一里程碑,它形成了期权定价理论的核心,并开创了期权定价理论的新革命。

此模型一经提出,就得到了学术圈与实务界的广泛使用,且随后多年里,大多学者都是围绕此理论而展开进一步深入研究的。

由于它对期权定价理论的发展功不可没,1997年被光荣地授予了诺贝尔经济科学奖。

继Black-Scholes模型之后又发展出来两种定价方法——等价鞅方法和数值计算方法,这两者都极大地丰富了期权的定价理论,他们与Black-Scholes模型统称为期权定价理论的三大核心定价框架。

在期权定价中,往往涉及到一类很重要的问题,那就是如何解决美式期权的定价问题,且在实际中,交易的期权大多也为美式期权。

而我们也知道,经过理论与实践验证,虽然Black-Scholes模型很好的解决了欧式期权的定价问题并给出了欧式期权的解析表达式,但对于具有在期权有效期内可以任意提前执行特质的美式看跌期权而言,它似乎并不是那么给力。

因为无法确定美式看跌期权最优执行的边界,Black-Scholes模型就无法给出明确的定价结果。

于是,围绕着美式期权所固有的特性,也产出了许多定价美式期权的比较经典的方法。

上面提到的数值计算方法就是其中的一种。

美式看跌期权定价的二叉树方法中的几个不等式

美式看跌期权定价的二叉树方法中的几个不等式

美式看跌期权定价的二叉树方法中的几
个不等式
美式期权定价的二叉树方法既考虑的期权的价值,也考虑了未来的期
权价格的变化。

其中,一般包含两个基本不等式,如此可以找到更优的期
权定价解答;这两个不等式就是“中值不等式”(Median Inequality)和“最大不等式”(Maximum Inequality)。

首先,中值不等式(Median Inequality)源自于当价格发生变动时考
虑期权价值不会低于前一个时间段的价值。

它可以表述为:V(T) ≤ V(T-1),其中V(T)为时间T的期权价格,V(T-1)为时间T-1的期权价格。

这种
情况也适用于期权看跌,声明为:K-V(T) ≤ K-V(T-1)。

其次,最大不等式(Maximum Inequality)源自于期权价格不会高于
某个有限的上限。

它可以表述为:V(T) ≥ K,其中V(T)为时间T的期权价格,K为期权价格上限。

此外,期权看跌也可以用此不等式来表述,声明为:K-V(T) ≥ K。

这两个基本不等式在美式期权定价二叉树法中起到至关重要的作用,
它们可以帮助我们确定期权价格的有限范围,避免可能出现的价格夸大或
下跌的情况。

同时,它们可以帮助我们从期权的历史表现中推导出比较准确的期权定价解。

第6章二叉树模型与美式期权(金融工程与风险管理-南京

第6章二叉树模型与美式期权(金融工程与风险管理-南京

ct
er d ud
e r
(1
er d ud
)cd er
[ pcu (1 p)cd ]er
13
Dicussion: Risk-neutral probability
▪ 风险中性世界,不必考虑风险,这等价于假设投资者是风 险中性的。
▪ 若在期初构造如下组合:以S的价格买入N股股票,同时 以c的价格卖出1个期权,则该组合的投资成本为NS-c必 然等于B。
(dcu ucd ) /[(u d )er ]
8
▪ 由此得到的组合 NS B称为合成期权(synthetic option),
由无套利定价原则,在当前时刻t买权的价值为
ct NS B
cu cd (u d )S
S
dcu (u
d
ucd )er
cu cd
dcuer ud
ucd er
▪ 若sT=su
vu [(cu cd ) /(su sd )]su cu Ber
若sT=Sd
vd [(cu cd ) /(su sd )]sd cd Ber
14
▪ 投资者虽然投资于有风险的股票和期权,但是由 二者构成的组合NS-c,即相当于投资1个无风险 的证券。 ➢ 组合的贴现率只能是无风险利率
j0
j0
25
recall: binomial distribution
▪ 由于二项式分布计算复杂,为简化计算。当n→∞, 可以用正态分布逼近(定理:独立同分布下的中 心极限定理)。
18
▪ 由1阶段模型可知,在风险中性条件下
cu [ pcuu (1 p)cud ]erh , cd [ pcud (1 p)cdd ]erh
ct [ pcu (1 p)cd ]erh [ p2cuu 2 p(1 p)cud (1 p)2 cdd ]e2rh

欧式看涨期权二叉树定价

欧式看涨期权二叉树定价

欧式看涨期权二叉树定价(含matlab代码和结果图)实验概述本实验首先介绍了二叉树方法的来源和主要理论基础,然后给出期权的二叉树定价方法的基本过程和MATLAB7. 0实现的过程。

19. 2 实验目的(1)了解二叉树的定价机理;(2)掌握用MATLAB7. 0生成股票价格的二叉树格子方法;(3)掌握欧式期权和美式期权的二叉树定价方法。

19. 3 实验工具MATLAB 7. 0。

19. 4 理论要点构造二叉树图(Binomial Tree)是期权定价方法中最为常见的一种。

这个树图表示了在期权有效期内股票价格可能遵循的路径。

二叉树定价方法与风险中性定价理论是紧密联系的。

Cox, Ross & Rubinstein (1979)首次提出了构造离散的风险中性概率可以给期权定价,在此基础上他们给出了二叉树定价方法。

1)一个简单的例子假设当前(3月份)股票的价格So =50元,月利率是25%。

4月份股票价格有两种可能:S高=100元,S低=25元。

有一份看涨期权合约,合约约定在4月份可以以50元价格买进一股股票。

现在考虑一个投资组合,进行几项操作:以价格C卖出3份看涨期权合约;以50元购入2股股票;以25%的月利率借人40元现金,借期为一个月。

根据上述组合,我们可以得到以下到期收益分布表,如表19. 1所示。

表19.1 投资组合的到期收益分布表四月份三月份S低=25元 S高=100元卖出3份看涨期权合约 3C 0 -150买人两股股票 -100 50 200借人现金 40 -50 -50总计 0 0 0由一价定律3C-100+40=0,可得C= 20元,即为期权的价格。

这个例子说明,可以用一个相当简单的方法为期权定价,唯一需要做的是假设对投资者而言不存在套利机会。

我们可以通过某种方式构造一个股票和期权的组合,使得在4月份该组合的价值是确定的。

于是我们可以说该组合无风险,它的收益率一定等于无风险收益率。

简述期权定价的二叉树模型微分部分处理流程

简述期权定价的二叉树模型微分部分处理流程

简述期权定价的二叉树模型微分部分处理流程下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!本店铺为大家提供各种类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you! In addition, this shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!期权定价的二叉树模型微分部分处理流程在期权定价的二叉树模型中,微分部分处理是非常关键的一部分。

欧式与美式期权二叉树定价及程序实现.doc

欧式与美式期权二叉树定价及程序实现.doc

姓名:卢众专业:数学与应用数学学号: 08101116指导老师:许志军2011 年 6 月 3 日目录一、期权二叉树定价简介 (3)二、假设 (3)三、符号说明 (3)四、欧式二叉树模型 (4)1、一步二叉树模型 (4)2、风险中性定价原理 (5)3、两步二叉树模型 (6)4、多步二叉树模型 (6)五、美式二叉树模型 (7)1、单步二叉树 (7)2、多步二叉树 (8)六、对于其他标的资产的期权的定价 (9)1、支付连续股息收益率股票期权的定价 (9)2、股指期权期权的定价 (10)3、货币期权 (10)4、期货期权 (10)七、实例解析 (10)八、程序 (11)一、期权二叉树定价简介期权定价领域中一个有用并常见的工具是所谓的二叉树方法,这里的二叉树是指代表在期权期限内可能会出现的股票价格变动路径的图形,这里股票价格被假定为服从随机漫步,在树形的每一步,股票价格具有一定的概率会向上移动一定的比率,同时股票价格也具有一定的概率会向下移动一定的比率。

在极限状况,即步长足够小时,二叉树中的股票价格趋于对数正态分布,而对数正态分布正式布莱克-斯科尔斯模型关于股票价格的假设。

二、假设1、市场上无套利机会存在;2、所有的数据来源可靠;三、符号说明编号 符号 意义1 r 无风险利率2 u 股票上涨比率3 d 股票下跌比率4 0S股票初始价格 5 Λ,,,d u f f f 期权价值 6 t 时间步长 7 ∆ 股票数量8 p 股票上涨的概率 9 δ 股票的波动大小 10 1H 股票在初始时刻价格 112H期权的执行价格四、欧式二叉树模型100.10.20.30.40.50.60.70.80.910.10.20.30.40.50.60.70.80.91生的分枝一个时间步长,图8.1表示的二叉树称为一步(one-step )二叉树。

这是最简单的二叉树模型。

一般地,假设一只股票的当前价格是0S ,基于该股票的欧式期权价格为f 。

MATLAB实现二叉树期货定价

MATLAB实现二叉树期货定价
T
min z 0T λ 0
s.t.
T B1 λ E (R)
λ :取值范围无限制
其中
11 B n1
T 1
nk
1k
即对偶问题的解为 0,而且 λ (0 , 1 , 2 , , k ) 可以取任何值,则原问题的最大值不大于 0。由于 w (0,0,
,0) 是原问题的一个可行解,此时目标函数值为 0,因此也是最优解。
对偶问题的约束条件第 i 个方程就是
E ( Ri ) 0 i11 i 22
ik k
(线性空间方法) 沿用上述记号。如果资产
则由无套利假设,必须有 E (R) w 0 。向量组 {1, β1 , β2 ,
T
, βk } 线性无关,由这 k 1 个向

量作为基生成一个 k 1 维子空间 V 。与这个子空间 V 中任何向量均正交的所有向量构成的 正交子空间记为 V ,则显然 w ( w1 , w2 , , wn ) 是正交子空间 V 的元素,这两个子空间
T

的 维 数 相 加 为 n 。 而 由 E ( R ) w 0可 知 , E ( R ) V , 故 存 在 唯 一 k 1 维 向 量
end end price=la(1,1)
美式看跌期权:
function [price,la]=laamput(S0,K,r,T,sigma,N) deltaT=T/N;u=exp(sigma*sqrt(deltaT));d=1/u; p=(exp(r*deltaT)-d)/(u-d);la=zeros(N+1,N+1); for j=0:N la(N+1,j+1)=max(0,-S0*(u^j)*(d^(N-j))+K); end for i=N-1:-1:0 for j=0:i la(i+1,j+1)=max(exp(-r*deltaT)*(p*la(i+2,j+2)+(1-p)*la(i+2,j+1)),K-S0 *u^j*d^(1-j)); end end price=la(1,1)

期权定价matlab程序

期权定价matlab程序

1.三叉树法matlab程序%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Computes the Boyle (1986) Trinomial Tree for American Call/Put Option Values based% on the following inputs:% CallPut = Call = 1, Put = 0% AssetP = Underlying Asset Price% Strike = Strike Price of Option% RiskFree = Risk Free rate of interest% Div = Dividend Yield of Underlying% Time = Time to Maturity% Vol = Volatility of the Underlying% nSteps = Number of Time Steps for Trinomial Tree to take %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%CallPut=0; %Call = 1, Put = 0AssetP=50; %Underlying Asset PriceStrike=50; %Strike Price of OptionRiskFree=0.1; %Risk Free rate of interestDiv=0; %Dividend Yield of UnderlyingTime=5/12; %Time to MaturityVol=0.4; %Volatility of the UnderlyingnSteps=200; %Number of Time Steps for Trinomial Tree to take %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% dt = Time / nSteps; % Allocates the time stepscc = RiskFree - Div; % Specifies the cost of carry (r - D)if CallPutb = 1;endif ~CallPutb = -1;endRR = exp(RiskFree * dt);Up = exp(Vol * sqrt(2 * dt)); % The magnitude of an up movementDown = 1 / Up; % The magnitude of a down movement%%% Specifies the probability of up, down and mid moves for trinomial treeP_up = ((exp(cc * dt / 2) - exp(-Vol * sqrt(dt / 2))) / (exp(Vol * sqrt(dt / 2)) - exp(-Vol * sqrt(dt / 2)))) ^ 2;P_down = ((exp(Vol * sqrt(dt / 2)) - exp(cc * dt / 2)) / (exp(Vol * sqrt(dt / 2)) - exp(-Vol * sqrt(dt / 2)))) ^ 2;P_mid = 1 - P_up - P_down;Df = exp(-RiskFree * dt);% Sets up the asset movements on the trinomial treefor i = 0:(2 * nSteps)State = i + 1;Value(State) = max(0, b * (AssetP * Up ^ max(i - nSteps, 0) * Down ^ max(nSteps * 2 - nSteps - i, 0) - Strike));end% Works backwards recursively to determine the price of the optionfor TT = nSteps - 1:-1:0for i = 0:(TT * 2)State = i + 1;Value(State) = (P_up * Value(State + 2) + P_mid * Value(State + 1) + P_down *Value(State)) * Df;endendTrinomial = Value(1)2.隐式差分法matlab程序unction amoption(s0,E,rf,sigma,T,dt,ds,smax) %%%%%%%%%%%%%%%%%%%%%%%%%%%% 隐式法求解美式看跌期权%%%%%%%%%%%%%%%%%%%%%%%%%%% 输入参数说明:% s0 0时刻股价% E 执行价% rf 无风险利率% T 到期日(单位:年)% sigma 股票波动的标准差% smax 股票最大值% ds 股票价格离散步长% dt 时间离散步长%%%%%%%%%%%%%%%%%%%%%%%%%% 初始化% %%%%%%%%%%%%%%%%%%%%%%%%%M=round(smax/ds);N= round(T/dt);ds=smax/M; % 重新确定股票价格步长dt=T/N; % 确定时间的步长%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%for j=1:Ma(j)=0.5*rf*j*dt-0.5*sigma^2*j^2*dt;b(j)=1+sigma^2*j^2*dt+rf*dt;c(j)=-0.5*rf*j*dt-0.5*sigma^2*j^2*dt;end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%L=zeros(M-1,M-1);L(1,1)=b(1);L(1,2)=c(1); % 边界条件L(M-1,M-2)=a(M-1); L(M-1,M-1)=b(M-1); % 边界条件for j=2:M-2L(j,j-1)=a(j);L(j,j)=b(j);L(j,j+1)=c(j);end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for j=1:M-1f(j,N+1)=max(E-j*ds,0);endfor i=N:-1:1F(1)=f(1,i+1)-a(1)*E;F(2:M-1)=f(2:M-1,i+1); % 终值条件f(1:M-1,i)=L^(-1)*F';for j=1:M-1 % 判断是否行权if f(j,i)<E-j*dsf(j,i)=E-j*ds;endendendjdown=floor(s0/ds);jup=ceil(s0/ds);if jdown==jupprice=f(jdown,1)+(s0-jdown*ds)*(f(jup+1,1)-f(jup+1,1))/ds end3. 显式有限差分法matlab %%%%%%%%%%%%%%%%%%%%%%%%%%%%显式差分法求解美式看跌期权%%%%%%%%%%%%%%%%%%%%%%%%%%%% 输入参数说明:% s0 0时刻股价% E 执行价% rf 无风险利率% T 到期日(单位:年)% sigma 股票波动的标准差% smax 股票最大值% ds 股票价格离散步长% dt 时间离散步长%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 初始化%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%s0=50;E=50;rf=0.1;sigma=0.4;T=5/12;dt=T/10;ds=5;smax=100;M=round(smax/ds);N= round(T/dt);ds=smax/M; % 重新确定股票价格步长dt=T/N; % 确定时间的步长%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% veti=1:N;vetj=1:M;a=1/(1+rf*dt)*(-1/2*rf*vetj*dt+0.5*sigma^2*vetj.^2*dt); b=1/(1+rf*dt)*(1-sigma^2*vetj.^2*dt);c=1/(1+rf*dt)*(1/2*rf*vetj*dt+0.5*sigma^2*vetj.^2*dt); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% L=zeros(M-1,M-1);L(1,1)=b(1);L(1,2)=c(1); % 边界条件L(M-1,M-2)=a(M-1); L(M-1,M-1)=b(M-1); % 边界条件for j=2:M-2L(j,j-1)=a(j);L(j,j)=b(j);L(j,j+1)=c(j);end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% f1=zeros(M-1,N+1);f1(:,N+1)=max(E-vetj(1:M-1)*ds,0);f0=zeros(M-1,1);f0(1,1)=a(1)*E;for i=N:-1:1f1(:,i)=L*f1(:,i+1)+f0;for j=1:M-1 % 判断是否行权if f1(j,i)<=E-vetj(j)*ds;f1(j,i)=E-vetj(j)*ds;endendendf2(1,1:N+1)=50;f2(2:M,1:N+1)=f1;f2(M+1,1:N+1)=0;jdown=floor(s0/ds);jup=ceil(s0/ds);if jdown==jupprice=f2(jdown+1,1)+(s0-jdown*ds)*(f2(jup+1,1)-f2(jup+1,1))/ds end4. 用C-N有限差分法为美式看跌期权定价matlabfunction price = AmPutCK(S0,K,r,T,sigma,Smax,dS,dt,omega,tol)M = round(Smax/dS); dS = Smax/M; % 建立网格N = round(T/dt); dt = T/N;oldval = zeros(M-1,1); %Gauss-Seidel更新向量newval = zeros(M-1,1);vetS = linspace(0,Smax,M+1)';veti = 0:M; vetj = 0:N;% 建立边界条件payoff = max(K-vetS(2:M),0);pastval = payoff; % values for the last layerboundval = K*exp(-r*dt*(N-vetj)); % 边界值% 建立系数矩阵和式子右边矩阵alpha = 0.25*dt*( sigma^2*(veti.^2) - r*veti );beta = -dt*0.5*( sigma^2*(veti.^2) + r ); gamma = 0.25*dt*( sigma^2*(veti.^2) + r*veti );M2 = diag(alpha(3:M),-1) + diag(1+beta(2:M)) + diag(gamma(2:M-1),1); % 使用SOR方法求解线性方程组aux = zeros(M-1,1);for j=N:-1:1aux(1) = alpha(2) * (boundval(1,j) + boundval(1,j+1));% 建立右端矩阵并进行初始化rhs = M2*pastval(:) + aux;oldval = pastval;error = realmax;while tol < errornewval(1) = max ( payoff(1), ...oldval(1) + omega/(1-beta(2)) * (...rhs(1) - (1-beta(2))*oldval(1) + gamma(2)*oldval(2)));for k=2:M-2newval(k) = max ( payoff(k), ...oldval(k) + omega/(1-beta(k+1)) * (...rhs(k) + alpha(k+1)*newval(k-1) - ...(1-beta(k+1))*oldval(k) + gamma(k+1)*oldval(k+1)));endnewval(M-1) = max( payoff(M-1),...oldval(M-1) + omega/(1-beta(M)) * (...rhs(M-1) + alpha(M)*newval(M-2) - ...(1-beta(M))*oldval(M-1)));error = norm(newval - oldval);oldval = newval;endpastval = newval;endnewval = [boundval(1) ; newval ; 0]; % 加入缺少的值% 返回价格,这个价格可能因为初始资产价格在网格外而由线性插值生成。

运用Matlab基于LSM方法对美式期权定价的新探究

运用Matlab基于LSM方法对美式期权定价的新探究

运用Matlab基于LSM方法对美式期权定价的新探究作者:刘海永严红来源:《金融发展研究》2013年第12期摘要:传统期权定价方法是通过主观假定初始价格、执行价格、期限、波动率、无风险利率等条件来对期权进行定价,很少联系实际的期权市场报价对期权进行定价。

本文根据股票期权市场报价,通过Matlab快速方便地求解出隐含的波动率和无风险利率,并在此基础上运用Matlab基于最小二乘蒙特卡洛模拟(LSM)方法对该股票的美式期权进行定价。

本文揭示了如何根据期权市场报价实现隐含波动率和无风险利率的求解,进而结合LSM方法对美式期权进行定价的一种新方法。

此外,本文对LSM方法的改进技术也进行了探讨。

关键词:LSM方法;美式期权定价;隐含波动率;无风险利率中图分类号:F830.91 文献标识码:A 文章编号:1674-2265(2013)12-0020-05一、引言1973年之前,理论上对于期权定价一直找不到令人满意的模型,主要是由于对标的资产价格的变动过程无法用适当的随机过程来描述。

1973年布莱克、斯科尔斯(Black、Scholes)两位学者将标的资产的价格假设为几何布朗运动,并由此获得了欧式看涨、看跌期权的定价模型,从此期权市场在全球范围内得到了快速的发展。

对于欧式期权的定价,可采用树形法,Black-Scholes模型(以下简称B-S模型)、有限差分法、蒙特卡洛模拟法;对于美式期权的定价,树形法、有限差分法也适用,蒙特卡洛模拟方法在欧式衍生产品的定价方面获得了有效应用,但其采用的是正向求解的方法,这就限制了将蒙特卡洛模拟方法运用于具有后向迭代搜索特征的美式期权定价问题。

1993年蒂利(Tilley)提出了美式期权具有提前执行的特征后,使用蒙特卡洛模拟方法为美式衍生产品进行定价的问题才得到初步解决。

巴里康和马蒂诺(Barraquand和Martineau,1995)将资产价格的状态空间加以分隔,得出每一条路径在不同区域间移动的概率,然后使用类似于二叉树模型的方式进行逆推求解。

MATLAB程序设计 BS公式与二叉树模型—期权定价与分析

MATLAB程序设计 BS公式与二叉树模型—期权定价与分析

BS 公式与二叉树模型—期权定价与分析什么是期权?期权就是当什么时候或条件下,你有什么权力。

教课书上的期权似乎离我们比较遥远,或仅限于金融市场。

但如果仔细想想,车险或疾病保险似乎也是一种期权,期权本质是一种选择权。

例如,商业医疗保险,客户每年缴纳一定的保费,获得在生病时获取一定补偿的权利。

公司期权,若工作业绩达到某个标准(付出),得到公司多少多上的期权。

就如面临选择,需要权衡一样;各种期权也需要衡量(定价)。

1 Black-Scholes 期权定价公式1973年,芝加哥大学教授Black 和MIT 教授Scholes 在美国“政治经济学报”(Journal of Political Economy )上发表了一篇题为“期权定价和公司负债”(The pricing of Options and Corporate Liabilities )的论文;同年,哈佛大学教授Merton 在“贝尔经济管理科学学报”上发表了另一篇论文“期权的理性定价理论”(Theory of rational option pricing ),奠定了期权定价的理论性基础,B-S 期权定价公式诞生了。

1.1布朗运动从概率论的角度讲,标的资产价格的变化是一个随机过程。

因此,了解和掌握这个随机过程的基本特征,是期权定价理论首先要回答的基本问题。

例如,股票价格变动服从几何布朗运动或对数正态分布,是Black 和Scholes 在推导B-S 期权定价模型时用到的最基本的假设。

一般维纳过程:设为布朗运动,则称 为一般化的维纳过程(布朗运动)。

称为瞬时期望漂移率,为瞬时标准差,它们都是给定的参数,是连续的维纳过程。

生成布朗运动的随机序列,作者编写了函数BrownM 可以生成一维或者二维的随机序列,具体使用方法为:function data=BrownM(Npoints,Mean,Std,Opt) 输入参数:Npoints :生成序列的节点数 Mean :正态分布均值 Std : 正态分布标准差Opt : 选择项Opt=1生成一维随机数,Opt=2生成二维随机数 输出参数:Data :服从布朗运动一维或者二维的随机序列 BrownM 源码:function data=BrownM(Npoints,Mean,Std,Opt) %code by ariszheng@ %2009-6-13 dt=1;%dt 时间变化%选择项Opt=1生成一维随机数,Opt=2生成二维随机数 if Opt==1}{(),0B t t ≥()()dS t dt dB t μσ=+μσ()B t%%% standard Brownian motiondata=[0 cumsum(dt^0.5.*random('Normal',Mean,Std,1,Npoints))];%random('Normal',Mean,Std,1,Npoints)%生成服从正态分布的随机数,Mean均值,Std方差,1,Npoints 一行Npoints个%cumsum为累加函数%画图figureplot(0:Npoints,data);elseif Opt==2data=cumsum([zeros(1,3);dt^0.5*random( 'Normal' ,Mean , Std ,Npoints-1,3 )]);%画图figureplot3(data(:, 1), data(:, 2), data(:, 3), 'k');%根据数值设定画图点的颜色pcol = (data-repmat(min(data), Npoints, 1))./ ...repmat(max(data)-min(data), Npoints, 1);%叠加画图hold on;scatter3(data(:, 1), data(:, 2),data(:, 3), ...10, pcol, 'filled');%显示网格grid on;hold off;elseerror('Opt=1 or Opt=2')end注视:累加运算Cumsum 例如A=[1,2,3,4] ;Cumsum(A)=[1,3,6,10]BrownM使用实例:M文件BrownMtest.M%test BrownM%生成1000个数据Npoints=1000;%均值为0Mean=0;%方差为1Std=1;%生成一维随机数Opt=1;dataA=BrownM(Npoints,Mean,Std,Opt);% Opt=2;% dataB=BrownM(Npoints,Mean,Std,Opt);结果图:布朗运动一维随机序列与布朗运动二维随机序列图1布朗运动一维随机序列图图2布朗运动二维随机序列图1.2 B-S 定价模型即著名的Black-Scholes 期权定价公式,欧式买权或卖权解的表达式:其中,Black-Scholes 期权定价模型将股票期权价格的主要因素分为五个:()12()()r T t t t c S N d Xe N d --=-()21[1()][1()]r T t t p Xe N d S N d --=⨯--⨯-2121/221/221[ln()()()]2[()]()t S r T t X d T t d d T t σσσ++-=-=--:标的资产市场价格:执行价格:无风险利率:标的资产价格波动率 :距离到期时间。

欧式看涨期权二叉树定价

欧式看涨期权二叉树定价

阅读使人充实,会谈使人敏捷,写作使人精确。

——培根欧式看涨期权二叉树定价(含matlab代码和结果图)实验概述本实验首先介绍了二叉树方法的来源和主要理论基础,然后给出期权的二叉树定价方法的基本过程和MATLAB7. 0实现的过程。

19. 2 实验目的(1)了解二叉树的定价机理;(2)掌握用MATLAB7. 0生成股票价格的二叉树格子方法;(3)掌握欧式期权和美式期权的二叉树定价方法。

19. 3 实验工具MATLAB 7. 0。

19. 4 理论要点构造二叉树图(Binomial Tree)是期权定价方法中最为常见的一种。

这个树图表示了在期权有效期内股票价格可能遵循的路径。

二叉树定价方法与风险中性定价理论是紧密联系的。

Cox, Ross & Rubinstein (1979)首次提出了构造离散的风险中性概率可以给期权定价,在此基础上他们给出了二叉树定价方法。

1)一个简单的例子假设当前(3月份)股票的价格So =50元,月利率是25%。

4月份股票价格有两种可能:S=100元,S=25元。

有一份看涨期权合约,合约约定在4月份低高可以以50元价格买进一股股票。

现在考虑一个投资组合,进行几项操作:以价格C卖出3份看涨期权合约;以50元购入2股股票;以25%的月利率借人40元现金,法拉兹·日·阿卜——学问是异常珍贵的东西,从任何源泉吸收都不可耻。

.培根阅读使人充实,会谈使人敏捷,写作使人精确。

——借期为一个月。

所示。

根据上述组合,我们可以得到以下到期收益分布表,如表19. 1 投资组合的到期收益分布表表19.1四月份三月份元S=100 S=25元高低-150 0 卖出3份看涨期权合约3C200 50 -100 买人两股股票-5040 -50 借人现金总计00 0这个例子说明,元,即为期权的价格。

由一价定律3C-100+40=0,可得C= 20唯一需要做的是假设对投资者而言不存可以用一个相当简单的方法为期权定价,月份使得在4在套利机会。

期权定价的二叉树模型

期权定价的二叉树模型

03
二叉树模型在期权定价中 的应用
二叉树模型在欧式期权定价中的应用
欧式期权定义
二叉树模型原理
欧式期权是一种只能在到期日行权的期权。
二叉树模型是一种离散时间模型,通过构造 一个二叉树来模拟股票价格的演变过程。
模型参数
定价过程
包括无风险利率、股票波动率、期权行权价 等。
从到期日逆推至起始时间,考虑各种可能的 价格路径,计算期权的预期收益,并使用无 风险利率折现至起始时间。
与其他理论的结合
二叉树模型与其它金融理论的结合也是理论研究的一个重要方向,如将二叉 树模型与随机过程理论、博弈论等相结合,以提供更深入、更全面的分析框 架。
二叉树模型的应用研究进展
扩展到其他金融衍生品
二叉树模型在期权定价方面的应用已经非常成熟,研究者们正在将其应用于其他金融衍生品的定价,如期货、 掉期等。
案例一:某公司股票期权定价
背景介绍
某上市公司股票期权激励计划需要为期权定价,以确定向员工发 放的期权数量和行权价格。
模型应用
根据二叉树模型,预测股票价格的上涨和下跌幅度,并计算期权 的内在价值和时间价值。
结论分析
根据计算结果,确定期权的行权价格和数量,实现了员工激励与公 司发展的双赢。
案例二:某交易所债券期权定价
调整利率和波动率
根据市场数据和实际情况,调整利率和波动率的参数,可以提 高模型的拟合度。
模型的选择与比较
1 2
基于误差
比较不同模型的预测误差,选择误差最小的模 型。
基于风险
比较不同模型的风险指标,选择风险最小的模 型。
3
基于解释性
选择更具有解释性的模型,以便更好地理解市 场行为和风险。
05

期权实验课实验报告

期权实验课实验报告

学号姓名专业期权实验课实验报告一、实验目的利用excel实现期权的二叉树和B-S定价,利用MATLAB实现期权的二叉树定价,对三种方法进行比较。

二、实验过程假设当前股价S0=13.57 ,无风险收益率(连续复利)r=0.0286,波动率标准差σ=0.4996距到期日时间T(年)=0.2521,起始时间为2015/6/1,期权到期时间为2015/9/1,股票分别在2015/7/1和2015/8/1发放2元股息。

(一)期权二叉树定价的excel实现本表可实现至多256步二叉树对有或无红利的欧式或美式的看涨或看跌期权的价格计算。

1、基本数据输入区图1 基本数据输入区基本数据输入区包含当前股价S0、无风险收益率r(连续复利)、距到期日时间T(年)、波动率标准差σ、执行价格K、计算步数(<=256)、期权类型选择、起始时间、到期时间、计数规则。

(1)距到期日时间T(年)通过YEARFRAC公式自动计算而得,对应的输入数据为起始时间、到期时间、计数规则(E4:E6),使用绝对地址。

计数规则通过选择控件实现,如图2所示。

选择开发工具->插入->列表框(窗体控件),在F6:F10分别输入“US (NASD) 30/360”、“实际天数/实际天数”、“实际天数/360”、“实际天数/365”、“欧洲30/360”,右键列表框,点击设置控件格式,如图2所示,在数据源区域选择F6:F10,单元格链接选择G6,均使用绝对地址,下拉显示项数输入5,则选择控件设置完毕。

在选择控件下拉选项中选择“US (NASD) 30/360”,发现G6显示为1,实际“US (NASD) 30/360”在YEARFRAC 函数中对应0,故在E6中输入公式=$G$6-1。

为使界面整洁,将F6:F10、G6中的内容颜色设置为页面背景颜色,从而将内容隐藏。

图2 选择控件设置(2)期权类型选择使用组合控件,设置方式与选择空间类似。

欧式看涨期权二叉树定价说课讲解

欧式看涨期权二叉树定价说课讲解

欧式看涨期权二叉树定价(含matlab代码和结果图)实验概述本实验首先介绍了二叉树方法的来源和主要理论基础,然后给出期权的二叉树定价方法的基本过程和MATLAB7. 0实现的过程。

19. 2 实验目的(1)了解二叉树的定价机理;(2)掌握用MATLAB7. 0生成股票价格的二叉树格子方法;(3)掌握欧式期权和美式期权的二叉树定价方法。

19. 3 实验工具MATLAB 7. 0。

19. 4 理论要点构造二叉树图(Binomial Tree)是期权定价方法中最为常见的一种。

这个树图表示了在期权有效期内股票价格可能遵循的路径。

二叉树定价方法与风险中性定价理论是紧密联系的。

Cox, Ross & Rubinstein (1979)首次提出了构造离散的风险中性概率可以给期权定价,在此基础上他们给出了二叉树定价方法。

1)一个简单的例子假设当前(3月份)股票的价格So =50元,月利率是25%。

4月份股票价格有两种可能:S高=100元,S低=25元。

有一份看涨期权合约,合约约定在4月份可以以50元价格买进一股股票。

现在考虑一个投资组合,进行几项操作:以价格C卖出3份看涨期权合约;以50元购入2股股票;以25%的月利率借人40元现金,借期为一个月。

根据上述组合,我们可以得到以下到期收益分布表,如表19. 1所示。

表19.1 投资组合的到期收益分布表四月份三月份S低=25元S高=100元卖出3份看涨期权合约3C 0 -150买人两股股票-100 50 200借人现金40 -50 -50总计0 0 0由一价定律3C-100+40=0,可得C= 20元,即为期权的价格。

这个例子说明,可以用一个相当简单的方法为期权定价,唯一需要做的是假设对投资者而言不存在套利机会。

我们可以通过某种方式构造一个股票和期权的组合,使得在4月份该组合的价值是确定的。

于是我们可以说该组合无风险,它的收益率一定等于无风险收益率。

二叉树方法正是基于上述思想构造了二项分布下的风险中性概率。

美式期权二叉树定价及matlab程序

美式期权二叉树定价及matlab程序

美式期权二叉树定价及matlab程序金融随机分析课程美式期权的二叉树定价1、对于连续随机游走:dS,,Sdt,,SdZ,t 可以用离散格随机游走模型来表示,即标的资产的价格只在离散时间点,,t,t,t,t2,3,…,N取值,表示很小但非无穷小的时间步长;如果标的资产在时mm,t,t刻m的价格为,那么在时刻(m+1)其价格有两种可能的值:和SuS(u,1) mmm,并且标的资产的价格从上升到的概率为p。

SuSdS(d,1)2、风险中性假设在风险中性条件下,随机微分方程:dS,,Sdt,,SdZ其中的可以用r来表示。

即 ,dS,rSdt,,SdZm,t,tV风险中性条件下,在时刻m衍生证券的价格是其在时刻(m+1)的期望值m,r,tm,1按照无风险利率r贴现所得到的,即。

V,E[eV]3、期权的计算期权的计算是从二叉树图的末端(时刻T)开始向后倒退进行的。

T时刻期N权的价值已知。

对于一个看涨期权来说,有 VnNN V,max(S,K,0)nn对于一个看跌期权来说,有NN V,max(K,S,0)nn其中,n=0,1,2,…,N, K为执行价格。

T,,t在风险中性条件下,时刻的每个结点上的期权值都可以用T时刻期权,tT,2,t价值的期望值在时间内用利率r贴现求出;同理,时刻的每个结点的T,,t,t期权值可以用时刻的期望值在时间内用利率r贴现求出,其它结点依次类推。

而如果对于美式期权,必须检查二叉树图的每个结点,以确定提前执行是否,t比继续持有时间更为有利。

最后,向后倒推通过所有结点就求出了当前时刻V的期权价值。

0下面对美式期权定价问题进行研究:美式看涨期权被提前执行时,其内涵价值为mm n=0,1,2,…,m V,max(S,K,0)nn对于看跌期权来说,有mm n=0,1,2,…,m V,max(K,S,0)nn,t,t在m时刻从节点(m,n)向(m+1)时刻的结点(m+1,n+1)移动的概率为p;,t向(m+1)时刻的结点(m+1,n)移动的概率为1-p。

期权的定价方法概述及利用matlab计算期权价格

期权的定价方法概述及利用matlab计算期权价格

c =
斋 ( ] ( 害

公式中 是 的均值。 2 在计算 出股票价格 的 日波动牢之后 . 】 ) ‘ 以利用 下面的公式计算 股 票价 格 的 年波 动 率 。 股票价格年波 动率 ): 股票 价格 日波动率 x根号 内每年 的交易 日 数。 我们采用恒生指数2 1/ / — 0 0 5 5 00 2 6 2 1 0 / 的收盘指数来计算它的波动 02 / 2 率。经计算并适 当调整可得
C J N 1 - 10 - U - 0 22 0
1期权概 述 期权是一种独特 的衍生金融产 品,实质上是将权利 和义务分开进行 定价 ,使得权利的受让人在规定时间内对于是否进行交 易,行使其权利 具有选择权 ,而义务方必须履行其义务 。它使买方能够避免坏的结果 , 同时 , 又能从好的结果中获益。
1 股票价格波动率a ) 的计算疗法是: 以一定时间内的股票价格为基础 , 设 十) 1 为观察次数, 为第i 『间隔末 的股票价格 . 个时 订 1 .令U= nSS 1, l(/ 一) 因为s- ,所以 是第j 时间间隔后 的连续复利收益, 的标准差即 .s, 个 为该段 时. 间内股票价格的 日波动率 则什计值为
月份 6 月 7 月 8 月
1上升百分 比: 4 + t
出】下降百分  ̄-- + L- h
其中:e 自 是 然对数 ;o 为标的资产连续复利收益率的标准筹 ; 为以 年表示的时段长度 。 22 Ba k S h ls 权 定 价 模 型 . lc - c oe 期 1 )假设条件 Bs — 微分方程的推导是建立在以下假设的基础上的 :①股价遵 循预 期收益率 和标准差a 为常数的马尔科夫随机过程 ;②允许使用全部所得 卖空衍生证券 ; ③没有交易费用或税金 ,且所有汪券高度可分 ; 在衍 ④ 生证券的有效期内没有支付红利 ; ⑤不存在无风险的套利机会 ; 证券 ⑥ 交易是连续 的,股票价格连续平滑变动;⑦无风险利率r 为常数 ,能够用 同一利率借入或贷出资金 ;⑧ 只能在交割 日执行期权 。 2)B∞k l —& h1 期 权 定价 公 式 0s e C S (1Xe  ̄ Nd) - - - )

Matlab金融工程教程第6章 金融衍生品计算

Matlab金融工程教程第6章  金融衍生品计算
= blstheta(Price, Strike, Rate, Time, Volatility, Yield) 输入参数同前 输出参数
CallTheta 欧式看涨期权Theta值
PutTheta 欧式看跌期权Theta值
.
8
4.欧式期权Rho值 调用方式 [CallRho, PutRho] = blsrho(Price, Strike, Rate, Time, Volatility, Yield) 输入参数同前 输出参数 CallRho 欧式看涨期权Rho值 PutRho 欧式看跌期权Rho值
输入参数同上
.
27
6.4.2 证券类衍生产品二叉树建立
1.CRR型二叉树函数的调用 调用方式 CRRTree=crrtree(StockSpec,RateSpec,TimeSpec)
输入参数 StockSpec 股票的格式 RateSpec 利率的格式 TimeSpec 时间的离散化方法
输出参数 CRRTree 价格树
无风险利率新格式 无风险利率旧格式
.
20
3.CRR二叉树基本原理
ert pu(1p)d
2 e 2 r t( e 2 t 1 ) p u 2 ( 1 p ) d 2 [ p u ( 1 p ) d ] 2
选择满足下面关系 u 1/d 有
p e rt d ud
u e t
d e t .
Volatility,Flag,DividendRate,Dividend, ExDiv)
输入参数
Price
股票价格
Strike
期权的执行价
Rate
无风险利率
Time
期权存续期
Increment 时间的增量
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

金融随机分析课程
美式期权的二叉树定价
1、对于连续随机游走:
SdZ Sdt dS σμ+=
可以用离散格随机游走模型来表示,即标的资产的价格只在离散时间点t ∆,2t ∆,3t ∆,…,N t ∆取值,t ∆表示很小但非无穷小的时间步长;如果标的资产在时刻m t ∆的价格为m S ,那么在时刻(m+1)t ∆其价格有两种可能的值:)1(>u uS m 和)1(<d dS m ,并且标的资产的价格从m S 上升到m uS 的概率为p 。

2、风险中性假设在风险中性条件下,随机微分方程:
SdZ Sdt dS σμ+=
其中的μ可以用r 来表示。


SdZ rSdt dS σ+=
风险中性条件下,在时刻m t ∆衍生证券的价格m V 是其在时刻(m+1)t ∆的期望值按照无风险利率r 贴现所得到的,即][1+∆-=m t r m V e E V 。

3、期权的计算
期权的计算是从二叉树图的末端(时刻T )开始向后倒退进行的。

T 时刻期权的价值N n V 已知。

对于一个看涨期权来说,有
)0,max (K S V N n N n -=
对于一个看跌期权来说,有
)0,max (N n N n S K V -=
其中,n=0,1,2,…,N, K 为执行价格。

在风险中性条件下,t T ∆-时刻的每个结点上的期权值都可以用T 时刻期权价值的期望值在时间t ∆内用利率r 贴现求出;同理,t T ∆-2时刻的每个结点的期权值可以用t T ∆-时刻的期望值在t ∆时间内用利率r 贴现求出,其它结点依次类推。

而如果对于美式期权,必须检查二叉树图的每个结点,以确定提前执行是否比继续持有t ∆时间更为有利。

最后,向后倒推通过所有结点就求出了当前时刻的期权价值0V 。

下面对美式期权定价问题进行研究:
美式看涨期权被提前执行时,其内涵价值为
)0,max (K S V m n m n -= n=0,1,2,…,m
对于看跌期权来说,有
)0,max (m n m n S K V -= n=0,1,2,…,m
在m t ∆时刻从节点(m,n)向(m+1)t ∆时刻的结点(m+1,n+1)移动的概率为p ;向(m+1)t ∆时刻的结点(m+1,n)移动的概率为1-p 。

假设期权不提前执行,有:
])1([111+++∆--+=m n
m n t r m n V p pV e V 若期权提前执行,必须与内涵价值相比较。

那么,对于看涨期权,有
]})1([),0,m ax {m ax (111+++∆--+-=m n
m n t r m n m n V p pV e K S V 对于看跌期权,有
]})1([),0,m ax {m ax (111+++∆--+-=m n
m n t r m n m n V p pV e S K V 4、计算美式看涨期权的价格的Matlab 实现(基于具体的算例) Matlab 程序如下:
%输入具体参数
S0=100; %当前股价
K=105; %执行价格
r=0.05; %利率
T=1; %期权有效期
sigma=0.3; %波动率
q=0.02; %红利率
n=1000; %步数
dt=T/n; %时间步长
%计算二叉树各参数
u=exp(sigma*sqrt(dt)); %计算上升比率
d=1/u; %计算下降比率
p=(exp((r-q)*dt)-d)/(u-d); %计算上升的概率
%构造二叉树矩阵,i 表示行数,j 表示列数,Sx 为股价矩阵,fx 为期权的内在
价值
for j=1:n+1
for i=1:j
Sx(i,j)=S0*(u^(j-i))*(d^(i-1));
fx(i,j)=max(Sx(i,j)-K,0);
end;
end;
%计算美式期权价格矩阵Afx和欧式期权价格矩阵Efx
for i=1:n+1 %到期时(j=n+1)期权价格
Afx(i,n+1)=fx(i,n+1);
Efx(i,n+1)=fx(i,n+1);
end;
for jj=1:n %倒推前面各期(j=n-1,n-2,…,1)期权价格j=n+1-jj;
for i=1:j
Efx(i,j)=exp(-r*dt)*(p*Efx(i,j+1)+(1-p)*Efx(i+1,j+1));
Afx(i,j)=max(exp(-r*dt)*(p*Afx(i,j+1)+(1-p)*Afx(i+1,j+1)),fx(i,j));
end;
end;
%输出结果
AmeOptionPrice=Afx(1,1)
ErouOptionPrice=Efx(1,1)
AmeOptionPrice = 10.89434691587509
ErouOptionPrice = 10.89432408424911。

相关文档
最新文档