varma
语法
varma(ds,endogColNames,order,[exog],[trend='c'],[errorCovType='unstructured'],[measurementError=false],[enforceStationarity=true],[enforceInvertibility=true],[trendOffset=1],
[maxIter=50])
详情
使用向量自回归移动平均模型(Vector Autoregressive Moving-Average Model,简称 VARMA 模型)来分析多变量时间序列。返回一个字典,表示 VARMA 模型的分析结果,详细说明请参见“返回值”小节。
参数
ds 一张内存表或者一个 DataSource 类型构成的向量,包含需要分析的多变量时间序列。注意:不可为空。
endogColNames 字符串向量,表示 ds 中需要分析的多变量时间序列所对应的列名。
order 非负整数型向量,长度必须为 2,第一维表示自回归部分(AR)的阶数,第二维表示移动平均部分(MA)的阶数。
exog 可选参数,数值矩阵,表示时间序列数据之外的外生变量。矩阵每一列表示一个外生变量的时间序列数据,矩阵行数为时间序列样本数,与 ds 的行数相等。
trend 可选参数,字符串标量,表示在回归中使用的常数和趋势阶数。可取值:
-
‘c'表示只使用常量,默认值。
-
‘ct'表示使用常量和趋势。
-
’ctt'表示使用常数,线性趋势和二次趋势。
-
’n‘表示不使用常量和趋势。
errorCovType 可选参数,字符串标量,表示误差项的协方差矩阵的结构。可取值:
-
’unstructured‘表示会保存协方差矩阵的下三角部分,默认值。
-
’diagonal‘表示只保存对角线部分。
measurementError 可选参数,布尔标量,表示输入的多变量时间序列是否存在误差。默认值是 false,表示不存在。
enforceStationarity 可选参数,布尔标量,表示是否转换 AR 参数以在模型的自回归分量中增强平稳性。默认值为 true,表示转换。
enforceInvertibility 可选参数,布尔标量,表示是否变换 MA 参数以增强模型的移动平均分量的可逆性。默认值为 true,表示转换。
trendOffset 可选参数,正整数标量,表示开始时间序列值的偏移量。默认值为 1。
maxIter 可选参数,正整数标量,表示拟合时最大的迭代次数,默认值为 50。
返回值
返回一个字典,表示向量自回归移动平均模型的分析结果,字典有以下成员:
-
params:浮点数矩阵,表示向量自回归移动平均模型拟合得到的参数。
-
kAr:整数标量,表示向量自回归过程的阶数。
-
kMa:整数标量,表示向量移动平均部分的阶数。
-
kTrend:整数标量,表示向量自回归移动平均模型中的趋势数。
-
nobs:整数标量,表示输入的多变量时间序列的信息观测数量。
-
aic:浮点数标量,表示 Akaike 信息准则。
-
bic:浮点数标量,表示 Bayesian 信息准则。
-
hqic:浮点数标量,表示 Hannan-Quinn 信息准则。
-
llf:浮点数标量,表示向量自回归移动平均模型的对数似然值。
例子
data = loadText("macrodata.csv")
my_exog = matrix(DOUBLE, size(data), 1,,1)
result = varma(data, [`realgdp, `realcons, `realinv],[1,1],trend="c", exog=my_exog)
print(result)
/* Output:
params->[0.001792375138657,0.003160556421415,-0.007883363910928,-0.339419264165185,0.755250482937653,0.058642159539323,-0.133526968617148,0.32767138782651,0.042514529460363,-2.212343999390979,4.610354288385349,0.302449619489419,0.056726965953926,-0.069554043921028,-0.024169855056237,0.03072738358672,-0.056571376624308,-0.015977637956917,0.249792348549773,-0.171657812582861,-0.075503097693781,0.001792375138657,0.003160556421415,-0.007883363910928,0.007685902441147,0.003916408996852,0.005142039118261,0.030338334390003,-0.016066874864259,0.020322423082551]
llf->1974.199528289279214
kAr->1
kMa->1
kTrend->1
nobs->202
aic->-3888.399056578558429
bic->-3789.151025656522506
hqic->-3848.243123697545343
*/