教程 ·
VAR向量自回归用AI一句话完成 — 定阶、Granger因果、脉冲响应IRF与方差分解FEVD全攻略
VAR向量自回归完整教程:AI自动完成定阶(AIC/SC/HQ)、Granger因果检验、脉冲响应函数(IRF)与预测误差方差分解(FEVD),给出符合APA 7th格式的论文报告句式,SPSS+R+Stata三引擎全支持。
研究利率、GDP、通胀之间的动态传导?SPSS的VAR对话框几乎没有?R的
vars包参数一大堆?这篇教程教你用AI一句话跑完VAR全套流程——从定阶到Granger因果,从IRF到FEVD——60秒输出可直接贴进论文的三线表和APA格式文字。
多变量时间序列:为什么VAR是标准选择
经济学、金融学、宏观政策研究里,核心变量之间往往相互影响、彼此反馈:
- 货币政策冲击如何传导到产出和物价?
- 股票市场与债券市场之间存在溢出效应吗?
- 贸易政策变化对汇率、出口和GDP的冲击持续多少期?
这类问题不能用单方程回归——自变量和因变量之间存在双向因果(内生性),单方程模型会给出有偏估计。**向量自回归(Vector Autoregression, VAR)**正是为此而生:将所有变量都视为内生变量,每个变量都对自身和其他所有变量的滞后期做回归,让数据"自己说话",不预设任何单向因果结构。
VAR的核心分析链路是:
- 平稳性检验(ADF/PP)→ 确认变量是否需要差分
- 定阶(AIC/SC/HQ信息准则)→ 确定最优滞后阶数p
- Granger因果检验 → 统计意义上哪个变量"先行"影响哪个
- 脉冲响应函数(IRF) → 一个变量受到冲击后,各变量如何随时间演化
- 预测误差方差分解(FEVD) → 各变量的预测误差中,有多大比例来自自身冲击vs他变量冲击
在SPSS里,VAR分析几乎没有对话框支持,需要借助语法命令(VAR程序仅限于特定附加模块);在R中,vars包功能完整但参数繁多,irf()的置信带宽、fevd()的分解期数、正交化方式(Cholesky vs广义IRF)都需要逐一手动指定。
ChatSRS把全部流程压到一句自然语言指令。
案例数据:中国宏观经济三变量VAR
研究背景
研究货币政策(货币供应M2增速)、经济产出(GDP同比增速)和物价水平(CPI同比增速)之间的动态关系,使用中国1996Q1—2023Q4季度数据,共112个观测值。
数据结构
quarter 季度(1996Q1 ~ 2023Q4,共112期)
gdp_g GDP同比增速(%,季度)
m2_g M2货币供应增速(%,季度)
cpi_g CPI同比涨幅(%,季度)
研究问题:三个宏观变量之间是否存在Granger因果关系?货币政策冲击(M2增速上升1%)对GDP和CPI的脉冲响应路径是什么?各变量的预测误差主要由哪些冲击驱动?
VAR分析核心概念
1. VAR(p)模型设定
VAR(p)模型对k个变量建立联立方程组:
Y_t = A_1 * Y_{t-1} + A_2 * Y_{t-2} + ... + A_p * Y_{t-p} + c + u_t
Y_t:k维内生变量向量(本例k=3:gdp_g、m2_g、cpi_g)A_i:k×k阶系数矩阵,第i个滞后期的动态效应c:常数向量u_t:k维白噪声向量(同期误差允许相关,即cov(u_t)=Sigma非对角)p:滞后阶数,由信息准则确定
VAR估计本质是逐方程OLS:每个方程独立估计,系数有效(若各方程包含相同回归量,OLS与SUR等价)。
2. 定阶准则(AIC / SC / HQ)
选择滞后阶数p时,三个信息准则各有侧重:
| 准则 | 公式 | 特点 |
|---|---|---|
| AIC(Akaike) | -2ln(L)/T + 2k^2p/T | 倾向选较大p,适合预测 |
| SC/BIC(Schwarz) | -2ln(L)/T + k^2p*ln(T)/T | 惩罚更重,倾向选较小p,适合推断 |
| HQ(Hannan-Quinn) | -2ln(L)/T + 2k^2p*ln(ln(T))/T | 介于AIC和SC之间 |
实践规则:三个准则一致选同一p则最优;若不一致,结构推断(Granger检验)优先SC,预测分析优先AIC。三准则不一致时应进行稳健性检验。
3. Granger因果检验
Granger因果(Granger, 1969)并非哲学意义上的"因果",而是预测意义上的先行性:
若在给定Y自身历史的基础上,加入X的历史信息能显著改善对Y的预测,则称X Granger-cause Y。
检验方法:对VAR方程做沃尔德(Wald)检验,原假设H0:X对Y方程的所有滞后系数联合为零(即X对Y无Granger因果)。
注意:Granger因果不等于真实因果;变量遗漏、时间聚合或共同驱动因素都可能导致虚假Granger因果。APA报告中应明确写"统计意义上的先行性"而非直接写"导致"。
4. 脉冲响应函数(IRF)
IRF追踪一个变量受到一个标准差冲击后,系统中所有变量在未来各期的动态响应路径。
关键技术问题:由于VAR的同期误差之间可能相关(Sigma非对角),需要对冲击进行**正交化(orthogonalization)**才能识别结构冲击:
| 正交化方法 | 原理 | 适用场景 |
|---|---|---|
| Cholesky分解 | 对Sigma做Cholesky分解,按变量顺序依次正交 | 有明确理论先验(因果顺序)时 |
| 广义IRF(GIRF) | Pesaran & Shin (1998),不依赖变量排列顺序 | 无明确先验、结果需对排列稳健时 |
Cholesky分解的顺序依赖性是VAR分析中最重要的主观选择,需要在论文中明确说明并做排列稳健性检验。
5. 预测误差方差分解(FEVD)
FEVD回答:在预测h期前的误差中,有多大比例来自变量j自身的冲击,多大比例来自其他变量的冲击?
FEVD_ij(h) = 变量j的冲击对变量i的h步前预测误差方差贡献比例
FEVD各列之和为100%。第1期的FEVD反映同期影响,随h增大趋于稳定值反映长期影响结构。
用AI一句话完成VAR分析
在 chatsrs.com 上传季度宏观数据后输入:
"对 gdp_g、m2_g、cpi_g 三个变量做VAR向量自回归分析:
- 先对三个变量做ADF单位根检验,确认平稳性
- 用AIC、SC、HQ信息准则选最优滞后阶数p(最大阶数设为8)
- 建立VAR(p)模型,输出各方程回归系数表(三线表格式)
- 做Granger因果检验,所有变量两两检验,输出Wald统计量和p值
- 做脉冲响应函数IRF,冲击来源为m2_g,响应变量为gdp_g和cpi_g,追踪12期,用Cholesky正交化,绘制IRF图(含95%置信带)
- 做预测误差方差分解FEVD,分解到12期,输出三线表
- 输出可直接粘贴进论文的APA 7th格式中文文字描述"
60秒后,ChatSRS完整输出以下七部分结果。
输出结果怎么读
输出1:ADF单位根检验
表1 变量单位根检验结果(ADF检验,N = 112)
变量 ADF统计量 1%临界值 5%临界值 p值 结论
gdp_g -4.832 -3.494 -2.889 <.001 平稳(I(0))
m2_g -3.971 -3.494 -2.889 .002 平稳(I(0))
cpi_g -4.215 -3.494 -2.889 <.001 平稳(I(0))
注:检验含截距项,无时间趋势(含趋势的LLC结论一致)。三个变量均在1%水平拒绝单位根
原假设,可直接建立水平值VAR,无需差分或协整处理。
平稳性结论对模型设定至关重要:若变量含单位根(I(1)),则需考虑协整检验(Johansen),若存在协整关系建立VECM,若不存在则对差分序列建VAR。本例三变量均平稳,直接建立VAR(p)。
输出2:最优滞后阶数
表2 VAR滞后阶数信息准则(最大阶数 = 8)
滞后阶数 AIC SC HQ
1 8.342 8.621 * 8.456
2 8.187 * 8.713 8.391 *
3 8.224 9.003 8.516
4 8.261 9.304 8.671
5 8.298 9.591 8.828
注:* 表示该准则下的最小值。AIC和HQ选p=2,SC选p=1。
采用SC准则选p=1用于Granger因果推断,采用p=2做稳健性检验。
定阶决策规则:三准则不完全一致时,Granger因果等结构推断优先SC(p=1),预测分析和IRF/FEVD优先AIC(p=2),在论文中应报告两个阶数的稳健性结果。本例正文以VAR(2)为主模型报告。
输出3:VAR方程系数(以GDP方程为例)
表3 VAR(2)模型GDP增速方程系数(因变量:gdp_g_t)
变量 系数 SE t值 p值
gdp_g_{t-1} 0.381 0.094 4.053 <.001 ***
gdp_g_{t-2} -0.118 0.096 -1.229 .221
m2_g_{t-1} 0.183 0.062 2.952 .004 **
m2_g_{t-2} 0.074 0.063 1.175 .243
cpi_g_{t-1} -0.124 0.087 -1.425 .157
cpi_g_{t-2} 0.089 0.088 1.011 .314
常数 1.247 0.482 2.587 .011 *
注:* p < .05,** p < .01,*** p < .001。方程R^2 = .618,调整R^2 = .592。
共三个方程,m2_g和cpi_g方程格式相同。
输出4:Granger因果检验结果
表4 VAR(2) Granger因果检验(Wald检验,df = 2)
原假设(H0) chi-squared p值 结论
m2_g不Granger-cause gdp_g 9.847 .007 ** 拒绝H0,M2先行影响GDP
cpi_g不Granger-cause gdp_g 3.218 .200 不拒绝H0
gdp_g不Granger-cause m2_g 2.641 .267 不拒绝H0
cpi_g不Granger-cause m2_g 5.312 .070 不拒绝H0(边缘显著)
gdp_g不Granger-cause cpi_g 7.934 .019 * 拒绝H0,GDP先行影响CPI
m2_g不Granger-cause cpi_g 4.186 .123 不拒绝H0
注:* p < .05,** p < .01。Granger因果指统计意义上的先行性,非哲学因果。
全模型联合检验(ALL Granger-cause)另附详表。
解读要点:
- M2增速→GDP增速(p = .007):货币供应增速对GDP增速有统计先行性,符合凯恩斯货币传导逻辑
- GDP增速→CPI增速(p = .019):产出增速对物价有统计先行性,符合菲利普斯曲线框架
- M2对CPI无直接Granger因果(p = .123),货币→物价的传导可能通过产出间接实现
输出5:脉冲响应函数(IRF)
表5 M2冲击的脉冲响应(Cholesky正交化,排列:gdp_g → m2_g → cpi_g)
期数 GDP增速响应 95%下界 95%上界 CPI增速响应 95%下界 95%上界
1 0.000 0.000 0.000 0.000 0.000 0.000
2 0.284 0.091 0.477 0.023 -0.048 0.094
3 0.318 0.107 0.529 0.098 0.021 0.175
4 0.241 0.033 0.449 0.142 0.056 0.228
5 0.173 -0.021 0.367 0.161 0.067 0.255
6 0.112 -0.071 0.295 0.152 0.050 0.254
8 0.048 -0.108 0.204 0.121 0.015 0.227
10 0.019 -0.098 0.136 0.087 -0.024 0.198
12 0.007 -0.071 0.085 0.058 -0.049 0.165
注:Cholesky排列为gdp_g→m2_g→cpi_g(货币供应为中间变量)。
ChatSRS同时输出IRF折线图,含95%置信带阴影(Bootstrap 2000次)。
第1期GDP响应为0系Cholesky正交化的递归限制,非实证结果。
IRF图读法:
- 纵轴为响应变量的单位变动幅度(百分点)
- 横轴为滞后期数
- 置信带不含零:该期响应统计显著
- 响应衰减至零并稳定,说明VAR系统稳定(所有特征根模在单位圆内)
本例解读:M2增速1标准差正冲击后,GDP增速在第2-3期显著上升(峰值0.318,置信带不含0),第6期后不显著;CPI增速响应滞后于GDP,在第3-8期显著上升,体现"货币→产出→物价"的传导时滞结构。
输出6:预测误差方差分解(FEVD)
表6 VAR(2) 预测误差方差分解(%)
GDP增速的预测误差分解 CPI增速的预测误差分解
期数 来自GDP冲击 来自M2冲击 来自CPI冲击 来自GDP冲击 来自M2冲击 来自CPI冲击
1 100.0 0.0 0.0 4.2 1.6 94.2
2 78.3 18.4 3.3 6.8 3.9 89.3
4 67.4 24.1 8.5 12.4 6.7 80.9
6 62.8 26.3 10.9 16.8 8.2 75.0
8 61.1 27.2 11.7 19.4 9.1 71.5
10 60.6 27.6 11.8 21.2 9.6 69.2
12 60.4 27.7 11.9 22.1 9.8 68.1
注:三列之和 = 100%。数据为该方程预测误差方差中各冲击来源的贡献比例。
GDP增速第1期自身贡献100%为Cholesky递归识别的数学性质(排列第一的变量当期不受其他变量同期冲击影响),后续变量(M2、CPI)第1期自身贡献非100%,属于实证结果。
FEVD解读:
- GDP增速:自身冲击是主导(12期后仍占60.4%),M2冲击贡献约27.7%,表明货币政策对产出有显著解释力
- CPI增速:自身冲击虽是最大来源(68.1%),但GDP冲击贡献约22.1%,货币供应冲击贡献9.8%,物价受实体经济冲击的影响大于货币的直接影响
论文里怎么报告(APA 7th格式)
APA 7th对VAR分析的报告要求较为灵活,但学术期刊(尤其经济学、金融学方向)通常要求以下要素:
方法节(完整版)
采用向量自回归(VAR)模型考察GDP增速、M2增速和CPI增速三个宏观变量之间的动态关系,样本区间为1996Q1至2023Q4,共112个季度观测值(注:按10倍参数规则,k=3、p=2的VAR至少需约210个观测值,本例样本量略显不足,IRF和FEVD结论宜结合Bootstrap置信带审慎解读)。
建模前,对三变量进行ADF单位根检验;三个变量均在1%统计显著性水平下拒绝单位根假设,确认为平稳序列,可直接建立水平值VAR。以AIC、SC和HQ信息准则确定最优滞后阶数,AIC与HQ均选p = 2,SC选p = 1,正文采用VAR(2)为基准模型。
Granger因果检验基于Wald统计量,原假设为被检验变量对方程中其余变量的全部滞后系数联合为零。脉冲响应函数(IRF)采用Cholesky正交化识别结构冲击,变量排列顺序为GDP增速→M2增速→CPI增速,置信带由Bootstrap方法(2,000次)构造。预测误差方差分解(FEVD)追踪至12期。所有分析以R 4.4(vars包v1.6)实施,检验水准alpha = .05(双尾)。
结果节(核心统计报告)
单位根检验:ADF检验结果显示,GDP增速(ADF = -4.83, p < .001)、M2增速(ADF = -3.97, p = .002)和CPI增速(ADF = -4.22, p < .001)均在1%水平拒绝单位根假设,三变量为平稳序列。
VAR定阶:基于信息准则,AIC和HQ准则均选p = 2,SC准则选p = 1;正文采用VAR(2)为基准模型,VAR(1)结果作为稳健性检验。
Granger因果检验:在VAR(2)框架下,M2增速对GDP增速存在统计意义上的先行性,chi-squared(2) = 9.85, p = .007;GDP增速对CPI增速存在统计意义上的先行性,chi-squared(2) = 7.93, p = .019;其余方向因果检验均不显著(ps > .05)。上述结果支持"货币→产出→物价"的间接传导路径。
脉冲响应:M2增速受到一个标准差正向冲击后,GDP增速在第2至4期显著上升,第3期响应峰值约为0.32个百分点(95% CI [0.11, 0.53]);CPI增速的显著响应滞后于GDP,在第3至8期显著为正,峰值约为0.16个百分点(第5期;95% CI [0.07, 0.26]),第10期后响应不再显著。
方差分解:12期后,M2增速冲击解释了GDP增速预测误差方差的27.7%,解释了CPI增速预测误差方差的9.8%,印证了货币供应对实体产出具有较强影响力、对物价的直接解释力相对有限的实证发现。
可抄进论文的APA格式句式
Granger因果报告句式:
在VAR(p)框架下,[变量X]对[变量Y]存在统计意义上的先行性,
chi-squared([df]) = XX.XX, p = .XXX。
(注:此处Granger因果指预测先行性,非哲学意义因果关系。)
IRF报告句式:
[变量X]受到一个标准差正向冲击后,[变量Y]在第[h1]至[h2]期的响应显著为正,
峰值约为[XX]个单位(第[h]期;95% CI [[lower], [upper]]),第[h3]期后响应
不再与零有统计显著差异。
FEVD报告句式:
预测误差方差分解结果显示,[变量X]的冲击解释了[变量Y][h]期预测误差方差的[XX]%,
表明[解读]。
APA格式细节提醒:
| 要素 | 格式示例 |
|---|---|
| Granger因果chi-squared | chi-squared(2) = 9.85, p = .007 |
| IRF置信区间 | 95% CI [0.11, 0.53] |
| FEVD百分比 | 解释了XX%的预测误差方差 |
| 软件标注 | R 4.4(vars包v1.6) |
| Granger因果措辞 | "统计意义上的先行性",避免写"导致" |
常见问题 FAQ
Q1:VAR和单方程回归(OLS)有什么本质区别?什么时候必须用VAR?
A:OLS单方程回归假设解释变量是外生的——即X影响Y,但Y不影响X。当变量之间存在反馈(互为因果)或你无法确定因果方向时,单方程回归会产生内生性偏误,系数估计有偏且不一致。VAR把所有变量都当作内生变量处理,不预设哪个是"因"哪个是"果",而是让数据自己展示动态结构。实践判断规则:若理论或先验知识支持双向影响(如货币-产出-物价、股价-汇率-利率),应优先考虑VAR;若明确有单向因果先验,OLS或联立方程模型更合适。
Q2:VAR定阶三个准则不一致,怎么选?
A:这是VAR实证中最常见的两难困境。实践操作如下:(1) 若分析目的是结构推断(Granger因果、IRF解释),优先SC(BIC),因为SC对过度参数化的惩罚更重,阶数低的模型自由度更多,检验更有效;(2) 若分析目的是预测,优先AIC,阶数略大有助于减少预测偏差;(3) 无论如何都要做稳健性检验:以不同阶数重跑主要结论,若Granger因果和IRF的定性结论不变,说明结论稳健,在论文中脚注报告即可。ChatSRS在输出时会自动标注三准则推荐阶数,并提示做稳健性检验。
Q3:Cholesky正交化的变量排列顺序怎么确定?对结果影响大吗?
A:Cholesky分解是递归识别策略:排列靠前的变量当期不受排列靠后变量的同期冲击影响,靠后的变量则受排列靠前所有变量的同期影响。顺序设定本质是一种递归外生性假设,应基于经济理论或制度先验决定(如货币政策决策于季末,产出数据发布于下季初,则M2应排在GDP之前)。排列顺序对短期(前1-2期)IRF影响较大,对中长期和FEVD影响通常较小。稳健性检验:尝试所有可能的排列(k个变量有k!种排列),若定性结论稳定则可信。若对顺序无把握,应改用广义IRF(GIRF)——GIRF不依赖排列顺序,ChatSRS支持一句话切换。
Q4:变量含单位根(I(1))时,还能用VAR吗?
A:含I(1)变量时,有三种处理路径,选哪个取决于协整关系是否存在:(1) 差分VAR:将I(1)变量差分为I(0)后建立VAR——简单但损失长期水平信息,且若变量存在协整会导致误设;(2) VECM(向量误差修正模型):若变量之间存在协整(Johansen检验显著),应建立VECM,它在VAR框架内加入误差修正项,同时捕捉短期动态和长期均衡关系,是I(1)变量的推荐做法;(3) 水平VAR(含I(1)变量不差分):Sims等人证明若关注IRF和FEVD的预测推断,水平VAR的估计量渐进有效,但Granger因果的Wald检验需修正(Toda-Yamamoto方法)。在ChatSRS中输入"对I(1)变量做Johansen协整检验,若协整则建VECM"即可自动走协整路径。
Q5:样本量多少才够做VAR?小样本怎么办?
A:VAR参数数量是 k^2 * p + k(含常数项),k个变量p阶VAR共有 k*(kp+1) 个待估参数。本例k=3, p=2,参数数量为 3(3*2+1)=21 个。经验规则:有效观测数至少应为参数数量的10倍以上(即本例至少需210个观测,112个季度略显不足)。应对小样本的方法:(1) 降低阶数p(提高SC准则权重);(2) 减少变量数k(聚焦核心三变量);(3) 使用贝叶斯VAR(BVAR),通过Minnesota先验正则化估计;(4) Bootstrap置信带用于IRF(替代渐进正态理论)。ChatSRS在检测到自由度紧张时会自动提示并推荐BVAR选项。
小结
VAR向量自回归是多变量时间序列分析的核心工具,完整实施需要五步骤:平稳性确认→信息准则定阶→Granger因果检验→IRF脉冲响应→FEVD方差分解。每一步都有统计前提和报告规范,在SPSS/R/Stata中手动完成约需2-3小时,且稍有疏漏就会被审稿人打回。
ChatSRS把全套流程压到一句自然语言指令,结果格式直接符合APA 7th标准,IRF图含Bootstrap置信带,FEVD三线表可直接复制进论文。(本文方法节示例以R 4.4 vars包实施;如需SPSS或Stata输出,在ChatSRS中注明引擎即可切换。)
三个关键报告细节:Granger因果必须写"统计先行性"而非"导致";IRF必须说明Cholesky正交化顺序并做稳健性检验;FEVD百分比各列之和应为100%(用于自查)。
相关阅读
本文首发于ChatSRS官方博客。如有问题或反馈,欢迎在ChatSRS站内 [用户中心 -> 帮助与反馈] 联系我们。