全文链接:http://tecdat.cn/?p=19129
最近咱们被客户要求撰写对于HAR和HEAVY模型的钻研报告,包含一些图形和统计输入。
在本文中,在学术界和金融界,剖析高频财务数据的经济价值当初不言而喻。
摘要
它是每日危险监控和预测的根底,也是高频交易的根底。为了在财务决策中高效利用高频数据,高频时代采纳了最先进的技术,用于荡涤和匹配交易和报价,以及基于高收益的流动性的计算和预测。
高频数据的解决
在本节中,咱们探讨高频金融数据处理中两个十分常见的步骤:(i)清理和(ii)数据聚合。
> dim(dataraw);[1] 48484 7> tdata$report;initial number no zero prices select exchange48484 48479 20795sales condition merge same timestamp20135 9105> dim(afterfirstclean)[1] 9105 7
高频数据的汇总
通常不会在等距离的工夫点记录价格,而许多理论稳定率掂量办法都依赖等理论距离的收益。有几种办法能够将这些异步和/或不规则记录的序列同步为等距工夫数据。
最受欢迎的办法是依照工夫汇总,它通过获取每个网格点之前的最初价格来将价格强制为等距网格。
> # 加载样本价格数据> data("sample");> # 聚合到5分钟的采样频率:> head(tsagg5min);PRICE2008-01-04 09:35:00 193.9202008-01-04 09:40:00 194.6302008-01-04 09:45:00 193.5202008-01-04 09:50:00 192.8502008-01-04 09:55:00 190.7952008-01-04 10:00:00 190.420> # 聚合到30秒的频率:> tail(tsagg30sec);PRICE2008-01-04 15:57:30 191.7902008-01-04 15:58:00 191.7402008-01-04 15:58:30 191.7602008-01-04 15:59:00 191.4702008-01-04 15:59:30 191.8252008-01-04 16:00:00 191.670
在下面的示例中,价格被强制设置为5分钟和30秒的等距工夫网格。此外,aggregates函数内置于所有已实现的度量中,能够通过设置参数align.by和align.period来调用该函数。在这种状况下,首先将价格强制等距离的惯例工夫网格,而后依据这些惯例时间段内执行察看值的收益率来计算理论度量。这样做的长处是,用户能够将原始价格序列输出到理论度量中,而不用放心价格序列的异步性或不规则性。
带有工夫和稳定率计算的价格示例:
> #咱们假如stock1和stock2蕴含虚构股票的价格数据:> #汇总到一分钟:> Price_1min = cbind(aggregatePrice(stock1),aggregatePrice(stock2));> #刷新工夫聚合:refreshTime(list(stock1,stock2));> #计算跳跃鲁棒的波动性指标> #基于同步数据rBPCov(Price_1min,makeReturns=TRUE);> #计算跳跃和噪声鲁棒的波动性度量> #基于非同步数据:
理论波动性度量
高频数据的可用性使钻研人员可能依据日内收益的平方来预计理论波动性(Andersen等,2003)。实际上,单变量稳定率预计的次要挑战是应答(i)价格的上涨和(ii)宏观构造噪声。因而多变量稳定率预计也引起了人们的留神。高频软件包施行了许多早先提出的理论稳定率办法。
上面的示例代码阐明了日内周期的预计:
> #计算并绘制日内周期> head(out); returns vol dailyvol periodicvol2005-03-04 09:35:00 -0.0010966963 0.004081072 0.001896816 2.1515392005-03-04 09:40:00 -0.0005614217 0.003695715 0.001896816 1.9483792005-03-04 09:45:00 -0.0026443880 0.003417950 0.001896816 1.801941
点击题目查阅往期内容
R语言预测期货稳定率的实现:ARCH与HAR-RV与GARCH,ARFIMA模型比拟
左右滑动查看更多
01
02
03
04
波动性预测
学术研究人员普遍认为,如果进行适当的治理,对高频数据的拜访将带来劣势,能够更好地预测将来价格变动的波动性。早在2003年Fleming等人(2003年)预计,投资者将违心每年领取50到200个点,来预测投资组合绩效的收益,这是通过应用高频收益率而不是每日收益率来进行稳定率预测的。
只管HAR和HEAVY模型的指标雷同,即对条件稳定率进行建模,但它们采纳的办法不同。HAR模型专一于预测收盘价变动。HAR模型的次要长处是,它易于预计(因为它实质上是一种能够用最小二乘方预计的线性模型), HEAVY模型的次要长处在于,它能够模仿收盘价和收盘价的条件方差。此外,HEAVY模型具备动量和均值回归效应。与HAR模型相同,HEAVY模型的预计是通过正态分布的最大似然来实现的。接下来的本文更具体地介绍HAR模型和HEAVY模型,当然还要探讨并阐明如何应用高频收益率来预计这些模型。
HAR模型
示例
将HARRV模型拟合到道琼斯工业指数,咱们加载每日理论稳定率。
> #每天获取样本理论稳定率数据> DJI_RV = realized$DJI; #抉择 DJI> DJI_RV = DJI_RV[!is.na(DJI_RV)]; #删除缺失值
第二步,咱们计算传统的异构自回归(HAR)模型。因为HAR模型只是线性模型的一种非凡类型,因而也能够通过以下形式实现:harModel函数的输入是lm的子级harModel lm,线性模型的规范类。图绘制了harModel函数的输入对象,程度轴上有工夫,在垂直轴上有察看到的理论稳定率和预测的理论稳定率(此剖析是在样本中进行的,然而模型的预计系数能够显然用于样本外预测)。从图的查看中能够分明地看出,harModel能够绝对疾速地拟合稳定程度的变动,
[1] "harModel" "lm"> x;Model:RV1 = beta0 + beta1 * RV1 + beta2 * RV5 + beta3 * RV22Coefficients:beta0 beta14.432e-05 1.586e-01r.squared adj.r.squared0.4679 0.4608> summary(x);Call:"RV1 = beta0 + beta1 * RV1 + beta2 * RV5 + beta3 * RV22"Residuals:Min 1Q Median 3Q Max-0.0017683 -0.0000626 -0.0000427 -0.0000087 0.0044331Coefficients:Estimate Std. Error t value Pr(>|t|)beta0 4.432e-05 3.695e-05 1.200 0.2315beta1 1.586e-01 8.089e-02 1.960 0.0512 .beta2 6.213e-01 1.362e-01 4.560 8.36e-06 ***beta3 8.721e-02 1.217e-01 0.716 0.4745---Signif. codes: 0 ^a A¨ Y***^a A´ Z 0.001 ^a A¨ Y**^a A´ Z 0.01 ^a A¨ Y*^a A´ Z 0.05 ^a A¨ Y.^a A´ Z 0.1 ^a A¨ Y ^a A´ Z 1Residual standard error: 0.0004344 on 227 degrees of freedomMultiple R-squared: 0.4679, Adjusted R-squared: 0.4608F-statistic: 66.53 on 3 and 227 DF, p-value: < 2.2e-16
HARRVCJ模型拟合
预计harModel的更简单版本。例如,在Andersen等人中探讨的HARRVCJ模型。能够应用示例数据集估算,如下所示:
> data = makeReturns(data); #获取高频收益数据> xModel:sqrt(RV1) = beta0 + beta1 * sqrt(C1) + beta2 * sqrt(C5) + beta3 * sqrt(C10)+ beta4 * sqrt(J1) + beta5 * sqrt(J5) + beta6 * sqrt(J10)Coefficients:beta0 beta1 beta2 beta3 beta4 beta5-0.8835 1.1957 -25.1922 38.9909 -0.4483 0.8084beta6-6.8305r.squared adj.r.squared0.9915 0.9661
最初一个示例是仅将日内收益作为输出就能够估算的一种非凡类型HAR模型。
HEAVY模型
将HEAVY模型拟合到道琼斯工业均匀指数。第一步,咱们加载道琼斯工业均匀指数。而后,咱们从该库中抉择每日收益和每日理论核预计(Barndorff-Nielsen等,2004)。当初,作为HeavyModel输出的数据矩阵的第一列为收益率,第二列为Realized Kernel估计值。咱们进一步将参数设置为采样期内日收益率和均匀理论核预计方差。当初,咱们来估算HEAVY模型。依据模型的输入,图绘制了由模型中的第二个方程式估算的条件方差。
> # heavy模型在DJI上的实现:> returns = returns[!is.na(rk)]; rk = rk[!is.na(rk)]; # 删除NA> startvalues = c(0.004,0.02,0.44,0.41,0.74,0.56); #初始值> output$estparams[,1]omega1 0.01750506omega2 0.06182249alpha1 0.45118753alpha2 0.41204541beta1 0.73834594beta2 0.56367558
流动性
交易量和价格
交易量和价格通常作为独自的数据对象提供。对于许多与交易数据无关的钻研和理论问题,须要合并交易量和价格。因为交易量和价格可能会收到不同的报告滞后影响,因而这不是一个简略的操作(Leeand Ready 1991)。函数matchTradesQuotes可用于匹配交易量和价格。依据Vergote(2005)的钻研,咱们将价格设置为2秒作为默认值。
流动性掂量
能够应用函数tqLiquidity依据匹配的交易量和价格数据计算流动性指标。表中计算了次要实现的流动性掂量指标,并且能够用作函数tqLiquidity的参数。
以下示例阐明了如何:(i)匹配交易和报价,(ii)获取交易方向,以及(iii)计算流动性掂量指标。
> #加载数据样本> #匹配交易量和价格数据> tqdata = matchTradesQuotes(tdata,qdata);> #在tqdata中显示信息> colnames(tqdata)[1:6];[1] "SYMBOL" "EX" "PRICE" "SIZE" "COND" "CORR"> #依据Lee-Ready规定推断的交易方向> #计算无效价差> es = tqLiquidity(tqdata,type="es");
点击文末 “浏览原文”
获取全文残缺材料。
本文选自《R语言HAR和HEAVY模型剖析高频金融数据稳定率》。
点击题目查阅往期内容
R语言中基于混合数据抽样(MIDAS)回归的HAR-RV模型预测GDP增长
HAR-RV-J与递归神经网络(RNN)混合模型预测和交易大型股票指数的高频稳定率
R语言预测期货稳定率的实现:ARCH与HAR-RV与GARCH,ARFIMA模型比拟
PYTHON用GARCH、离散随机稳定率模型DSV模仿预计股票收益工夫序列与蒙特卡洛可视化
极值实践 EVT、POT超阈值、GARCH 模型剖析股票指数VaR、条件CVaR:多元化投资组合预测危险测度剖析
Garch稳定率预测的区制转移交易策略
金融工夫序列模型ARIMA 和GARCH 在股票市场预测利用
工夫序列分析模型:ARIMA-ARCH / GARCH模型剖析股票价格
R语言危险价值:ARIMA,GARCH,Delta-normal法滚动预计VaR(Value at Risk)和回测剖析股票数据
R语言GARCH建模罕用软件包比拟、拟合规范普尔SP 500指数稳定率工夫序列和预测可视化
Python金融工夫序列模型ARIMA 和GARCH 在股票市场预测利用
MATLAB用GARCH模型对股票市场收益率工夫序列稳定的拟合与预测R语言GARCH-DCC模型和DCC(MVT)建模预计
Python 用ARIMA、GARCH模型预测剖析股票市场收益率工夫序列
R语言中的工夫序列分析模型:ARIMA-ARCH / GARCH模型剖析股票价格
R语言ARIMA-GARCH稳定率模型预测股票市场苹果公司日收益率工夫序列
Python应用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模仿进行股价预测
R语言工夫序列GARCH模型剖析股市稳定率
R语言ARMA-EGARCH模型、集成预测算法对SPX理论稳定率进行预测
matlab实现MCMC的马尔可夫转换ARMA - GARCH模型预计
Python应用GARCH,EGARCH,GJR-GARCH模型和蒙特卡洛模仿进行股价预测
应用R语言对S&P500股票指数进行ARIMA + GARCH交易策略
R语言用多元ARMA,GARCH ,EWMA, ETS,随机稳定率SV模型对金融工夫序列数据建模
R语言股票市场指数:ARMA-GARCH模型和对数收益率数据探索性剖析
R语言多元Copula GARCH 模型工夫序列预测
R语言应用多元AR-GARCH模型掂量市场危险
R语言中的工夫序列分析模型:ARIMA-ARCH / GARCH模型剖析股票价格
R语言用Garch模型和回归模型对股票价格剖析
GARCH(1,1),MA以及历史模拟法的VaR比拟
matlab预计arma garch 条件均值和方差模型R语言POT超阈值模型和极值实践EVT剖析
R语言极值推断:狭义帕累托散布GPD应用极大似然预计、轮廓似然预计、Delta法
R语言极值实践EVT:基于GPD模型的火灾损失散布剖析
R语言有极值(EVT)依赖构造的马尔可夫链(MC)对洪水极值剖析
R语言POT超阈值模型和极值实践EVT剖析
R语言混合正态分布极大似然预计和EM算法
R语言多项式线性模型:最大似然预计二次曲线
R语言Wald测验 vs 似然比测验
R语言GARCH-DCC模型和DCC(MVT)建模预计
R语言非参数办法:应用核回归平滑预计和K-NN(K近邻算法)分类预测心脏病数据
matlab实现MCMC的马尔可夫转换ARMA - GARCH模型预计
R语言基于Bootstrap的线性回归预测置信区间预计办法
R语言随机搜寻变量抉择SSVS预计贝叶斯向量自回归(BVAR)模型
Matlab马尔可夫链蒙特卡罗法(MCMC)预计随机稳定率(SV,Stochastic Volatility) 模型
Matlab马尔可夫区制转换动静回归模型预计GDP增长率R语言极值推断:狭义帕累托散布GPD应用极大似然预计、轮廓似然预计、Delta法