R語言中進(jìn)行期權(quán)定價(jià)的Heston隨機(jī)波動(dòng)率模型|附代碼數(shù)據(jù)
原文鏈接:http://tecdat.cn/?p=12111
最近我們被客戶要求撰寫關(guān)于期權(quán)定價(jià)的研究報(bào)告,包括一些圖形和統(tǒng)計(jì)輸出。
在本文中,我將向您展示如何模擬股票價(jià)格的Heston隨機(jī)波動(dòng)率模型
Heston模型是一種期權(quán)估值方法,它考慮到同一資產(chǎn)在給定時(shí)間交易的不同期權(quán)的波動(dòng)性變化。它試圖通過使用隨機(jī)過程來模擬波動(dòng)率和利率來重新創(chuàng)建市場定價(jià)。Heston模型的特點(diǎn)是將波動(dòng)率函數(shù)的平方根包含在整個(gè)定價(jià)函數(shù)中。
對(duì)于固定的無風(fēng)險(xiǎn)利率,描述為:

通過使用這種模型,可以得出歐洲看漲期權(quán)的價(jià)格 。
這是函數(shù)的描述。
callHestoncf(S, X, tau, r, v0, vT, rho, k, sigma){# S = 股價(jià)在到期日的價(jià)格, X = 行權(quán)價(jià)格, tau = 到期日# r = 為無風(fēng)險(xiǎn)利率, q = 股息收益# v0 = 初始方差, vT = 長期方差# rho = 相關(guān)系數(shù), k = 是Vt回歸至θ的速度;# sigma = 波動(dòng)率}
點(diǎn)擊標(biāo)題查閱往期內(nèi)容

R語言Black Scholes和Cox-Ross-Rubinstein期權(quán)定價(jià)模型案例

左右滑動(dòng)查看更多

01

02

03

04

現(xiàn)在,進(jìn)行蒙特卡洛定價(jià)。我們將為3個(gè)歐洲看漲期權(quán)定價(jià),具有3種不同的行權(quán)價(jià)格。我們在15年中使用100000個(gè)模擬,每個(gè)月進(jìn)行一次。以下是仿真的參數(shù):
#初始價(jià)格S0 <- 100# 模擬次數(shù)(可以隨意減少)n <- 100000# 抽樣頻率freq <- "monthly"# 波動(dòng)率均值回復(fù)速度kappa <- 0.003#波動(dòng)率volvol <- 0.009# 相關(guān)性。成交量和現(xiàn)貨價(jià)格rho <- -0.5# 初始方差V0 <- 0.04# 長期的方差theta <- 0.04#初始短期利率r0 <- 0.015
?# 期權(quán)到期日horizon <- 15#期權(quán)行權(quán)價(jià)格strikes <- c(140, 100, 60)
為了使用模擬Heston模型,我們首先需要定義如何進(jìn)行模擬。
此函數(shù)提供一個(gè)包含2個(gè)成分的列表,每個(gè)成分包含模擬的隨機(jī)高斯增量。
#? 隨機(jī)波動(dòng)模擬sim.vol <- simdiff(n =? n, horizon =? horizon,frequency =? freq, model = "CIR", x0 =? V0,theta1 =? kappa*theta, theta2 =? kappa,theta3 =? volvol, eps =? shocks[[1]])
?# 股票價(jià)格模擬sim.price <- simdiff(n = n, horizon = horizon,frequency = freq, model = "GBM", x0 = S0,theta1 = r0, theta2 = sqrt(sim.vol),eps = shocks[[2]])
現(xiàn)在,我們可以計(jì)算3種不同的期權(quán)價(jià)格。
# 到期股票價(jià)格(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
從這些結(jié)果中,我們看到這三個(gè)期權(quán)的蒙特卡洛價(jià)格與使用函數(shù)(直接使用公式來計(jì)算價(jià)格)計(jì)算出的價(jià)格相當(dāng)接近。95%的置信區(qū)間包含理論價(jià)格。
下面是期權(quán)價(jià)格,作為模擬次數(shù)的函數(shù)。計(jì)算出的理論價(jià)格用藍(lán)色繪制,蒙特卡洛平均價(jià)格用紅色繪制,陰影區(qū)域表示均值(蒙特卡洛價(jià)格)周圍的95%置信區(qū)間。


本文摘選?《?R語言用加性多元線性回歸、隨機(jī)森林、彈性網(wǎng)絡(luò)模型預(yù)測鮑魚年齡和可視化?》?,點(diǎn)擊“閱讀原文”獲取全文完整資料。
點(diǎn)擊標(biāo)題查閱往期內(nèi)容
r語言二元期權(quán)barrier option實(shí)現(xiàn)案例
R語言Black Scholes和Cox-Ross-Rubinstein期權(quán)定價(jià)模型案例
Matlab馬爾可夫鏈蒙特卡羅法(MCMC)估計(jì)隨機(jī)波動(dòng)率(SV,Stochastic Volatility) 模型
R語言用多元ARMA,GARCH ,EWMA, ETS,隨機(jī)波動(dòng)率SV模型對(duì)金融時(shí)間序列數(shù)據(jù)建模
WinBUGS對(duì)多元隨機(jī)波動(dòng)率模型:貝葉斯估計(jì)與模型比較
Matlab馬爾可夫鏈蒙特卡羅法(MCMC)估計(jì)隨機(jī)波動(dòng)率(SV,Stochastic Volatility) 模型
WINBUGS對(duì)隨機(jī)波動(dòng)率模型進(jìn)行貝葉斯估計(jì)與比較
WinBUGS對(duì)多元隨機(jī)波動(dòng)率模型:貝葉斯估計(jì)與模型比較R語言向量誤差修正模型 (VECMs)分析長期利率和通脹率影響關(guān)系
stata馬爾可夫Markov區(qū)制轉(zhuǎn)移模型分析基金利率
R語言對(duì)HullWhite短期利率模型仿真
Matlab通過市場數(shù)據(jù)校準(zhǔn)Hull-White利率模型參數(shù)