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

52次阅读

共计 5093 个字符,预计需要花费 13 分钟才能阅读完成。

原文链接:http://tecdat.cn/?p=27340 

稳定率是一个重要的概念,在金融和交易中有许多利用。它是期权定价的根底。稳定率还能够让您确定资产配置并计算投资组合的危险价值 (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. 回归平方的相关性测验。

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 采样_用于此场景。这两种采样办法更罕用于难以制订残缺条件后验散布的非共轭先验散布。

% --- MCMC

nmascmfgac = 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 模型中假如了额定的随机项。与其余模型相比,应用随机稳定率模型的次要长处是稳定率被建模为随机过程而不是确定性过程。这使咱们可能取得序列中每个工夫的稳定率的近似散布。当利用于稳定率预测时,随机模型能够为预测提供置信度。另一方面,不利因素也很显著。计算成本绝对较高。


最受欢迎的见解

1.HAR-RV- J 与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频稳定率

2.R 语言中基于混合数据抽样 (MIDAS) 回归的 HAR-RV 模型预测 GDP 增长回归的 HAR-RV 模型预测 GDP 增长 ”)

3.稳定率的实现:ARCH 模型与 HAR-RV 模型

4.R 语言 ARMA-EGARCH 模型、集成预测算法对 SPX 理论稳定率进行预测

5.GARCH(1,1),MA 以及历史模拟法的 VaR 比拟

6.R 语言多元 COPULA GARCH 模型工夫序列预测

7.R 语言基于 ARMA-GARCH 过程的 VAR 拟合和预测

8.matlab 预测 ARMA-GARCH 条件均值和方差模型

9.R 语言对 S&P500 股票指数进行 ARIMA + GARCH 交易策略

正文完
 0