MATLAB实验金融期末复习整理
MATLAB复习知识点

MATLAB复习知识点MATLAB,即Matrix Laboratory的缩写,是一种高级的计算和开发语言。
它是由MathWorks公司开发的一种专为数值计算和科学计算设计的工具。
在工程和科学领域中,MATLAB广泛应用于算法开发、数据可视化、数据分析和数值计算等方面。
在复习MATLAB的知识点时,我们可以从以下几个方面展开讨论:1.MATLAB的基础知识:-MATLAB的基本语法:包括变量的定义、赋值和操作符的使用等。
-MATLAB的数据类型:包括数值型、字符型和逻辑型数据等。
-MATLAB的常用函数:包括数学函数、统计函数和字符串处理函数等。
-MATLAB的控制流语句:包括条件语句、循环语句和函数的使用等。
2.MATLAB的矩阵和向量操作:-矩阵和向量的定义和使用:包括矩阵和向量的表示、创建和访问等。
-矩阵和向量的运算:包括矩阵和向量的加法、减法、乘法和除法等。
-矩阵和向量的转置和逆矩阵:包括矩阵和向量的转置和逆矩阵的计算等。
-矩阵和向量的索引和切片:包括对矩阵和向量的元素进行索引或切片操作等。
3.MATLAB的图形操作:-绘图函数的使用:包括绘制二维和三维图形的函数等。
-图形属性设置:包括修改图形的颜色、线型和坐标轴等属性设置等。
-图形的保存和导出:包括将图形保存为图片或其他格式的文件等。
4.MATLAB的数据处理和分析:-数据导入和导出:包括从文件导入数据和将数据保存到文件等操作。
-数据处理和变换:包括数据排序、筛选、去重和去空值等操作。
-数据统计和分析:包括计算数据的均值、标准差、相关系数和回归等统计分析操作。
5.MATLAB的函数和脚本文件编写:-函数的定义和调用:包括编写自定义函数和调用已有函数等操作。
-脚本文件的编写和调试:包括编写和执行MATLAB脚本文件等操作。
-变量的作用域和数据传递:包括全局变量和局部变量的作用域和数据传递等。
以上只是MATLAB复习的一些基本知识点,实际上,MATLAB还有很多高级功能和工具,如符号计算、图像处理、信号处理和控制系统等。
matlab期末复习题及答案

matlab期末复习题及答案1. MATLAB基础操作在MATLAB中,如何创建一个名为"myMatrix"的3x3矩阵,其元素分别为1, 2, 3, 4, 5, 6, 7, 8, 9?答案:在MATLAB中,可以通过直接输入矩阵元素来创建矩阵。
例如,要创建一个名为"myMatrix"的3x3矩阵,可以使用以下命令:```matlabmyMatrix = [1 2 3; 4 5 6; 7 8 9];```这样,MATLAB就会创建一个3x3的矩阵,其元素按照行顺序排列。
2. 矩阵运算给定两个矩阵A和B,其中A = [1 2; 3 4],B = [5 6; 7 8],计算矩阵A和B的和。
答案:在MATLAB中,可以使用加号(+)来计算两个矩阵的和。
对于给定的矩阵A和B,可以使用以下命令来计算它们的和:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A + B;```执行上述命令后,矩阵C的结果将是:```C = [6 8;10 12];```3. 条件语句编写一个MATLAB脚本,判断一个给定的数n是否为质数,并输出相应的信息。
答案:在MATLAB中,可以使用if-else语句来判断一个数是否为质数。
以下是一个简单的脚本示例:```matlabn = input('请输入一个数:');if mod(n, 2) == 0 && n > 2disp('该数不是质数');elseif n == 1disp('1不是质数');elseisPrime = true;for i = 2:sqrt(n)if mod(n, i) == 0isPrime = false;break;endendif isPrimedisp('该数是质数');elsedisp('该数不是质数');endend```该脚本首先接收用户输入的数n,然后通过一个for循环检查n是否有除了1和它自身以外的因数,从而判断n是否为质数。
Matlab期末复习提纲(答案)

1、图像的最小基本单位:像素2、根据每个像素所代表信息的不同,可将图像分为二值图像、灰度图像、RGB图像以及索引图象、多帧图像3、图像的空间分辨率是指图像中每单位长度所包含的像素或点的数目,常以像素/英寸为单位表示4、当高分辨率下的图像以低分辨率表示时,在同等的显示或者打印输出条件下,图像的尺寸变小,细节变得不明显;而当将低分辨率的图像放大,则会导致图像的细节仍然模糊5、了解相邻像素的概念。
依据标准的不同,我们可以关注像素P的4邻域和8邻域6、常见的几种距离函数:(1)欧氏距离:即距离等于r的像素形成以P为圆心的圆(2) D4距离(街区距离):即距离等于r的像素形成以P为中心的菱形(3) D8距离(棋盘距离):距离等于r的像素形成以P为中心的方形7、表2.5 提取矩阵元素或子块的方法8、表2.11 图像格式转换函数9、读取图像文件:I=imread;显示图像:imshow(I)10、图像和直方图的关系:多对111、图像的点运算:线性变换,对数变换,伽马变换,阈值变换,直方图均衡化,直方图规定化。
12、伽玛变换又称指数变换或幂次变换,是另一种常用的灰度非线性变换。
●γ>1时,图像的高灰度区域对比度得到增强。
●γ<1时,图像的低灰度区域对比度得到增强。
●γ=1时,这一灰度变换是线性的,即不改变原图像。
15、图像平移的变换公式书P68则平移之后的点坐标(x1,y1)变为用矩阵表示为对变换矩阵求逆,可以得到逆变换即16、表4.1 合法值17、图像镜像的变换公式●水平镜像的变换关系为对矩阵求逆得到●竖直镜像变换关系可形式化地描述如下。
逆运算为18、空间域图像增强:图像平滑,图像锐化。
19、图像平滑(低通滤波器),包括平均平滑和高斯平滑,中值滤波 20、图像锐化(高通滤波器),包括梯度算子、拉普拉斯算子、高提升滤波和高斯-拉普拉斯变换21、例5.1中的w 提供了一种平均的加权模式,首先在以点(x ,y )为中心3×3邻域内的点都参与了决定在新图像g 中(x ,y )点像素值的运算;而且所有系数都为1,表示它们在参与决定g (x ,y )值的过程中贡献(权重)都相同;最后前面的系数是要保证整个模板元素和为1,这里应为1/9,这样就能让新图像同原始图像保持在一个灰度范围中(如[0,255])。
matlab实验金融期末复习整理

一、投资组合:在险价值ValueAtRisk=portvrisk(PortReturn, PortRisk, RiskThreshold, PortValue)返回一定的置信水平下,某一投资组合在未来特定的一段时间内的最大潜在损失。
PortReturn%一期内总资产的期望收益PortRisk%总资产的标准差RiskThreshold%表示概率阈值(损失概率),默认值是5%PortValue%表示资产投资组合的总值。
默认值=1例子:已知3种资产组成的投资组合,该投资组合的年回报率为0.29%,标准差为3.08%,资产的总价值为1亿元,概率阈值分别为1%,5%和10%,求该水平下每种资产的Var。
>>PortReturn= 0.29/100;PortRisk = 3.08/100;>>RiskThreshold= [0.01;0.05;0.10];>>PortValue= 1;>>ValueAtRisk= portvrisk(PortReturn,PortRisk,RiskThreshold,PortValue)ValueAtRisk=0.06880.04780.0366于是我们得到:这3种资产损失0.0688,0.0478和0.0366亿的可能性分别为1%,5%和10%投资组合的有效前沿方差有效前沿的函数是frontcon[PortRisk,PortReturn,PortWts]=frontcon(ExpReturn, ExpCovariance, NumPorts, PortReturn, AssetBounds, Groups, GroupBounds)输入参数ExpReturn% 资产组合中每项资产预期回报,是一列行向量ExpCovariance%资产收益的协方差矩阵NumPorts%(Optional) 资产组合有效前沿上的点的个数,默认值是10PortReturn%(Optional) 有效前沿上每个点的回报AssetBounds%(Optional)矩阵表示投资组合分配到每一种资产上的权重的最小和最大值,是2-by-NASSETS 矩阵。
matlab期末考试复习资料

matlab期末考试复习资料如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出的窗口重新集成在桌面?MATLAB 操作桌面有几个窗口?答:MATLAB的默认操作桌面包括命令窗口(Command Window)、启动平台窗口(Launch Dad)、工作空间窗口(Workspace)、命令历史窗口(Command History)和当前路径窗口(Current Directory)等5个窗口。
每个窗口的右上角都有按钮,可以使该窗口脱离操作桌面独立出来;2、 who和whos命令有什么不同之处?答:查看工作空间中有哪些变量名,可以使用who命令完成;若想了解这些变量具体细节,可以使用whos命令查看。
3、分别使用help命令和lookfor命令查找plot函数的帮助信息。
答:>> help plot>> lookfor plot4、一些命令在matlab中的应用1.clf 清除图对象clear清除工作空间内的所有变量clc 清除当前屏幕上显示的所有内容,但不清除工作空间中的数据2.ceil 沿+∞方向取整factor符号计算的因式分解3.box on 打开框状坐标轴开grid off网格关一些4.logspace 对数分度向量cat 串接成高维数组5.sym2poly 符号多项式转变为双精度多项式系数向量poly2sym 双精度多项式系数转变为向量符号多项式6.plot3 三维线图poly2str 以习惯方式显示多项式7.bar 二维直方图pie 二维饼图8.zoom on打开图形缩放模式 edit M文件编辑9.whos 对当前工作空间变量的信息进行列表figure 生成图形窗口10.cart2sph 直角坐标变为球坐标pol2cart 极或柱坐标变为直角坐标11.diff数值差分、符号微分dsolve 符号计算解微分方程12.ezplot3画三维曲线的简捷指令fix向零取整factor 符号计算的因式分解5. 在MATLAB中有几种获得帮助的途径?答:(1)help 命令:在命令窗口输入help命令,也是MATLAB 寻找在线帮助的一种方便而快捷的方式。
matlab考试总结重点

matlab考试总结重点第一章1.MATLAB的典型应用:通用的数值计算、算法设计、自动控制技术、数字信号处理、统计信号处理、电力系统仿真。
2.MATLAB的显著优点:程序非常简洁。
3.MATLAB的主要特色:(1)面向对象特性:图形、窗口等都是对象,可以通过属性改变它们(2)只存在单一的数据结构:矩阵(3)矩阵的大小可以是任意大,只与内存有关且可以自动改变大小。
(4)变量不用定义(5)功能强大的图形处理与数值计算功能(6)系统扩充方便:允许用户自行建立完成指定功能的M文件,可以随时向系统增加函数,从而可以构成适合于某一领域的工具箱(7)先进的帮助系统(8)与WORD有机结合,WORD里可直接使用MATLAB功能。
(9)与C++等语言的接口(10)MATLAB 简单易学(11)不仅提供了编程环境,又提供了设计语言与C语言有很多共性,编程简单。
4.MATLAB的主要功能:(1)数据运算功能,提供了大量的数学函数更接近于数学表示(2)图形操作功能:提供了大量的图形函数使数据可视化。
提供了图形用户界面(3)符号运算功能:其操作对象和运算结果都是数学符号的表达式可用来推导公式。
5.MATLAB文件类型及功能:1.M文件:分为脚本M文件和函数M文件,脚本M,文件创建的变量都是MATLAB工作空间中的变量,工作空间的其他程序和函数可以共享。
函数M,文件可以传递参数,所以函数M文件的调用式中可以有输入参数和输出参数。
2.MAT文件:用于保存MATLAB系统所使用的数据。
3.MEX文件:可以被直接调入MATLAB中直接运行。
执行速度快还可以把较大的M文件编译成MEX 文件4.图形文件:用来存储由MATLAB得到的图形文件并不能被其他的图形编辑器编辑。
5.模型文件:用来存储建立的模型。
6.两种M文件的异同共性:在MATLAB命令窗口中键入文件名,可以执行M文件中的规定的计算任务或某种功能。
区别一:程序M文件中创建的变量都是MATLAB工作空间中的变量,工作空间的其他程序或函数可以共享;而函数M文件中创建的所有变量除了全程变量外,均为局限于函数运行空间内的局部变量;——类似于主程序区别二:函数M文件可以使用传递参数,所以函数M文件的调用式中可以有输入参数和输出参数,而程序M文件则没有这种功能。
matlab期末复习题及答案

matlab期末复习题及答案MATLAB期末复习题及答案一、选择题1. MATLAB中用于创建向量的函数是:A. vectorB. createVectorC. vectorizeD. [ ]答案:D2. 下列哪个命令可以计算矩阵的行列式?A. det(A)B. matrixDeterminant(A)C. determinant(A)D. A.det答案:A3. MATLAB中,以下哪个函数可以进行矩阵的转置?A. transposeB. transC. flipD. rot90答案:B4. 以下哪个函数可以用于绘制三维图形?A. plotB. scatterC. surfD. bar3答案:C5. 以下哪个命令可以计算向量的范数?A. norm(v)B. magnitude(v)C. length(v)D. distance(v)答案:A二、填空题1. MATLAB中,使用________命令可以创建一个与原矩阵相同大小的零矩阵。
答案:zeros2. 要生成一个从0到1的线性空间向量,包含101个元素,应使用________命令。
答案:linspace(0,1,101)3. 使用MATLAB绘制函数y=x^2的图形,可以使用________命令。
答案:plot(x, x.^2)4. 要对矩阵进行元素乘,应使用________操作符。
答案:.*5. MATLAB中,使用________函数可以求解线性方程组。
答案:inv三、简答题1. 请简述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、转置、求逆、行列式计算、矩阵乘法、矩阵加法、矩阵减法等。
2. MATLAB中如何实现循环结构?答案:MATLAB中实现循环结构主要有for循环和while循环两种方式。
for循环用于已知迭代次数的情况,while循环用于迭代次数不确定的情况。
四、计算题1. 给定矩阵A和B如下:A = [1 2; 3 4];B = [5 6; 7 8];请计算A与B的矩阵乘积,并求出结果矩阵的行列式。
MATLAB期末考试复习总结

《MATLAB》期末考试题型及分值(1)简答题4题*5分=20分简要回答要点(2)计算题6题*5分=30分命令(程序文件)(3)绘图题2题*10分=20分二维及三维(4)编程题2题*10分=20分(一)函数-程序文件(二)矩阵最大元素(5)综合题1题*10分计算并绘图题目1. 设计一个函数,用于求数组A的最大值、最小值以及平均值,其中,A的维数未知。
2. 写一个函数,用于求n元一次方程组的解.已知系数矩阵A和常数向量b,且A*x=b(要求处理无解和无穷解的情况)。
3. 有一组测量数据(xi,yi),已知x与y成线性关系,用最小二乘原理拟合y=f(x)的关系并绘图,同时求出直该直线的斜率。
4. 绘制三维曲面z=sin(r)/r,其中r=sqrt(x*x+y*y),要求使用灰度图,且黑色表示最高点,白色表示最低点,并使曲面光滑。
解(1)function y=suzu(A);A=input('请输入任意数组:');y=max(A);function y=suzu(A);A=input('请输入任意数组:');y=min(A);function y=suzu(A);A=input('请输入任意数组:');y=mean(A);//function[Ax]=Amax(A)Ax=max(max(max(A)))w=rand(4,5)%生成随即数组%w1=input('请输入你的数组')%该数组具有普遍性[a b ]=size(w); x=1;for k=1:afor d=1:bw1(x)=w(k,d);x=x+1;end endmaxw=w1(1);for t=1:length(w1)if maxw<w1(t)maxw=w1(t);end enddisp(['最大值为:'] )maxw(2)function [y,n]=jacobi(A,b,x0,eps)If nargin==3eps=1.0e-6;elseif nargin<3errorreturnendD=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);B=D\(L+U);f=D\b;y=B*x0+f;n=1;while norm(y-x0)>=epsx0=y;y=B*x0+f;n=n+1;End(3)xi=[0.1 0.2 0.15 0 -0.2 0.3];yi=[0.95 0.84 0.86 1.06 1.50 0.72];p=polyfit(xi,yi,2)x=-0.2:0.01:0.3y=polyval(p,x)plot(xi,yi,'o',x,y,'k')(4)[x,y]=meshgrid([-10:0.2:10]);z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); surf(x,y,z)colormap(gray);subplot(1,1,1);surf(z);shading flat;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、投资组合:在险价值ValueAtRisk=portvrisk(PortReturn, PortRisk, RiskThreshold, PortValue)返回一定的置信水平下,某一投资组合在未来特定的一段时间内的最大潜在损失。
PortReturn%一期内总资产的期望收益PortRisk%总资产的标准差RiskThreshold%表示概率阈值(损失概率),默认值是5%PortValue%表示资产投资组合的总值。
默认值=1例子:已知3种资产组成的投资组合,该投资组合的年回报率为0.29%,标准差为3.08%,资产的总价值为1亿元,概率阈值分别为1%,5%和10%,求该水平下每种资产的Var。
>>PortReturn= 0.29/100;PortRisk = 3.08/100;>>RiskThreshold= [0.01;0.05;0.10];>>PortValue= 1;>>ValueAtRisk= portvrisk(PortReturn,PortRisk,RiskThreshold,PortValue)ValueAtRisk=0.06880.04780.0366于是我们得到:这3种资产损失0.0688,0.0478和0.0366亿的可能性分别为1%,5%和10%投资组合的有效前沿方差有效前沿的函数是frontcon[PortRisk,PortReturn,PortWts]=frontcon(ExpReturn, ExpCovariance, NumPorts, PortReturn, AssetBounds, Groups, GroupBounds)输入参数ExpReturn% 资产组合中每项资产预期回报,是一列行向量ExpCovariance%资产收益的协方差矩阵NumPorts%(Optional) 资产组合有效前沿上的点的个数,默认值是10PortReturn%(Optional) 有效前沿上每个点的回报AssetBounds%(Optional)矩阵表示投资组合分配到每一种资产上的权重的最小和最大值,是2-by-NASSETS 矩阵。
所有资产下界的默认值= 0 (没有卖空),上界的默认值= 1 (表示该资产构成整个投资组合).矩阵的每一列代表一种资产,第一行表示资产分配的下界,并且第二行表示资产分配的上界。
Groups %(Optional) 资产组矩阵。
每一行表示一组。
如果Groups(i,j) = 1,表示第j个资产属于第i个组;Groups(i,j) = 0,表示第j个资产不属于第i个组GroupBounds%(Optional)表示每一组的权重约束区间矩阵,下界的默认值=0,上界的默认值=1。
规定每一组的一个上界和下界。
矩阵的每一行表示一个组,第一列表示每一组的最小分配,并且第二列表示每一组的最大分配。
输出参数:PortRisk%每一个投资组合的风险(标准差),为一列向量PortReturn%每一个投资组合的期望回报,为一列向量PortWts%投资组合中各资产的权重,为一矩阵。
每一行表示一个投资组合,在一个投资组合中的权重的和等于1注意:在调用函数frontcon时,如果用户没有规定任何输出变量,函数frontcon将产生一个有效前沿图例题:考虑一个三资产组合,资产1、2、3,其预期收益率分别为0.1 ,0.2 ,0.15资产协方差矩阵如图,求该资产组合的有效前沿。
二、时间序列金融时间序列文本文件的转换ascii2ftstsobj= ascii2fts(filename, timedata, descrow, colheadrow, skiprows)输入参数:filename %文件名,必须用单引号括起来timedata%判定是否包含时间信息,若是输入字符串“t”,若不是则输入“nt”descrow%(Optional)确定文本文件中文字说明的行数colheadrow%(Optional)说明每列变量名所在的行数skiprows%(Optional)ASCII文件中不需要输入的行时间序列数据转换成矩阵数据tsmat= fts2mat(tsobj, datesflag, seriesnames)输入参数:tsobj%需要转换的金融时间序列对象的名称datesflag%(Optional) 表示转换成矩阵时是否要输出日期到矩阵中,datesflag=0(默认值)表示不输出日期到矩阵中,datesflag=1表示输出日期到矩阵中。
seriesnames%(Optional) 需要导出的某列数据序列的名称。
实现对时间序列数据的抽取ftse= extfield(tsobj, fieldnames) %从tsobj中提取日期和字段名为fieldnames的数据序列成一个新的金融时间序列对象ftse. ftse包含tsobj中所有的日期,但是较少的数据序列输入参数:tsobj%原始数据fieldnames %原始数据中的字段名将价格序列转换为收益率序列[RetSeries, RetIntervals] = tick2ret(TickSeries, TickTimes, Method)TickSeries % 行是时间列是不同的资产TickTimes %(Optional) 价格序列TickSeries所对应的NUMOBS的递增的观察时间向量。
如果TickTimes是空的,假定观察时间为1, 2, ... NUMOBSMethod % (Optional)计算收益率的方法,转换方法同上收益率序列和价格序列之间的相互转换ret2tick[TickSeries, TickTimes]=ret2tick(RetSeries, StartPrice,RetIntervals, StartTime, Method)RetSeries%收益率序列.StartPrice%(Optional)起始价格,默认值是1RetIntervals%(Optional)收益率序列的时间间隔,默认值是1StartTime%(Optional)价格开始计算的时间,默认值是0Method %(Optional)转换方法。
如果Method= ‘Simple’(默认值),表示简单方法,Method=‘Continuous’,表示连续方法例题:已知投资组合中2种股票的资产收益率及时间间隔如下表,起始时间为2007年3月6日,求该资产价格的时间序列。
资产A 资产B收益率0.10 0.05 -0.05 0.12 0.04 0.05时间间隔天数182 91 92 182 91 92>>RetSeries= [0.10 0.120.05 0.04-0.05 0.05];>> RetIntervals= [182 91 92]';>> StartTime=datenum('06-Mar-2007');>> [TickSeries,TickTimes] = ret2tick(RetSeries,[],RetIntervals,StartTime)9TickSeries=1.0000 1.00001.1000 1.12001.1550 1.16481.0973 1.2230>> datestr(TickTimes)ans=06-Mar-200704-Sep-200704-Dec-200705-Mar-2008这样把收益率时间序列转换为价格时间序列,结果如下表(以资产A为例)时间: 2007.3.6 2007.9.4 2007.11.4 2008.3.5价格 1.0000 1.1000 1.1550 1.0973收益率 --- 0.10 0.05 -0.05时间间隔 --- 182 91 92时间序列数据转换成矩阵数据tsmat= fts2mat(tsobj, datesflag)输入参数:tsobj%需要转换的金融时间序列对象的名称datesflag%(Optional) 表示转换成矩阵时是否要输出日期到矩阵中,datesflag=0(默认值)表示不输出日期到矩阵中,datesflag=1表示输出日期到矩阵中。
输出参数:tsmat%表示转换后的矩阵时间序列中的缺失数据的处理股票价格和成交量相关性计算:R=Corrcorf(tick, num)自相关系数:[a,b]=autocorr(输入量) a是自相关系数,b是前几期(b=0时表示当期,相关性a=1)三、CRR模型欧式看涨期权例1 现有一个欧式看涨期权,标的资产为无红利支付的股票。
当前股票价格为S=100美元,股票波动率为 =0.4,无风险利率为r=0.05,期权的敲定价格为X=95美元,期权有效期为T=0.5。
求该期权的价格。
St=100 %当前股价X=95 %执行价格r=0.05 %利率t=0.5 %期权有效期sigma=0.4 %波动率n=10 %指定二叉树的步数dt=t/n %确定单步时间间隔u=exp(sigma*sqrt(dt)) %计算上升比率d=1/u %计算下降比率p=(exp(r*dt)-d)/(u-d) %计算上升概率%构造股票价格二叉树矩阵,a表示行数,b表示列数(第b-1步),mx为股价矩阵for b = 1 : n+1for a = 1 : b;mx ( a ,b ) = st *power( u,b –a ) * power( d,a -1)end;end;%构造期权价格二叉树矩阵 efx%计算到期( b=n+1) 时,欧式期权价格 efxfor a =1 :n+1efx( a ,n+1 ) = max( mx( a,n+1) –X ,0);end%倒推前面各期的期权价格for bb =1 :nb =n +1 –bb;for a =1 :b;efx( a,b ) = exp( -r* dt) *(p *efx( a,b+1)+( 1-p) *efx( a+1,b+1));end;end;efx %输出结果美式看涨期权假设当前股票价格为100美元,股票价格波动率为 0.4 ,股票的红利率为0.05,市场无风险利率为0.1。
现有一个以该股票为标的资产的美式看涨期权,到期期限为1年,敲定价格为100美元。
求该期权的价格。
%输入具体参数st=100 %当前股价sp=100 %执行价格r=0.1 %利率T=1 %期权有效期Sigma=0.4 %波动率Q=0.05 %红利率n=1200 %步数dt=T/n %时间步长%计算二叉树参数u=exp((r-q)*dt)*exp(sigma*sqrt(dt))/(0.5*exp(-sigma*sqrt(dt))+0.5*exp(sigma*sqr t(dt)));d=exp((r-q)*dt)*exp(-sigma*sqrt(dt))/(0.5*exp(-sigma*sqrt(dt))+0.5*exp(sigma*sq rt(dt));p=0.5 %计算上升概率%构造二叉树矩阵,a表示行数,b表示列数(第b步),mx为股价矩阵,fx为期权内在价值for b=1:n+1for a=1:bmx(a,b)=st*power(u,b-a)*power(d,a-1);fx(a,b)=max(mx(a,b)-sp,0);end;end;%计算美式期权价格矩阵afxfor a=1:n+1 %到期时(b=n+1)期权价格afx(a,n+1)=fx(a,n+1);endfor bb=1:n %倒推前面各期(b=n-1,--->1)期权价格efx和afxb=n+1-bb;for a=1:bafx(a,b)=max((afx(a,b+1)*p+afx(a+1,b+1)*(1-p))*exp(-r*dt),fx(a,b));%当前美式期权价格afx(a,b)由下一期美式期权价格afx(a,b)和内在价值决定end;end;显示差分计算欧式看跌期权价格假设当前股票价格为50美元,股票价格波动率sigma=0.3;以该股票为标的资产的欧式看跌期权的执行价格为50美元,期权有效期为5个月;市场上的无风险利率为10%。