ARIMA模型——MATLAB实现

arma()

功能:估计ARMA时间序列模型参数
格式:
m = armax(data, orders);
m = armax(data, 'na', na, 'nb', nb, 'nc', nc, 'nk', nk)
m = armax(data, orders, 'Property1', Value1,..., 'PropertyN', ValueN)

说明
模型描述为 A(q)y(t)=B(q)u(t-nk)+C(q)e(t)
data:输入/输出时间序列
orders:ARMA模型阶数结构,形式为orders = [na nb nc nk]
其中na,nb,nc为模型参数,nk为延迟。
property:模型估计时的参数设置

xcorr()和autocorr()

摘自博客
例如:A=[1,2,3,4] xcorr(A)=[4,10,20,30,20,10,4]
注:xcorr.length=A.lenth*2-1 ,且为对称

上面的矩阵,最后得到7个结果,其中第4个值最大11+22+33+44 = 30 。而第三个和第五个分别是间隔正负1的结果也就是12+23+34 = 20,21+32+43 = 20 。第二个和第六个分别是间隔正负2也就是13+24=11,31+42 = 11。第一个和第七个分别是间隔正负3也就是14 = 4 ,41=4

autocorr(Series,nLags,M,nSTDs) //计算并绘制时间序列的自相关函数

Series为时间序列
nLags--延迟,当nLags=[]或缺省时,计算ACF时在延迟点0、1、2、。。。、T处,T=min([20 length(Series-1)])
M--非负整数,表示在多大延迟时理论ACF为0.autocorr假设序列为MA(M),并且使用Bartlett估计方法来计算大于M的延迟的标准误差。如果M=[]或缺省,则为0,函数假设序列为高斯白噪声。
nSTDs--样本ACF估计误差的标准差。
ACF--样本自相关函数
Lags--与ACF(0,1,2,。。。,nLags)相对应的延迟
Bounds--置信区间的近似上下限,假设序列为MA(M)过程。

autocorr是对序列减去均值后做的自相关,最后又进行了归一化。而且由于自相关本身是偶函数,autocorr只是取了以中点n为起始的后面n个序列。

你可能感兴趣的:(ARIMA模型——MATLAB实现)