一、基本理论知识
1、ARMA模型:
对不含季节变动的平稳序列进行建模。
ARMA(p,q) :
y[t] = a[0] + a[1]y[t-1] + … + a[p]y[t-p] + b[1]e[t-1] + … + b[q]e[t-q] + e[t]
2:、ARIMA模型:
如果数据具有非平稳性质,且要适配一个最佳时间序列模型,往往需要先差分以求平稳,在适配ARMA模型。
ARIMA(p,d,q):
X[t] = a[1]X[t-1] + … + a[p]X[t-p] + e[t] + b[1]e[t-1] + … + b[q]e[t-q]
二、数据选取:
2010-01-01~2020-10-27的上证指数收盘价。
三、R的实现步骤:
1、导入数据
导入数据的方法很多,这里用“quantmod”包从“雅虎财经”上下载,并进行初步的处理:
library(quantmod)
library(xts)
setSymbolLookup(SSEC=list(name="000001.SS",src="yahoo"))
#从yahoo上下载好数据
getSymbols("SSEC",from="2010-01-01",to="2020-10-27")
ssec=na.omit(SSEC)#删去不存在数据或数据缺失的整行
2、画出时序图和自相关图:
主要看自相关图,若时序非平稳,则需要先转化为平稳时序,才能用ARMA建模&