matlab欧式期权定价公式,[转载]期权定价的Matlab实现(以欧式看涨期权为例)
二叉树模型
考虑到欧式期权的特性,忽略中间过程,直接关注末期状态及其概率分布。
function price=bino(s,k,r,t,v,n)
dt=t/n;
u=exp(v*sqrt(dt));
d=1/u;
p=(exp(r*dt)-d)/(u-d);
for i=0:n
st(i+1)=s*power(u,n-i)*power(d,i);
prob(i+1)=nchoosek(n,i)*power(p,n-i)*power((1-p),i);
end
f=max(st-k,0);
price=prob*f'*exp(-r*t);
end
蒙特卡洛模拟
在此加入对偶变量,减小模拟结果的方差。
%Advanced Monte Carlo method
function eucall=blsmca(s,k,r,t,v,n)
randn('seed',0);
nt=(r-.5*v^2)*t;
sit=v*sqrt(t);
rand=randn(n,1);
discpayoff=exp(-r*t)*max(0,s*exp(nt+sit*rand)-k);
discpayoffl=exp(-r*t)*max(0,s*exp(nt+sit*(-rand))-k);
[eucall,varprice,ci]=normfit([discpayoff;discpayoffl]);
end
有限差分方法
在此为了减小运算量,采用显示有限差分法。(在隐式有限差分法中,需要求解方程)
function mx=fd(s,k,r,t,v)
smax=200;
ds=5;
dt=t/10;
M=round(smax/ds);
N=round(t/dt);
ds=smax/M;
dt=t/N;
mx=zeros(M+1,N+1);
mx(:,1)=smax:-ds:0;
mx(:,N+1)=max(mx(:,1)-k,0);
mx(1,2:N)=smax-k;
mx(M+1,2:N)=0;
vj=2:M;
a=1/(1+r*dt)*(-1/2*r*vj*dt+1/2*v^2*vj.^2*dt);
b=1/(1+r*dt)*(1-v^2*vj.^2*dt);
c=1/(1+r*dt)*(1/2*r*vj*dt+1/2*v^2*vj.^2*dt);
for i=N:-1:2
for
j=2:M
mx(j,i)=a(i)*mx(j-1,i+1)+b(i)*mx(j,i+1)+c(i)*mx(j+1,i+1);
end
end
end
另外,MATLAB中的blkprice函数和blsprice函数算出来得期权价值相差较大,个人觉得布莱克近似模型的有效性值得商榷。
matlab欧式期权定价公式,[转载]期权定价的Matlab实现(以欧式看涨期权为例)相关推荐
- 期权在matlab中的论文,[转载]期权定价的Matlab实现(以欧式看涨期权为例)
二叉树模型 考虑到欧式期权的特性,忽略中间过程,直接关注末期状态及其概率分布. function price=bino(s,k,r,t,v,n) dt=t/n; u=exp(v*sqrt(dt)); ...
- matlab如何编写网页,[转载]如何使用matlab在网页中作图
%将原始Figure f关闭end 使用Matlab编译器将上述函数打成jar包,在编译之前最好在Matlab窗口中测试一下这个函数,以保证其可以返回期望的结果,为了看到图形可以将close(f)语句 ...
- matlab怎么提取小数部分,[转载]如何在Matlab中得到一个单、双精度数的整数部分和小数部分?...
对于一个单.双精度数,获得其单独的整数部分或小数部分在一些程序中有特殊的作用.如对一个数进行去模运算.对一幅图像进行剪切使其高.宽是某个数的整数倍等等. 对于取整,在C语言中有专门的取整符号[],在M ...
- comsol with matlab完整案例 sina,[转载]Comsol with Matlab 应用实例(2)
看留言有人想选择圆的边界,实现方法倒是有好多种,分别针对不同的情况. 例1,如图选择几何模型中圆部分的边界.这里圆所在的domain还是要自己选择下,暂时没有好办法,但是如果用CwM做的几何,这倒是还 ...
- matlab凯塞窗设计,转载:用MATLAB设计FIR滤波器的方法解析
介绍了利用MATLAB信号处理工具箱进行FIR滤波器设计的三种方法:程序设计法.FDATool设计法和SPTool设计法,给出了详细的设计步骤,并将设计的滤波器应用到一个混和正弦波信号,以验证滤波器的 ...
- python基于rsa的数字签名实现_青岛宽客聚会期权定价公式基于python的实现
点击上方蓝字,关注宽客空间 2020年8月16日,宽客空间走进石岭资产,参加了青岛宽客聚会的活动.本次活动分享题目为<期权定价公式基于python的实现>.本次活动的主讲人是来自青岛石岭资 ...
- python障碍式期权定价公式
python障碍式期权定价公式 早期写的障碍式期权的定价脚本 #coding:utf-8 ''' 障碍期权 q=x/s H = h/x H 障碍价格 [1] Down-and-in call cdi ...
- matlab中用公式求pi值,matlab用π 4公式求π的近似值,直到某一项的绝对值小于10-6为止...
求问matlab计算的几个公式以及方法. 峰值max峭度应该就是梯度了gradient曲线画图:plot(二维)plot3(三维),其他画图都用这个就够了查matlab文档 求matlab高手,这个公 ...
- Matlab绘制普朗克公式曲线1/2
Matlab绘制普朗克公式曲线 1.确定波长和温度区间. 2.运行程序,结果如下. 3.部分源代码. 1900年德国物理学家M.普朗克在量子论基础上建立了关于黑体辐射的正确公式,即普朗克公式. 它给出 ...
- matlab用辛普森公式求积分_数值积分常用方法
数值积分的基本思想 由积分中值定理可知,在积分区间 内存在一点 ,成立 式的几何意义即为:底为 而高为 的矩形的面积恰等于所求曲边梯形的面积 .因此,要想求出 式左端积分,我们只需要知道三个值: 即可 ...
最新文章
- oracle跑with语句很慢,oracle 11g新特性---WITH语句增强
- mysql版本 时间_【MySQL】MySQL版本时间线和MySQL各版本的区别
- Matlab实用程序--图形应用-填充图
- mac改变文件权限git识别为修改的问题
- 主存地址位数怎么算_两位数乘一位数也能口算?对!你没看错,不是特殊情况也行...
- intValue()的用法
- LeetCode 366. Find Leaves of Binary Tree
- sqoop从mysql导入hdfs_3.使用sqoop从mysql 导入数据到hdfs
- python入门——条件控制+循环语句
- 计算机课ppt实验报告,北邮计算机组成原理实验课件_bupt 计算机组成原理 实验报告,北邮 计算机 计组实验-讲义工具类资源...
- 各纬度气候分布图_世界气候类型分布图高清版(世界气候分布高清地图)V1.0 免费版...
- 华为m6更新鸿蒙吗,华为手机升级鸿蒙的方法,有哪位升级成功的吗?
- 笔记本麦克风声音小解决办法
- 视频监控摄像头的互联网化实践思路
- myeclipse代码或JSP页面改动之后,并没有生效问题
- 如何在excel单词后面批量加固定文字?
- 航天信息单机和服务器版区别,企业单机版和企业多用户版的区别在哪里?
- mastercam测试软件功能,基于UG和MasterCAM测头自动编写探测程序探讨
- 网站是服务器备案还是域名备案,做一个网站域名先注册还是备案
- 高新技术企业认定时间