跳到主要内容

时间序列分析

VAR 向量自回归模型

把一组平稳序列同时写成彼此滞后的线性系统,用信息准则选阶,并用正交化脉冲响应看冲击如何在方程之间传递。

更新日期 2026-08-29 时序

这篇能回答什么

VAR 回答的是:「这几条已经排好时间的定量指标,如何用彼此的过去值互相预报,以及一次冲击会沿哪条路径散开」。系统里每个变量都是内生的:右侧出现所有列的滞后,不再事先指定谁是因、谁是果。系数矩阵给出当期方程,正交化脉冲响应把冲击在未来 10 期的轨迹画出来。

适合:宏观教学表里同步的序列 A / B / C,或一组已经平稳的利率、通胀与产出偏离。不适合:还带着单位根的水平总量、只有一列的单序列预测、以及想识别政策处理效应的设计。

什么时候不该用

只有一列时用Auto ARIMA,不要硬凑 VAR。内生列未平稳,先ADF。只要成对预测增量,用格兰杰因果。关心残差波动聚集,改GARCH。

如何选择方法

目标是系统动态与脉冲用 VAR;目标是单列外推用 Auto ARIMA;目标是两列预测领先用格兰杰。选阶在本过程内部用 AIC 完成,不必先看完 ACF 再手填 p,但平稳性不能省。

  • VAR:2–10 条内生序列;maxlags=5 内按 AIC 选阶,输出系数矩阵与 10 期 IRF。

  • 格兰杰因果:一对方向上的 SSR F,滞后固定 1–4。

  • ADF:每条内生列的前置平稳性。

  • Auto ARIMA:单目标 (p,d,q) 网格,不估计交叉脉冲。

输入、输出与限制

输入

内生序列至少两列,至多十列,定量或时间序列。界面以「内生序列」为主;若另有列被放进因变量角色,会与内生列合并后一起估计。按所用列删缺失,行序当作时间。

  • 内生序列:最少 2 个,最多 10 个。

输出

系数矩阵:行是 const 与 L1.变量名(以及若选到更高阶的 L2…),列是各方程的被解释变量。单元格为系数,P<0.05 带 *。表注给最优滞后、AIC、BIC 与样本量。图为正交化脉冲响应(未来 10 期)。洞察复述内生名单与选中的阶。

产品限制

  • 搜索上限 maxlags=5,信息准则固定 AIC(BIC 只报告、不负责选阶)。

  • 有效行数必须不少于 15(约 3×最大滞后);本例 80 行足够。

  • AIC 若选出滞后 0,过程会停止:认为没有可估计的自回归结构。

  • 脉冲响应为正交化 IRF,步长 10;表中不另附方差分解数字。

  • 完全共线或某列为零方差会导致拟合失败。

案例

研究问题。 宏观教学表示例要在三条同步序列上估计一个小型 VAR:看各列主要跟自己的过去走,还是存在可报告的交叉滞后,并用脉冲响应看冲击是否收回零轴。

教学示例来自时间序列表,工作表为「macro」,有效期数 80(期数、序列A、序列B、序列C)。内生序列勾选三列定量。AIC 选出滞后 1,AIC=−1.37,BIC=−1.01。对角线上 L1.序列A→序列A 为 0.8793*,L1.序列B→序列B 为 0.9173*,L1.序列C→序列C 为 0.78*;交叉项里显著的是 L1.序列C→序列B(0.22*)。下载后按同样三列复现。

下载教学示例表(时间序列)

在 StatsX 中操作

  1. 步骤 1 · 上传表格

    打开工作台,将 Excel / CSV / JSON 拖入上传区。本案例使用时间序列 xlsx,确认工作表为「macro」。单文件不超过 20 MB。

  2. 步骤 2 · 查看画像与质量

    三列定量、80 期对齐。「期数」只用来核对顺序,不要放进内生序列。先对各列做 ADF。

  3. 步骤 3 · 选择「VAR 向量自回归模型」

    在算法目录搜索「VAR」或「向量自回归」,点选该方法。不要和单方程线性回归的多因变量搞混。

  4. 步骤 4 · 指定变量并运行

    内生序列勾选序列A、序列B、序列C(2–10 列)。点运行。不要把期数或事件 0/1 塞进来。

  5. 步骤 5 · 阅读结果

    先读表注里的最优滞后与 AIC,再读对角系数是否带星,最后看 IRF 是否回到零。交叉星号再对照格兰杰方向。

StatsX 工作台上传宏观 VAR 教学示例
将教学示例表拖入工作台上传区。
列画像
列画像给出类型与缺失,便于确认至少两列内生定量序列。
在目录中选择 VAR 向量自回归模型
在算法目录中选定「VAR 向量自回归模型」。
为 VAR 指定内生序列
内生序列勾选序列A、序列B、序列C后运行。

如何阅读输出

下表由 macro 三列(80 期)拟合得到。AIC 在 1–5 阶网格里选定 滞后 1。const 行三个截距都带 *。自身一阶滞后都大且带 *,系统接近「各自 AR(1)」;跨方程里只有 L1.序列C 进入序列B 的方程时带 *(0.22*),L1.序列A 对 B、C 都不显著。这与「序列A 不是序列B 的格兰杰原因」那张四行表一致。

VAR 向量自回归系数矩阵汇总
滞后项/变量序列A序列B序列C
const0.6471*0.6694*0.7691*
L1.序列A0.8793*-0.0073-0.1158
L1.序列B0.03550.9173*0.0404
L1.序列C0.14990.22*0.78*

左右滑动可查看完整表格

最优滞后阶数=1,AIC=-1.37,BIC=-1.01,样本量=80。带 * 表示 P<0.05。单元格为回归系数(Coef)。

VAR 系数矩阵结果表
工作台中的系数矩阵,星号与表注应与上表一致。
VAR 正交化脉冲响应
正交化 IRF 画未来 10 期;路径是否回零以图为准,系数仍以矩阵为准。

【VAR向量自回归】内生变量=序列A、序列B、序列C,最优滞后阶=1。

【VAR·动态冲击】某一变量受一单位正向冲击时,可通过脉冲响应观察其他变量在未来各期的响应方向与收敛性;响应长期位于零轴上方表示正向溢出,逐渐回归零轴表示冲击收敛。

解读顺序:每列是否平稳 → N 与变量个数是否撑得住 5 阶搜索 → AIC 选中的 p(本例 1)→ 对角系数 → 交叉星号 → IRF 是否收敛。BIC=−1.01 高于 AIC=−1.37(代数上更大),但选阶权杖在 AIC。不要因为教材常写「先估到 4 阶」就否定本表的滞后 1。

理论与公式

记 Y_t 为 k 维内生向量。滞后 p 的约化 VAR 为:

StatsX 在 p=1…5 上拟合,取 AIC 最小者。本例 k=3、p=1,每个方程 1 个截距加 3 个滞后系数。选阶公式与报告中的 AIC 一致:

正交化脉冲响应用 Cholesky 因子把同期相关三角化,得到未来 10 期的 orth IRF。变量排列顺序会影响「谁先被冲击」的路径,写论文时应说明内生列在表中的左右顺序。系数表里的 * 是单系数 t 检验,和系统级 AIC 选阶不是同一件事。

注意事项

  • AIC 偏爱更长滞后,BIC 更狠;本产品只让 AIC 选阶,BIC 仅供对照。

  • 未平稳的水平 VAR 会让脉冲持久不回零,先 ADF。

  • 星号是单系数显著性:对角很大、交叉不显著,系统仍可能被 AIC 接受。

  • IRF 的 10 期截断不等于冲击在第 10 期「结束」。

  • Cholesky 顺序依赖列序,调换序列 A/B/C 的勾选顺序会改变交叉脉冲形状。

  • k 接近 10 且 p 被拉到 5 时,参数个数膨胀,80 期会不够,应减列或接受更短滞后。

常见问题

参考文献

  • Sims, C. A. Macroeconomics and Reality[J]. Econometrica, 1980, 48(1): 1–48.

  • Lütkepohl, H. New Introduction to Multiple Time Series Analysis[M]. Springer.

  • Hamilton, J. D. Time Series Analysis[M]. Princeton University Press.

  • 王燕. 应用时间序列分析[M]. 中国人民大学出版社.