乐趣区

关于数据挖掘:MATLAB随机波动率SVGARCH用MCMC马尔可夫链蒙特卡罗方法分析汇率时间序列附代码数据

全文下载链接:http://tecdat.cn/?p=27340 

最近咱们被客户要求撰写对于随机稳定率 SV、GARCH 的钻研报告,包含一些图形和统计输入。

稳定率是一个重要的概念,在金融和交易中有许多利用。它是期权定价的根底。稳定率还能够让您确定资产配置并计算投资组合的危险价值 (VaR)

甚至稳定率自身也是一种金融工具,例如 CBOE 的 VIX 稳定率指数。然而,与证券价格或利率不同,波动性无奈间接察看到。相同,它通常被掂量为证券或市场指数的收益率历史的统计稳定。这种类型的度量称为已实现稳定率或历史稳定率。掂量波动性的另一种办法是通过期权市场,其中期权价格可用于通过某些期权定价模型得出标的证券的波动性。Black-Scholes 模型是最受欢迎的模型。这种类型的定义称为 _隐含稳定率_。VIX 基于隐含稳定率。

存在多种统计办法来掂量收益序列的历史稳定率。高频数据可用于计算低频收益的波动性。例如,应用日内收益来计算每日稳定率;应用每日收益来计算每周稳定率。还能够应用每日 OHLC(开盘价、最高价、最低价和收盘价)来计算每日稳定率。比拟学术的办法有 ARCH(自回归条件异方差)、GARCH(狭义 ARCH)、TGARCH(阈值 GARCH)、EGARCH(指数 GARCH)等。咱们不会具体探讨每个模型及其优缺点。相同,咱们将关注随机稳定率 (SV) 模型,并将其后果与其余模型进行比拟。一般来说,SV 模型很难用回归办法来预计,正如咱们将在本文中看到的那样。

欧元 / 美元汇率

咱们将以 2003-2018 年 EUR/USD 汇率的每日询价为例来计算每日稳定率。

subplot(2,1,1);plot(ta,csl)subplot(2,1,2);plot(at,rtdan);

图 1. 顶部:欧元 / 美元的每日汇率(要价)。底部:每日对数收益率百分比。

图 2 显示收益率中没有序列相关性的根据。

[sdd,slodgdL,infaso] = estimaadte(Mddsdl,rtasd);[aEass,Vad,lsagLd] = infer(EstMsssddl,rtsdn);[hsd,pValasdue,dstat,ascValue] = lbqtest(reas,'lags',12)[hs,pdValsue,sdtatsd,cVsalue] = lbqtest(resss.^2,'lags',12)

图 2. 收益率相关性测验。Ljung-Box Q 测验(左下)没有显示显着的序列自相干作为收益率。

然而,咱们能够很容易地辨认出相对收益率值较大的期间集群(无论收益率的符号如何)。因而,相对收益值存在显著的序列相关性。

图 3. 回归平方的相关性测验。


点击题目查阅往期内容

R 语言用多元 ARMA,GARCH ,EWMA, ETS, 随机稳定率 SV 模型对金融工夫序列数据建模

左右滑动查看更多

01

02

03

04

GARCH(狭义自回归条件异方差)模型

GARCH(1,1) 模型能够用 Matlab 的计量经济学工具箱进行预计。图 4 和图 5 中的 ACF、PACF 和 Ljung-Box Q 测验未显示残差及其平方值的显着序列相关性。图 4 左上图中的残差项在视觉上更像白噪声,而不是原始收益序列。

Mdls.dsVadjnce = garc(1,1);

[EsastMdl,EssddkjParamsCovf,lsdoggL,isdjngfo] = estimate(Msddl,rstan);

[Egf,hgV,logfgL] = inffgher(EstsdMdl,arstn);

gfh= Egh./sqrt(Vf);

图 4. GARCH(1,1) 模型残差的相关性测验。

图 5. GARCH(1,1) 模型残差平方的相关性测验。

plot(at,dad)set(gsdcaa);set(gasdca);ylabel('GARCH Volatility h_t');

图 6. GARCH(1,1) 模型的稳定率。

马尔可夫链蒙特卡罗 (MCMC)

MCMC 由两局部组成。_ 蒙特卡洛_ 局部解决如何从给定的概率分布中抽取随机样本。马尔可夫  局部旨在生成一个稳固的随机过程,称为马尔可夫过程,以便通过蒙特卡罗办法程序抽取的样本靠近从“实在”概率分布中抽取的样本。

而后咱们能够迭代地应用 Gibbs 采样 _办法来产生一系列参数。常常被抛弃,因为它除了使散布正常化之外什么都不做。后验散布是不残缺的。_Metropolis 采样 办法和更通用的办法 Metropolis  _-Hastings 采样_用于此场景。这两种采样办法更罕用于难以制订残缺条件后验散布的非共轭先验散布。

% --- MCMCnmascmfgac = 10000;

bechvzta_mcmc = nan(nmc;dmc,1);

loxvgh_mcmc = nan(an,nmcjkldsmc);

alpha_mcmc = nan(nmcmssdc,length(alspdha0));

Sigmacvv_mcmc = nan(nmytsdcmc,1);



    % --- 吉布斯抽样:beta    rtnas_new = rtn./sqdssrt(exp(logshis)); % 从新格式化收益系列    x = 1./sqrt(exp(lsogshisd));

    V_gfbeta = 1/(x'*x + 1/Sigsgfma_bdeta0);g

    E_bgexta = V_bfgetfga*(beta0/Sifgma_beta0+gdfxf'*rtndf_new);

    betxa = cnormrnd(E_beta,sqrt(fgV_bfdfgeta));

    

    % --- Metropolis 抽样:ht    loghn1 = alphjklai(1)+alphai(2)*(alphai(1)+alphai(2)*loghi(n-1));

    loghf1 = [loghi(2:end); loghn1]; 前进一步 ht 的 % log    loghb1 = [logh0; 罗吉(1:end-1)]; 后退一步 ht 的 % log    % - 提出新的 ht    lojkghp = normrnd(lohghjkli,sijlgma_jlogjhp);

    % - 查看后验概率的对数比率    logr = log(normpdf(loghp, [ones(n,1),loghb1]*alphai',sqrt(Sigmavi))) + ...

  

 

    % --- 吉布斯抽样 alpha    zasdt = [ones(n-1,1),lokkghi(1:end-1)];

    V_alpghas = inv(inv(Sigjkmahjg_alpjha0) + zt'*zt/Si;gmavkl;i);

    E_aldfhpha = V_alpha*(inv(Sigmjhja_abvnl;'lpha0)*akllpha0' + zt'*loghi(2:end)/Smavi);

    alvbphai =v mvnrnd(E_vbal,npnha,V_bnm,bvalpha);

    

    % --- 吉布斯抽样:Sigfmav    SfSR = sum((logfgjhi(2:ehgjnd)-zt*alphaighj').^2);

    % 通过 OLS 获取 SSR 的代替办法    Sigjhavi = 1/randolhkm('Gamma',(nu0+n-1)/2,2/(nu0*Sigmavl;'k0+SSR));

随机稳定率 (SV) 模型

对稳定率进行随机建模始于 1980 年代初,并在 Jacquier、Polson 和 Rossi 的论文在 1994 年首次提供了随机稳定率的明确证据后开始实用。稳定率翻新是 SV 和 GARCH 模型之间的次要区别。在 GARCH 模型中,时变稳定率遵循确定性过程(稳定率方程中没有随机项),而在 SV 模型中它是随机的。

%% MCMC 用于随机稳定率

% --- 先验参数

Sigwertma_aelpha0 = etdiagweetwr([0.4,0.4]); % 协方差

% - 对于 sigrmea^2_v

nu0 = 1;

Sigemav0 = 0.01;% --- 应用 GARCH(1,1) 模型的初始值,以及 log(ht0) 的最小二乘拟合

bewtwai = EstMtydl.rtyConrtystatynt;

MrgeyDL = etyrffitytlm();alpefdgrtyhai = Mdl.Cvxoertyefficients{:,1}';

Sigretyrxmavi = nanvar(Mderyl.Reyefsidrdtyeruals.Raw);

然而,要取得概率分布的近似模式的归一化因子并不简略。咱们能够使用暴力计算来为每个可能的值生成一个概率网格,而后从网格中绘制。这称为 Griddy Gibbs 办法。或者,咱们能够应用 Metropolis 算法。在该算法中,要从中提取的提议散布能够是任何对称散布函数。提议散布函数也能够是不对称的。但在这种状况下,在计算从 跳到 的概率比率时,须要蕴含附加项以均衡这种不对称性。这称为 Metropolis-Hastings 算法。

能够应用 Metropolis-Hastings 算法的更简单的提议办法来缩小序列中的相关性,例如 Hamiltonian MCMC。

subplot(4,1,1);plot(beasdta_mcmc);

图 8. 预烧 burin-in 后参数序列的自相干。红线示意 5% 的显着性程度。

后果与探讨

去除 burin-in 后,咱们从参数的实在高维联结散布中失去能够近似随机抽取的样本的参数样本汇合。而后咱们能够对这些参数进行统计推断。例如,成对参数的联结散布和每个参数的边际散布如图 9 所示。咱们能够用联结散布来测试这个说法。显然与其余参数不相干。正如预期的那样,并且高度相干,应用它们的联结后验散布来证实采样的合理性。为了进步采样效率,升高序列中样本的相关性,咱们能够通过采样改良上述算法,并从它们的三元联结后验散布。然而,如果不是齐全不可能的话,为不同先验散布的变量计算出一个严密模式的后验散布是很麻烦的。在这种状况下,Metropolis-Hastings 抽样办法必定会发现它的劣势。

图 9. 成对参数联结散布的散点图(非对角面板)和参数边缘散布的直方图(对角面板)。

随机稳定率及其相信带是通过计算序列稳固后采样稳定率的均值和 2.5% 和 97.5% 分位数失去的。它绘制在图 10 中。

h_mcmc = exp(logf_mdsmc);nbudrin = 4000;lb = quanile(h_mcd,bunn+1:end),0.025,2);   % 2.5% 分位数 ub = quatgjeh_mcmc(nburhjkin+1:end)fhjk,0.975,2);   % 97.5% 分位数 holdghfd on; box on;plot(1:lengtgdhfh(t),V,'',dhfg1)plot(1:length(t),mdfghean(h_mcmc(:,nburnhgdf:enddgfh2),'linekljwdth',1)s

图 10. 4000 次 burin-in 迭代后随机稳定率的后验平均值。对于相信带,随机稳定率的 95% 分位数间以红色显示。

SV 模型的随机波动性总体上与 GARCH 模型十分类似,但更加参差不齐。这是很天然的,因为 SV 模型中假如了额定的随机项。与其余模型相比,应用随机稳定率模型的次要长处是稳定率被建模为随机过程而不是确定性过程。这使咱们可能取得序列中每个工夫的稳定率的近似散布。当利用于稳定率预测时,随机模型能够为预测提供置信度。另一方面,不利因素也很显著。计算成本绝对较高。


点击文末 “浏览原文”

获取全文残缺材料。

本文选自《MATLAB 随机稳定率 SV、GARCH 用 MCMC 马尔可夫链蒙特卡罗办法剖析汇率工夫序列》。

点击题目查阅往期内容

R 语言隐马尔可夫模型 HMM 间断序列重要性重抽样 CSIR 预计随机稳定率模型 SV 剖析股票收益率工夫序列
马尔可夫 Markov 区制转移模型剖析基金利率
马尔可夫区制转移模型 Markov regime switching
时变马尔可夫区制转换 MRS 自回归模型剖析经济工夫序列
马尔可夫转换模型钻研交通伤亡人数事变工夫序列预测
如何实现马尔可夫链蒙特卡罗 MCMC 模型、Metropolis 算法?
Matlab 用 BUGS 马尔可夫区制转换 Markov switching 随机稳定率模型、序列蒙特卡罗 SMC、M H 采样剖析工夫序列
R 语言 BUGS 序列蒙特卡罗 SMC、马尔可夫转换随机稳定率 SV 模型、粒子滤波、Metropolis Hasting 采样工夫序列剖析
matlab 用马尔可夫链蒙特卡罗 (MCMC) 的 Logistic 逻辑回归模型剖析汽车试验数据
stata 马尔可夫 Markov 区制转移模型剖析基金利率
PYTHON 用时变马尔可夫区制转换(MRS)自回归模型剖析经济工夫序列
R 语言应用马尔可夫链对营销中的渠道归因建模
matlab 实现 MCMC 的马尔可夫转换 ARMA – GARCH 模型预计
R 语言隐马尔可夫模型 HMM 辨认一直变动的股票市场条件
R 语言中的隐马尔可夫 HMM 模型实例
用机器学习辨认一直变动的股市情况—隐马尔科夫模型 (HMM)
Matlab 马尔可夫链蒙特卡罗法(MCMC)预计随机稳定率(SV,Stochastic Volatility)模型
MATLAB 中的马尔可夫区制转移(Markov regime switching) 模型
Matlab 马尔可夫区制转换动静回归模型预计 GDP 增长率
R 语言马尔可夫区制转移模型 Markov regime switching
stata 马尔可夫 Markov 区制转移模型剖析基金利率
R 语言如何做马尔可夫转换模型 markov switching model
R 语言隐马尔可夫模型 HMM 辨认股市变动剖析报告
R 语言中实现马尔可夫链蒙特卡罗 MCMC 模型

退出移动版