arma模型_GARCH模型应用:以国泰君安为例
1.下载国泰君安股票数据,计算对数收益率
(1)首先安装包"quantmod",这个包可以从雅虎财经的下载股票数据,具体包的解释见"【量化基础】R语言获取金融数据之quantmod包"。
install.packages("quantmod")#安装包quantmod
library(quantmod)#调用包
setSymbolLookup(GTJA=list(name='601211.ss',src='yahoo'))#下载国泰君安601211数据
getSymbols("GTJA")
spc<-Cl(GTJA)#Cl()收盘价函数
rtn<-diff(log(spc))#对数收益率
rtn<-rtn[8:length(rtn)]#前7个数据为缺失数据,收集第8个以后数据。
ts.plot(rtn,ylab="对数收益率",main="国泰君安")#画出国泰君安对数收益率时间序列图
2.ARMA模型建立与残差的检验
- 首先调用时间序列分析包TSA: Time Series Analysis,该包包含了《时间序列分析及应用:R语言》中几乎所有涉及到的函数;
- 然后计算自相关系数(acf),偏自相关系数(pacf)以及推广的自相关系数(eacf),来确定ARMA的阶数;
- 建立ARMA模型,计算出残差,画出残差图,计算残差的acf,残差平方的acf,残差平方的pacf,残差绝对值的acf,对残差的平方进行Box-Ljung检验,判断确定残差是否独立?
library(TSA)#调用包
acf(rtn)
pacf(rtn)
eacf(rtn)
m1<-arima(rtn,order=c(2,0,2),include.mean=FALSE)
m1
resi<-m1$residuals
plot(resi)
残差图
分析:从残差图中可以看出有平静和波动相互交替的现象,从而说明对数收益率的条件方差随时间的变化而变化。
画出残差、残差平方acf与pacf图以及绝对值pacf图
par(mfrow=c(4,1))
acf(resi)
acf(resi^2)
pacf(resi^2)
acf(abs(resi))
从上图可以看出,残差的平方具有相关性,从而说明残差不独立且条件方差不是常数。
Box-Ljung检验
Box.test(resi^2,lag=12,type="Ljung")
检验结果
--------------------
Box-Ljung test
data: resi^2
X-squared = 281.04, df = 12, p-value < 2.2e-16
------------------------------------------
结果分析:
3.arma(2,2)+garch(1,1)模型建立、残差检验以及预测
install.packages("fGarch")#安装包garch模型包
library(fGarch)#调用fGarch包
m2<-garchFit(~arma(2,2)+garch(1,1),data=rtn,trace=F)
summary(m2)
程序结果:
-----------------------
Title:
GARCH Modelling
Call:
garchFit(formula = ~arma(2, 2) + garch(1, 1), data = rtn, trace = F)
Mean and Variance Equation:
data ~ arma(2, 2) + garch(1, 1)
<environment: 0x000000002c719990>
[data = rtn]
Conditional Distribution:
norm
Coefficient(s):
mu ar1 ar2 ma1 ma2 omega
1.0790e-04 3.6944e-01 -7.6402e-01 -3.9155e-01 7.3781e-01 2.1767e-06
alpha1 beta1
5.6396e-02 9.3788e-01
Std. Errors:
based on Hessian
Error Analysis:
Estimate Std. Error t value Pr(>|t|)
mu 1.079e-04 7.421e-04 0.145 0.884391
ar1 3.694e-01 8.957e-02 4.124 3.72e-05 ***
ar2 -7.640e-01 5.426e-02 -14.081 < 2e-16 ***
ma1 -3.915e-01 1.090e-01 -3.591 0.000329 ***
ma2 7.378e-01 6.167e-02 11.963 < 2e-16 ***
omega 2.177e-06 9.266e-07 2.349 0.018820 *
alpha1 5.640e-02 1.180e-02 4.779 1.76e-06 ***
beta1 9.379e-01 1.064e-02 88.145 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Log Likelihood:
1804.476 normalized: 2.615183
Description:
Tue May 08 11:21:54 2018 by user:
Standardised Residuals Tests:
Statistic p-Value
Jarque-Bera Test R Chi^2 279.9075 0
Shapiro-Wilk Test R W 0.9502314 1.720501e-14
Ljung-Box Test R Q(10) 6.373662 0.782954
Ljung-Box Test R Q(15) 12.03866 0.6761006
Ljung-Box Test R Q(20) 21.83737 0.3494
Ljung-Box Test R^2 Q(10) 3.650817 0.9617277
Ljung-Box Test R^2 Q(15) 10.16369 0.8093186
Ljung-Box Test R^2 Q(20) 16.80866 0.6653606
LM Arch Test R TR^2 5.142881 0.9530354
Information Criterion Statistics:
AIC BIC SIC HQIC
-5.207178 -5.154579 -5.207443 -5.186832
-------------------------------
结果分析:
(1)模型为
(2)模型的检验
标准化残差
下面画出95%点预测区间的对数收益率的时序图:
plot(m2)
然后输入3,得到下图
对序列进行预测,得到未来6期对数收益率预测值以及波动率。
predict(m2,6)
程序结果
--------------------------------------------
meanForecast meanError standardDeviation
1 0.0009769469 0.01636570 0.01636570
2 0.0007503291 0.01638934 0.01638535
3 -0.0003613058 0.01641850 0.01640486
4 -0.0005988464 0.01643922 0.01642424
5 0.0001627066 0.01645866 0.01644349
6 0.0006255391 0.01647782 0.01646260
4. 新息服从学生t分布的GARCH(1,1)模型建立、检验与预测
m3<-garchFit(~arma(2,2)+garch(1,1),data=rtn,cond.dist="std",trace=F)
summary(m3)
plot(m3)
predict(m3,6)
这里结果就不在显示。读者自己运行并给予解释。
5.参考文献
【1】R语言与现代统计方法 刘强等编著 清华大学出版社
arma模型_GARCH模型应用:以国泰君安为例相关推荐
- garch模型python步骤_GARCH模型的建模步骤?
泻药,我将建立道琼斯工业平均指数(DJIA)日交易量对数比的ARMA-GARCH模型来演示建模步骤. 原文链接:R语言: GARCH模型股票交易量的研究道琼斯股票市场指数tecdat.cn 获取数据 ...
- arma找不到合适的模型_ARMA模型建模与预测指导
实验二 ARMA 模型建模与预测指导 一.实验目的 学会通过各种手段检验序列的平稳性:学会根据自相关系数和偏自相关系数来初步判断ARMA 模型的阶数p 和q ,学会利用最小二乘法等方法对ARMA 模型 ...
- AR、MA、ARMA和ARIMA模型------时间序列预测
ARMA模型的全称是自回归移动平均模型,它是目前最常用的拟合平稳序列的模型.它又可以细分为AR模型.MA模型和ARMA三大类.都可以看做是多元线性回归模型. AR模型 具有如下结构的模型称为阶自回归模 ...
- 时间序列之AR、MA、ARMA、ARIMA模型
参考:<时间序列分析-基于R王燕 编著> 一.时间序列分析 时间序列分法主要针对动态数据进行处理.该方法是以数理统计学方法和随机过程理论为基础,并对一序列随机数据所遵从的统计规律进行研究, ...
- 【时间序列分析】12. ARMA(1,1)模型
Contents A R M A ( 1 , 1 ) {\rm ARMA}(1,\,1) ARMA(1,1) 模型 模型设定与平稳解 自协方差函数 自相关系数和偏相关系数 A R M A ( 1 , ...
- [时间序列分析][4]--AR模型,MA模型,ARMA模型介绍
自相关和偏自相关的两个函数代码 由于后面会经常画一组序列自相关和偏自相关的图像,所以就把自己写的这个两个画图的函数的代码贴上,供大家参考. 首先是自相关的函数 输入的三个参数分别是{数据,滞后数,置信 ...
- 时间序列分析之AR、MA、ARMA和ARIMA模型
如果一个时间序列经过平稳性检验后得到是一个平稳非白噪声序列,那么该序列中就蕴含着相关性的信息. 在统计学中,通常是建立一个线性模型来拟合该时间序列的趋势.其中,AR.MA.ARMA以及ARIMA都是较 ...
- 趋势预测方法(三)ARMA ARIMA SARIMA模型预测_时序递推预测
ARMA/ARIMA/SARIMA模型预测 a基本原理: 这三种模型都是用来预测时序性数据.其中ARIMA和SARIMA是由ARMA模型演变过来的,而ARMA是由AR模型(自回归模型)和MA模型(移动 ...
- 基于 Python 的时序模型——AMIRA模型
时间序列分析的目的:给定一个已被观测了的时间序列,预测该序列的未来值 ARIMA 模型:如果一个时间序列经差分运算后具有平稳性,则该序列为差分平稳序列,可以使用 ARIMA 模型进行分析. 时间序列的 ...
最新文章
- iOS下JS与OC互相调用(一)--UIWebView 拦截URL
- 可能是基于 Hooks 和 Typescript 最好的状态管理工具
- 16位模式/32位模式下PUSH指令探究——《x86汇编语言:从实模式到保护模式》读书笔记16
- Element UI的Table用法
- JAVA加密算法系列-AesCBC
- hibernate之多对多关联映射
- mysql配置和管理(转载)
- Fortran 注释符号
- 中文OCR的汉字按常见度的划分
- CRIO脱机计算机工作,LabVIEW和cRIO入门
- Linux 用户授权的方法,linux中用户和权限管理
- openssl自建CA服务器自签证书服务器
- 如何设置虚拟机访问外网
- 长江商学院营销学李洋教授分析大数据与精准营销
- 在腾讯云搭建代理服务器的全部过程
- 使用nvm安装node报错,Could not retrieve https://nodejs.org/dist/latest/SHASUMS256.txt. Get “https://nodej
- Windows Error Code
- discuz手机版帖子页面支持表格添加边框及边框颜色
- 微信小程序直播卖货模式怎么开启
- 读华为副总裁徐家骏总结的个人心得
热门文章
- c++错误functional:1526:9: error: no type named ‘type’ in ‘class std::result_of
- canvas 实现图片局部模糊_小技巧!H5使用Html2Canvas实现自动截屏(下)
- Opencv和C++实现canny边缘检测
- 使用C与C++混合编程封装UDP协议
- 通过一个例子介绍 IDA pro 的简单使用
- 压栈, 跳转,执行,返回:从汇编看函数调用
- 安装 Python 包时解决 Microsoft visual c++ 14.0 is required 问题
- Spring Data JPA 从入门到精通~思维导图
- Java消息服务~自动分配的消息头
- 误删了计算机桌面回收站,我电脑回收站里的东西已经被删除几天了?怎么可以找回!谢谢...