拓端tecdat|R语言中进行期权定价的Heston模型
原文链接:http://tecdat.cn/?p=12111
原文出处:拓端数据部落
在本文中,我将向您展示如何模拟股票价格的Heston随机波动率模型。
Heston模型是一种期权估值方法,它考虑到同一资产在给定时间交易的不同期权的波动性变化。它试图通过使用随机过程来模拟波动率和利率来重新创建市场定价。Heston模型的特点是将波动率函数的平方根包含在整个定价函数中。
对于固定的无风险利率,描述为:
通过使用这种模型,可以得出欧洲看涨期权的价格 。
这是函数的描述。
callHestoncf(S, X, tau, r, v0, vT, rho, k, sigma){
# S = 股价在到期日的价格, X = 行权价格, tau = 到期日
# r = 为无风险利率, q = 股息收益
# v0 = 初始方差, vT = 长期方差
# rho = 相关系数, k = 是Vt回归至θ的速度;
# sigma = 波动率
}
现在,进行蒙特卡洛定价。我们将为3个欧洲看涨期权定价,具有3种不同的行权价格。我们在15年中使用100000个模拟,每个月进行一次。以下是仿真的参数:
#初始价格
S0 <- 100
# 模拟次数(可以随意减少)
n <- 100000
# 抽样频率
freq <- "monthly"
# 波动率均值回复速度
kappa <- 0.003
#波动率
volvol <- 0.009
# 相关性。成交量和现货价格
rho <- -0.5
# 初始方差
V0 <- 0.04
# 长期的方差
theta <- 0.04
#初始短期利率
r0 <- 0.015# 期权到期日
horizon <- 15
#期权行权价格
strikes <- c(140, 100, 60)
为了使用模拟Heston模型,我们首先需要定义如何进行模拟。
此函数提供一个包含2个成分的列表,每个成分包含模拟的随机高斯增量。
# 随机波动模拟
sim.vol <- simdiff(n = n, horizon = horizon,
frequency = freq, model = "CIR", x0 = V0,
theta1 = kappa*theta, theta2 = kappa,
theta3 = volvol, eps = shocks[[1]])# 股票价格模拟
sim.price <- simdiff(n = n, horizon = horizon,
frequency = freq, model = "GBM", x0 = S0,
theta1 = r0, theta2 = sqrt(sim.vol),
eps = shocks[[2]])
现在,我们可以计算3种不同的期权价格。
# 到期股票价格(15年)print(results)strikes mcprices lower95 upper95 pricesAnalytic
1 140 25.59181 25.18569 25.99793 25.96174
2 100 37.78455 37.32418 38.24493 38.17851
3 60 56.53187 56.02380 57.03995 56.91809
从这些结果中,我们看到这三个期权的蒙特卡洛价格与使用函数(直接使用公式来计算价格)计算出的价格相当接近。95%的置信区间包含理论价格。
下面是期权价格,作为模拟次数的函数。计算出的理论价格用蓝色绘制,蒙特卡洛平均价格用红色绘制,阴影区域表示均值(蒙特卡洛价格)周围的95%置信区间。
最受欢迎的见解
1.用机器学习识别不断变化的股市状况—隐马尔科夫模型(HMM)的应用
2.R语言GARCH-DCC模型和DCC(MVT)建模估计
3.R语言实现 Copula 算法建模依赖性案例分析报告
4.R语言COPULAS和金融时间序列数据VaR分析
5.R语言多元COPULA GARCH 模型时间序列预测
6.用R语言实现神经网络预测股票实例
7.r语言预测波动率的实现:ARCH模型与HAR-RV模型
8.R语言如何做马尔科夫转换模型markov switching model
9.matlab使用Copula仿真优化市场风险
拓端tecdat|R语言中进行期权定价的Heston模型相关推荐
- R语言中进行期权定价的Heston模型
在本文中,我将向您展示如何模拟股票价格的Heston随机波动率模型. 最近我们被客户要求撰写关于Heston的研究报告,包括一些图形和统计输出. Heston模型是一种期权估值方法,它考虑到同一资产在 ...
- 拓端tecdat|R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险
最近我们被客户要求撰写关于冠心病风险的研究报告,包括一些图形和统计输出. 相关视频:R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险 逻辑回归Logistic模型原理和R语言分类预测冠 ...
- 拓端tecdat|R语言用LOESS(局部加权回归)季节趋势分解(STL)进行时间序列异常检测
最近我们被客户要求撰写关于LOESS(局部加权回归)的研究报告,包括一些图形和统计输出. 这篇文章描述了一种对涉及季节性和趋势成分的时间序列的中点进行建模的方法.我们将对一种叫做STL的算法进行研究, ...
- 拓端tecdat|R语言向量误差修正模型 (VECMs)分析长期利率和通胀率影响关系
最近我们被客户要求撰写关于向量误差修正模型的研究报告,包括一些图形和统计输出. 向量自回归模型估计的先决条件之一是被分析的时间序列是平稳的.但是,经济理论认为,经济变量之间在水平上存在着均衡关系,可以 ...
- 拓端tecdat|R语言线性回归和时间序列分析北京房价影响因素可视化案例
最近我们被客户要求撰写关于北京房价影响因素的研究报告,包括一些图形和统计输出. 目的 房价有关的数据可能反映了中国近年来的变化: 人们得到更多的资源(薪水),期望有更好的房子 人口众多 独生子女政策: ...
- R语言中实现马尔可夫链蒙特卡罗MCMC模型
什么是MCMC,什么时候使用它? MCMC只是一个从分布抽样的算法. 这只是众多算法之一.这个术语代表"马尔可夫链蒙特卡洛",因为它是一种使用"马尔可夫链"(我 ...
- R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
最近我们被客户要求撰写关于信用风险敞口的研究报告,包括一些图形和统计输出. 在之前的课堂上,我们已经看到了如何可视化多元回归模型(带有两个连续的解释变量).在此,目标是使用一些协变量(例如,驾驶员的年 ...
- 在r语言中使用GAM(广义相加模型)进行电力负荷时间序列分析
广义相加模型(GAM:Generalized Additive Model),它模型公式如下:有p个自变量,其中X1与y是线性关系,其他变量与y是非线性关系,我们可以对每个变量与y拟合不同关系,对X2 ...
- 二次拟合r方_拟合R语言中的多项式回归
原标题:拟合R语言中的多项式回归 让我们看一个经济学的例子:假设你想购买一定数量q的特定产品.如果单价是p,那么你会支付总金额y.这是一个线性关系的典型例子.总价格和数量成正比. 如下所示: 但购买和 ...
- 拓端tecdat|bilibili视频流量数据潜望镜
最近我们被客户要求撰写关于bilibili视频流量的研究报告,包括一些图形和统计输出. 最新研究表明,中国有超过7亿人在观看在线视频内容.Bilibili,被称为哔哩哔哩或简称为B站,是中国大陆第二个 ...
最新文章
- MySQL解压版安装
- 学计算机一定要加班吗,老梁推荐:毕业后经常加班的几类专业,工作压力大,对能力要求很高...
- CentOS上如何把Web服务器从Apache换到nginx
- (原) Data Blocks, Extents, and Segments
- BZOJ 1051: [HAOI2006]受欢迎的牛
- 移动端UC /QQ 浏览器的部分私有Meta 属性
- JS之检索子字符串的search方法
- 神奇的不拆封读信,MIT透视技术登上nature子刊
- 微信超赞新功能上线,终于知道钱花哪儿了
- Tensorflow练习题
- java 格式化日期(DateFormat)
- c语言定义int 输出4386,C语言 · 矩阵乘法
- java实现多线程断点续传,上传下载
- STM32 BOOT设置以及对应的意义
- TMDB数据导入elasticsearch7
- 思科模拟器配置静态路由
- 【数据分析】- 操作步骤大总结
- RabbitMQ学习
- 111完美邮箱品牌域名——数字域名111.com
- 电脑常用快捷键与指示灯