RBC 基准模型:从假设到 Dynare 到 IRF 的完整闭环
Real Business Cycle(实际经济周期)是 DSGE 方法论的起点。本页在同一页内走完"假设 → 公式解读 → 稳态 → 对数线性化 → Dynare 逐行撰写 → 校准 → 技术冲击 IRF 解读"全流程,每一个公式都讲清"为什么这样假设、经济含义是什么"。
本模型共 N = 24 个方程:模型设定方程 5 个(Eq.R1–R5)、厂商定义方程 2 个(Eq.R6–R7)、拉格朗日与 FOC 4 个(Eq.R8–R11)、横截条件 1 个(Eq.R12)、稳态方程组 6 个(Eq.SS1–SS6)、对数线性化方程 6 个(Eq.L1–L6)。每个公式在正文均按 Eq.Rx 编号,文末 §13 方程总清单 汇总。
01 概念直觉:RBC 在讲什么故事
RBC(Real Business Cycle)由 Kydland & Prescott (1982) 与 Long & Plosser (1983) 奠基,核心命题只有一句话:经济周期不是市场失灵的产物,而是理性人面对真实技术冲击(technology shocks)时的最优跨期反应。"Real" 一词强调冲击来自实体面(生产率 $A_t$),而非名义货币因素;模型中根本没有货币、没有价格粘性,因此货币政策在 RBC 里是"中性"的——这一极强的反事实结论后来被新凯恩斯学派推翻,但 RBC 留下的方法论骨架被完整继承下来。
直觉链条是这样的:一次正向技术冲击让同样的资本与劳动生产出更多产出。此时闲暇的机会成本(实际工资)上升,理性人选择多工作、少闲暇;同时今天更富裕,且资本边际产出上升,理性人选择多储蓄、多投资。于是产出、消费、投资、劳动同时上升——这恰好复刻了经济繁荣时各宏观变量同向共动(comovement)的事实。衰退则是一次负向技术冲击的镜像:工资下降,家庭理性地选择多休假,产出与就业同时收缩,"大萧条=大家一起休假"这种略显刺耳的结论正是 RBC 对衰退的解释。
无论后来的 NK、中尺度 SW、HANK 多么复杂,它们的家庭消费欧拉方程、资本积累方程、资源约束、劳动供给条件全部来自 RBC 的骨架。把 RBC 推一遍、跑一遍 Dynare、看一遍 IRF,后面所有模型都只是"在这个骨架上加摩擦"——价格粘性、投资调整成本、金融加速器、异质性家庭,都是外挂。
02 模型假设逐条解读:效用、技术、约束
为了把推导压到最短,我们直接用社会计划者(social planner)配置。由于模型是凸的、无外部性、无扭曲,根据第一福利定理,竞争性均衡与社会计划者解等价——先解计划者问题,再解释成分散经济即可。下面每写一个公式,都紧跟一段"假设是什么、为什么这样设、怎么读"。
2.1 偏好(家庭效用函数)
代表性家庭无限期存活,在消费 $C_t$ 与闲暇 $1-N_t$ 之间权衡,期望贴现效用为:
变量与参数:$C_t$ 家庭实际消费;$N_t$ 劳动供给(0–1 之间);$\beta\in(0,1)$ 主观贴现因子;$\sigma>0$ 相对风险厌恶 = 跨期替代弹性倒数;$\varphi>0$ Frisch 劳动弹性倒数;$\chi>0$ 劳动负效用权重。假设:无限期存活、期望效用、可分偏好。直觉:家庭在消费与闲暇之间做跨期+期内权衡。
为什么消费端用 CRRA 形式?$\frac{C^{1-\sigma}}{1-\sigma}$ 是常数相对风险厌恶(CRRA, Constant Relative Risk Aversion)效用。它的关键性质是:跨期替代弹性 $\mathrm{EIS}=1/\sigma$ 不随消费水平变化。这保证了在长期增长路径上,家庭的储蓄率、利率与资本产出比保持稳定——这正是 Kaldor 典型事实(资本产出比长期恒定、资本与劳动份额恒定)所要求的。若换成二次型或 CARA 效用,稳态利率会随消费趋势漂移,模型无法与长期增长共存。$\sigma=1$ 时由洛必达法则消费项退化为 $\log C_t$,这是 RBC 最常用的对数效用特例。
为什么劳动端用幂函数 $-\chi N^{1+\varphi}/(1+\varphi)$?劳动的边际负效用是 $\chi N^{\varphi}$,它对 $N$ 弹性地递增。这里 $\varphi$ 是 Frisch 劳动供给弹性的倒数:在边际效用恒定(即财富效应被局部锁定)的假设下,工资上升 1% 带来的劳动供给增加约为 $1/\varphi$。微观劳动经济学估计的 Frisch 弹性大约在 0.2~1 之间,因此 RBC 惯例取 $\varphi=1$(弹性=1)。负号是因为劳动给家庭带来痛苦。
$\chi$ 是干什么的?它是劳动负效用在效用函数里的"权重旋钮"。它不影响任何相对价格,只决定家庭在稳态愿意拿出多少时间禀赋去工作。校准惯例是让稳态劳动 $N=1/3$(一天 24 小时扣掉睡眠后约三分之一用于市场工作),再由稳态劳动条件反解 $\chi$。换句话说,$\chi$ 是一个自由参数,用于锚定稳态工作量,本身没有独立的微观估计。
为什么消费与劳动可分?可分意味着 $U_{CN}=0$,消费增加不会直接改变劳动的边际负效用。这是一个简化假设;Hansen-Rogerson 的 indivisible labor 与 Jaimovich-Rebelo 的 GHH 偏好都会放松这一点,以改变财富效应对劳动供给的影响。
2.2 技术与资源约束(厂商)
竞争性厂商使用 Cobb–Douglas 生产函数,并面对封闭经济、无政府、无国际贸易的资源约束:
变量:$Y_t$ 总产出;$K_t$ 期初资本;$N_t$ 劳动投入;$A_t$ 全要素生产率。参数:$\alpha\in(0,1)$ 资本收入份额。假设:规模报酬不变、资本与劳动同质。
变量:$I_t$ 总投资。假设:无政府支出 $G_t=0$、无净出口 $NX_t=0$、无资本调整成本。
参数:$\delta\in[0,1]$ 季度资本折旧率。时间下标约定:$I_t$ 当期投资形成的资本到 $t+1$ 期才进入生产。
为什么生产函数是 Cobb-Douglas?三个理由:① 要素份额长期稳定——美国与多数 OECD 国家劳动份额长期稳定在 2/3 附近,Cobb-Douglas 恰好给出劳动份额恒等于 $1-\alpha$;② 规模报酬不变——支撑完全竞争假设,否则代表性企业会无限扩张;③ 便于解析——$MPK=\alpha Y/K$、$MPL=(1-\alpha)Y/N$ 直接正比于平均产出,稳态与对数线性化都极其干净。替代弹性为 1 这一假设本身是强假设:若真实资本-劳动替代弹性不等于 1(如 Antràs 估计约 0.7),Cobb-Douglas 就是近似。
$\alpha$ 是多少?$\alpha$ 是资本收入份额。美国国民账户中资本份额约为 0.33~0.40,劳动份额约 0.60~0.67,因此 RBC 惯例 $\alpha=0.33$(即 1/3)。中国数据下劳动份额偏低,文献常取 $\alpha=0.4\sim0.5$。
资源约束 $Y_t=C_t+I_t$ 意味着什么?这是最强的一组"简化假设打包":封闭经济(没有净出口 $NX$)、无政府(没有政府采购 $G$ 与税收)、投资等于储蓄(无货币、无金融中介,家庭储蓄直接变成资本品)。加入政府或开放经济只需要在这一项上扩展:$Y=C+I+G+NX$。
资本积累方程的时间下标为什么是 $K_{t+1}$?这是 RBC 里最容易写错的地方:$I_t$ 是当期投资,它形成的资本在下一期才投入生产。$(1-\delta)K_t$ 是折旧后剩余的旧资本,$\delta$ 是折旧率。季度模型中惯例 $\delta=0.025$(对应年折旧约 10%),年度模型中 $\delta=0.1$。这里假设无投资调整成本——投资品可以瞬时、无代价地转化为资本;Q 理论模型会加上 $\frac{\phi}{2}\left(\frac{I_t}{K_t}-\delta\right)^2 K_t$ 这一项来平滑投资。
2.3 外生技术过程
技术 $A_t$ 是模型唯一的随机驱动力,假设它服从几何随机游走被替换成平稳 AR(1):
参数:$\rho_a\in(-1,1)$ 冲击持续性;$\sigma_a>0$ 创新标准差;稳态归一 $\bar A=1$。假设:独立同分布白噪声创新、无波动率聚集、无偏态。
为什么是 AR(1)?Solow 残差在数据上高度序列相关,但不是单位根——一次技术冲击会缓慢衰减。AR(1) 是同时刻画"持续性"与"均值回归"的最简形式。平稳性要求 $|\rho_a|<1$:若 $\rho_a=1$(单位根),技术永不回归,模型需要在确定性增长趋势下分析;若 $\rho_a\ge1$,期望算子发散,模型失去平稳分布。
冲击分布假设。$\varepsilon_t^a\sim\mathcal{N}(0,\sigma_a^2)$ 是白噪声——独立同分布、零均值、同方差。这排除了冲击的波动率聚集(GARCH)与偏态。$\sigma_a$ 通常由对 Solow 残差做 OLS 估计 $\ln A_t=\rho_a\ln A_{t-1}+\varepsilon_t$ 得到,美国季度数据典型值 $\rho_a\approx0.95$、$\sigma_a\approx0.007$(季度波动约 0.7%)。
为什么取对数?因为 $A_t$ 必须严格为正(生产函数的底数),取对数后冲击 $\varepsilon_t^a$ 可正可负而 $\ln A_t$ 仍可正可负,$A_t=\exp(\ln A_t)$ 自然为正。稳态归一化 $A=1$ 等价于把趋势取成单位 1。
把 $I_t = Y_t - C_t$ 代入资本积累方程,资源约束可写成单一跨期约束 $K_{t+1}=(1-\delta)K_t + A_t K_t^{\alpha}N_t^{1-\alpha} - C_t$。计划者的选择变量是 $\{C_t,N_t,K_{t+1}\}$,状态变量是 $K_t$(前定)与 $A_t$(外生)。
03 社会计划者问题与完整 FOC 推导
计划者在资源约束下最大化期望效用,这是一个典型的随机最优控制 / 动态规划问题。下面我们把拉格朗日函数完整写出来,对每一个选择变量 $(C_t,N_t,K_{t+1})$ 逐一求偏导,把"同理可得/类似地"这类跳步全部展开。
3.0 计划者优化问题(完整形式)
约束清单:① 单一跨期资源约束(由 Eq.R3 与 Eq.R4 消去 $I_t$ 合并得到);② 初始资本 $K_0$ 给定(初值条件);③ 技术过程 $\{A_t\}$ 外生;④ 选择变量的非负与劳动上限约束。在计划者配置下,没有价格、没有利润、没有债券——所有约束都是真实资源约束。
3.1 拉格朗日函数(完整写出)
对每一期 $t$ 的资源约束引入乘子 $\lambda_t$(单位:效用 / 一单位产出)。把所有期拉到一起,拉格朗日函数为:
为什么乘子是 $\lambda_t$?它度量放松一单位资源约束带来的期望效用增量,即产出的"影子价格"。$\beta^t$ 是把第 $t$ 期效用贴现回第 0 期。信息约束:$\lambda_t$ 与 $C_t,N_t,K_{t+1}$ 都基于 $t$ 期信息集 $\mathcal I_t$(即 $\{A_0,\ldots,A_t,K_t\}$),而 $\lambda_{t+1}$ 与 $K_{t+2},C_{t+1},\ldots$ 基于 $\mathcal I_{t+1}$。
3.2 对 $C_t$ 求偏导 → FOC-1(乘子与消费的边际效用挂钩)
在 $\mathcal L$ 的求和式中,$C_t$ 只出现在第 $t$ 项(效用项 $C_t^{1-\sigma}/(1-\sigma)$ 与约束项 $\lambda_t C_t$),不进入任何其他项。对 $C_t$ 求偏导并令其为 0:
① $\partial/\partial C_t\,[C_t^{1-\sigma}/(1-\sigma)] = C_t^{-\sigma}$;② $\partial/\partial C_t\,[\lambda_t C_t] = \lambda_t$;③ 其余项($N,K$ 相关)对 $C_t$ 导数为 0;④ 令 $\partial\mathcal L/\partial C_t=0$,两边除以 $\beta^t$ 得 Eq.R9。
3.3 对 $N_t$ 求偏导 → FOC-2(劳动供给 = 劳动需求)
$N_t$ 同时进入第 $t$ 期效用项 $-\chi N_t^{1+\varphi}/(1+\varphi)$ 与第 $t$ 期生产函数 $A_t K_t^{\alpha}N_t^{1-\alpha}$(在约束里以 $+\lambda_t A_t K_t^{\alpha}N_t^{1-\alpha}$ 出现)。对 $N_t$ 求偏导:
把 Eq.R9 的 $\lambda_t=C_t^{-\sigma}$ 代入,即得教科书形式:
① $\partial/\partial N_t[-\chi N_t^{1+\varphi}/(1+\varphi)] = -\chi N_t^{\varphi}$;② 生产函数关于 $N_t$ 的偏导 $\partial(A_t K_t^\alpha N_t^{1-\alpha})/\partial N_t = (1-\alpha)A_t K_t^\alpha N_t^{-\alpha}\equiv MPL_t$;③ 约束中该项带正号(因为 $+\lambda_t\times$ 生产项);④ 令导数为 0 并把 $\lambda_t$ 移到右边即得 Eq.R10。
3.4 对 $K_{t+1}$ 求偏导 → FOC-3(消费–资本欧拉方程)
$K_{t+1}$ 同时出现在两个位置:(a) 第 $t$ 期约束里 $-\lambda_t K_{t+1}$(今天为了多积累资本,必须放弃今天的资源);(b) 第 $t+1$ 期约束里 $+\lambda_{t+1}(1-\delta)K_{t+1}$ 与 $+\lambda_{t+1}\alpha A_{t+1}K_{t+1}^{\alpha}N_{t+1}^{1-\alpha}$(明天这些资本带来残值与产出)。对 $K_{t+1}$ 求偏导:
两边除以 $\beta^t$ 并整理:
把 Eq.R9 的 $\lambda_t=C_t^{-\sigma}$、$\lambda_{t+1}=C_{t+1}^{-\sigma}$ 代入,即得教科书形式:
① $K_{t+1}$ 在第 $t$ 期约束中系数为 $-\lambda_t$,所以这一项贡献 $-\lambda_t$;② 在第 $t+1$ 期约束中,$(1-\delta)K_{t+1}$ 项给出 $\lambda_{t+1}(1-\delta)$;③ 生产项 $A_{t+1}K_{t+1}^{\alpha}N_{t+1}^{1-\alpha}$ 关于 $K_{t+1}$ 求导给出 $\alpha A_{t+1}K_{t+1}^{\alpha-1}N_{t+1}^{1-\alpha}\equiv r_{t+1}^k$;④ 第 $t+1$ 期整体被贴现 $\beta$,并对 $t$ 期不可知的 $A_{t+1},C_{t+1},K_{t+1},N_{t+1}$ 取条件期望 $E_t$;⑤ 令 $\partial\mathcal L/\partial K_{t+1}=0$ 即得 Eq.R11。
3.5 厂商侧定义方程(MPK 与 MPL = 实际工资)
完全竞争厂商把要素价格视为给定,在生产技术下成本最小化,对资本与劳动的需求条件分别为:
在分散经济中,家庭按 $w_t$ 提供劳动、按 $r_t^k$ 出租资本,利润 $\Pi_t=Y_t-w_t N_t-r_t^k K_t=0$(CRS 下经济利润为零,归家庭所有)。计划者配置与分散经济等价,这两条"定义方程"只是把生产函数的偏导起个名字。
3.6 横截条件(Transversality Condition, TVC)
无穷期问题必须加上 TVC 排除"无限积累资本、永不消费"的泡沫路径。它是最优性的必要条件:
等价形式(用消费表示):$\displaystyle\lim_{T\to\infty}\beta^T E_0\left[C_T^{-\sigma} K_{T+1}\right]=0$。经济含义:无限远未来一单位资本的贴现边际效用趋于零——家庭不能"为了攒资本而永远不消费"。
Dynare 求解"平稳理性预期解"时,TVC 等价于"把模型限制在平稳流形上"——只要 Blanchard-Kahn 条件满足,解自动满足 TVC。但写论文、做解析推导时,TVC 是闭合无穷期问题的必要条件,不能省略。
3.7 完整均衡系统(汇总)
| 编号 | 方程 | 表达式 | 经济含义 |
|---|---|---|---|
| Eq.R11' | 欧拉方程 | $C_t^{-\sigma}=\beta E_t\{C_{t+1}^{-\sigma}(1-\delta+r_{t+1}^k)\}$ | 消费跨期平滑 |
| Eq.R10' | 劳动条件 | $\chi N_t^{\varphi}C_t^{\sigma}=w_t$ | 劳动跨期/期内替代 |
| Eq.R2 | 生产函数 | $Y_t=A_tK_t^\alpha N_t^{1-\alpha}$ | 总供给 |
| Eq.R3/R4 | 资源约束 + 资本积累 | $Y_t=C_t+I_t,\ K_{t+1}=(1-\delta)K_t+I_t$ | 总需求/积累 |
| Eq.R6/R7 | MPK / MPL 定义 | $r_t^k=\alpha Y_t/K_t,\ w_t=(1-\alpha)Y_t/N_t$ | 要素需求 |
| Eq.R12 | 横截条件 | $\lim_{T\to\infty}\beta^T E_0[C_T^{-\sigma}K_{T+1}]=0$ | 排除资本泡沫 |
| Eq.R5 | 外生技术 | $\ln A_t=\rho_a\ln A_{t-1}+\varepsilon_t^a$ | 周期驱动源 |
5 个方程、5 个内生变量 $(Y,C,I,K,N)$ 加 1 个外生状态 $A$,构成闭合系统。注意资本 $K_{t+1}$ 是状态变量,由投资累积而成;$A_t$ 是外生状态;其余变量是前瞻/静态变量,由 Dynare 自动求解。
04 稳态的解析求解
去掉时间下标表示稳态(令 $A=1$,所有变量恒定、$E_t$ 消失)。设稳态值为 $(C,Y,K,N,I)$。稳态是线性化、校准、IRF 的锚——所有 IRF 的纵坐标都是"偏离稳态的百分比"。
4.1 稳态方程组(完整列出)
把动态方程里的 $X_t=X_{t+1}=X$、$E_t$ 去掉、$A=1$ 代入,得到如下 6 个稳态方程,未知数恰好也是 6 个 $(C,Y,K,N,I,A)$(其中 $A=1$ 是归一化):
4.2 逐步求解
第 1 步:从 Eq.SS1 解出 $r^k$。稳态下 $C_t=C_{t+1}$,欧拉方程化简为:
稳态资本租金 $r^k$ 被 $\beta$ 与 $\delta$ 钉死:耐心的家庭($\beta$ 大)要求低资本回报,高折旧要求高回报补偿。代入季度值 $\beta=0.99,\delta=0.025$,得 $r^k=1/0.99-1+0.025\approx0.0351$,即季度净资本回报约 1.01%、季度总回报约 3.51%。
第 2 步:从 Eq.SS2 解出资本–劳动比 $K/N$。由 $r^k=\alpha(K/N)^{\alpha-1}$:
第 3 步:由 Eq.SS2 得产出资本比。$\frac{Y}{K}=\frac{r^k}{\alpha}$,代入 $\alpha=0.33$,$Y/K\approx0.106$,即稳态资本产出比 $K/Y\approx9.4$(季度),年化 $K/Y\approx2.4$——这与美国长期数据一致。
第 4 步:由 Eq.SS4 得投资资本比。$I/K=\delta$,进而 $I/Y=\delta K/Y\approx0.025\times9.4\approx0.235$。
第 5 步:由 Eq.SS5 得消费产出比。$C/Y=1-I/Y\approx0.765$。
第 6 步:由 Eq.SS6 反解稳态劳动 $N^\ast$。把 $w=(1-\alpha)Y/N$、$C=Y(1-\delta K/Y)$ 代入:
注意 $Y/C$ 与 $Y/N$ 都依赖 $K/N$,而 $K/N$ 在第 2 步已被钉死,所以 $Y/C$ 是常数。代入 $\sigma=1,\varphi=1$ 的对数+单位 Frisch 情形:$\chi N = (1-\alpha)(Y/N)/(C/Y)\cdot(1/N)$,即 $\chi N^2 = (1-\alpha)(Y/C)$。强制 $N=1/3$ 即可反解 $\chi$。这一步在一般 $\sigma,\varphi$ 下需要数值求解,但 $K/N$、$Y/K$、$C/Y$ 三个比率是解析可解的。
稳态有两个关键事实必须背下来:① 资本租金 $\bar r^k=1/\beta-1+\delta$ 只由 $\beta,\delta,\alpha$ 决定,与劳动偏好无关;② 资本–产出比 $K/Y=\alpha/r^k$ 同理。偏好参数 $(\sigma,\chi,\varphi)$ 只影响稳态劳动水平。这是后面校准与稳态求解页的核心——也解释了为什么 $\chi$ 可以自由调整而不打乱 $K/Y$。
05 对数线性化:完整 RBC 系统
本节使用 对数线性化方法。不熟悉?先学 📚 基础知识库·对数线性化 →(它以稳态为展开点,见 稳态求解)。
对一阶条件在稳态处取对数线性近似,记 $\hat x_t \equiv \ln(X_t/X)\approx (X_t-X)/X$。利用 $X_t = X e^{\hat x_t}\approx X(1+\hat x_t)$ 的近似,并注意 $\widehat{XY}=\hat X+\hat Y$、$\widehat{X/Y}=\hat X-\hat Y$。对数线性化的目的是把非线性 FOC 变成线性 Rational Expectations 系统,从而用 Blanchard-Kahn 方法求数值解。下面对每条方程都写出"原始方程 → 两边取对数/一阶泰勒展开 → 整理"三步。
5.1 消费欧拉 → IS 型方程(完整展开)
原始方程(Eq.R11'):
$$C_t^{-\sigma} = \beta\, E_t\!\left[C_{t+1}^{-\sigma}\left(1-\delta+r_{t+1}^k\right)\right]$$第 1 步:两边取对数(注意期望在非线性函数内,不能直接取 $\ln E_t[\cdot]$;先把它写成乘积形式再展开)。更稳妥的做法是对两边取对数后做一阶泰勒展开:令 $X_t\equiv C_t^{-\sigma}$,$Z_{t+1}\equiv 1-\delta+r_{t+1}^k$,则 $X_t=\beta E_t[X_{t+1}Z_{t+1}]$。在稳态处 $X=\beta X Z$,即 $1=\beta Z$。两边在稳态处取对数偏离:
① 对 $C_t^{-\sigma}$:$\ln(C_t^{-\sigma})=-\sigma\ln C_t$,故 $\widehat{C_t^{-\sigma}}=-\sigma\hat c_t$。② 对 $C_{t+1}^{-\sigma}$:同理 $\widehat{C_{t+1}^{-\sigma}}=-\sigma E_t\hat c_{t+1}$。③ 对 $Z_{t+1}=1-\delta+r_{t+1}^k$:这是两个常数+变量的和,不能直接取对数。在稳态处 $Z=1-\delta+r^k=1/\beta$,做一阶泰勒展开:$Z_{t+1}\approx Z + \frac{\partial Z}{\partial r^k}\hat r_{t+1}^k r^k = Z[1 + \frac{r^k}{Z}\hat r_{t+1}^k]$,故 $\hat z_{t+1}\equiv \widehat{Z_{t+1}/Z} = \frac{r^k}{1-\delta+r^k}\hat r_{t+1}^k = \frac{r^k}{r^k+\delta}\hat r_{t+1}^k$。④ 把三项代回:$-\sigma\hat c_t = -\sigma E_t\hat c_{t+1} + E_t\hat z_{t+1}$,即 $\sigma\hat c_t = \sigma E_t\hat c_{t+1} - \frac{r^k}{r^k+\delta}E_t\hat r_{t+1}^k$。⑤ 两边除以 $\sigma$ 得 Eq.L1。
这就是 NK 模型里 IS 曲线的原型:消费今天的水平取决于预期未来消费与预期实际利率。$\psi$ 是消费对利率的敏感度,$1/\sigma$ 是 EIS。对数效用 $\sigma=1$ 时 $\psi\approx0.28$,即预期实际利率上升 1%,今天消费下降约 0.28%。
5.2 劳动条件(完整展开)
原始方程(Eq.R10'):$\chi N_t^\varphi C_t^\sigma = (1-\alpha)A_t K_t^\alpha N_t^{-\alpha}$。两边都是乘积($\chi$ 与 $1-\alpha$ 是常数,在对数偏离中消去):
① 左边 $\chi N_t^\varphi C_t^\sigma$:常数 $\chi$ 消去,$\widehat{N_t^\varphi C_t^\sigma}=\varphi\hat n_t+\sigma\hat c_t$。② 右边 $(1-\alpha)A_t K_t^\alpha N_t^{-\alpha}$:常数 $(1-\alpha)$ 消去,$\widehat{(\cdot)}=\hat a_t+\alpha\hat k_t-\alpha\hat n_t$。③ 右边同时就是 $\hat w_t=\widehat{MPL}$。④ 左右相等并把含 $\hat n_t$ 的项移到左边:$\varphi\hat n_t+\alpha\hat n_t = \hat a_t+\alpha\hat k_t-\sigma\hat c_t$,即 Eq.L2。
注意 $\chi$ 在线性化中被消掉——这是因为它在稳态恒等式两边同时出现。这条方程说明:技术或资本上升推高工资 $\Rightarrow$ 劳动上升;消费上升带来财富效应 $\Rightarrow$ 劳动下降。
5.3 生产函数、资源约束与资本积累(完整展开)
原始方程(Eq.R2):$Y_t=A_t K_t^\alpha N_t^{1-\alpha}$。两边取对数:$\ln Y_t=\ln A_t+\alpha\ln K_t+(1-\alpha)\ln N_t$。在稳态处减 $\ln Y=\ln A+\alpha\ln K+(1-\alpha)\ln N$($A=1$ 时 $\ln A=0$):
原始方程(Eq.R3):$Y_t=C_t+I_t$。这是和式,不能直接取对数。在稳态处 $Y=C+I$,做一阶泰勒展开:
原始方程(Eq.R4):$K_{t+1}=(1-\delta)K_t+I_t$。同样是和式,稳态处 $K=(1-\delta)K+I$,即 $I=\delta K$。一阶泰勒展开:
$\hat y_t$ 的分解直接给出 RBC 的增长核算:产出波动 = TFP 贡献 + 资本贡献 + 劳动贡献。资源约束的线性化用到了稳态份额 $C/Y$、$I/Y$——这正是为什么稳态必须先解出来。资本积累的线性化里,$(1-\delta)$ 与 $\delta$ 的权重来自"旧资本占大头、新投资占小头"。
5.4 外生技术(线性化)
原始方程(Eq.R5):$\ln A_t=(1-\rho_a)\ln\bar A+\rho_a\ln A_{t-1}+\varepsilon_t^a$。稳态处 $\ln\bar A=0$。两边减 $\ln\bar A=0$,记 $\hat a_t\equiv\ln A_t-\ln\bar A=\ln A_t$:
以上 6 个方程(Eq.L1–L6)构成完整的对数线性 RBC 系统,状态变量为 $\hat k_t,\hat a_t$,其余为前定/前瞻变量。把它们扔进 Dynare 即可求解并做 IRF。实际上 Dynare 可以直接吃非线性原始方程,自动做扰动法线性化,因此我们在 .mod 里写的是非线性形式。
06 校准(Calibration)的逐项来源
RBC 时代还没有贝叶斯估计,参数靠校准:让模型稳态矩(moment)复刻微观/长期数据的矩。下面给出每个参数的取值、单位(季度/年度)、以及"这个数是怎么从数据或文献里定出来的"。
| 参数 | 取值(季度) | 校准来源与推理 |
|---|---|---|
| $\beta$ | 0.99 | 由稳态利率 $r=1/\beta-1$ 反推:美国短期实际利率长期约 3%~4% 年化,对应季度 1%,故 $\beta=1/(1+0.01)\approx0.99$。注意:季度模型才用 0.99;年度模型应用 0.96。 |
| $\sigma$ | 1.0 | 取对数效用 $U(C)=\log C$。这是 Kydland-Prescott 与 Cooley-Hansen 的惯例。资产定价文献(Mehra-Prescott)用 $\sigma=2\sim10$,但 RBC 入门取 1 以简化。 |
| $\varphi$ | 1.0 | Frisch 劳动供给弹性 $=1/\varphi=1$。微观劳动经济学(如 Chetty et al. 2011) meta-analysis 估计的跨期替代弹性中位数约 0.5~1;RBC 为匹配劳动波动取上限 1。 |
| $\alpha$ | 0.33 | 美国国民收入与产品账户(NIPA)中资本份额长期约 1/3,劳动份额约 2/3。这是 Cobb-Douglas 设定下直接读出来的。中国数据下劳动份额偏低,文献常用 0.4~0.5。 |
| $\delta$ | 0.025 | 美国 BEA 数据显示年均物理折旧率约 10%,季度即 0.025。也可由稳态关系 $\delta=I/K$ 反推:长期 $I/Y\approx0.2$、$K/Y\approx2.5$(年度),故 $\delta\approx0.08\sim0.10$。 |
| $\rho_a$ | 0.95 | 对 Solow 残差 $\ln A_t=\ln Y_t-\alpha\ln K_t-(1-\alpha)\ln N_t$ 做季度 AR(1) OLS,美国战后数据估计约 0.95。若用年度数据则约 0.8~0.9。 |
| $\sigma_a$ | 0.007 | 同上回归的残差标准差。季度约 0.7%,年化约 1.4%。这意味着一个标准差的正向技术冲击让 TFP 跳升约 0.7%。 |
| $\chi$ | 反推 ≈ 5.55 | 由稳态劳动条件 $\chi N^\varphi C^\sigma=(1-\alpha)Y/N$,并强制 $N=1/3$(每天 1/3 时间用于市场工作)反解。代入 $\sigma=1,\varphi=1,\alpha=0.33$ 与稳态 $C/Y\approx0.75$,得 $\chi\approx\frac{(1-\alpha)Y/N}{N\cdot C}\approx5.55$。 |
稳态劳动条件:$\chi N^\varphi C = (1-\alpha)Y/N$($\sigma=1$)。
整理:$\chi = \frac{(1-\alpha)Y}{N^2 C}$。
代入 $\alpha=0.33$、$N=0.33$、稳态 $C/Y=1-\delta K/Y\approx1-0.025\times9.4\approx0.765$,得 $Y/C\approx1.31$。
于是 $\chi\approx\frac{0.67\times1.31}{0.33^2}\approx\frac{0.878}{0.109}\approx8.06$。Dynare 的稳态求解器会自动给出精确值;.mod 里写 5.0 或 8.0 都行,关键是让 steady 打印出来的 $N$ 落在 0.33 附近。
校准不是拍脑袋。原则:① 长期/低频矩定结构参数($\beta,\alpha,\delta$);② 微观研究定行为参数($\sigma,\varphi$);③ 残差估计定冲击参数;④ 不在同一组矩上既校准又检验,否则模型"过拟合"自己。例如用 $\alpha$ 拟合劳动份额后,就不能再拿劳动份额去检验模型。
07 Dynare .mod 七步逐行撰写
下面把 .mod 文件拆成 7 步,每一步解释"写什么、为什么这么写、Dynare 在背后干什么"。最后给出完整的可运行代码(≥50 行,中文注释)。
第 1 步:声明变量(var / varexo)
var 列出所有内生变量——模型自己决定的变量;varexo 列出所有外生冲击——模型之外决定的随机变量。每个变量名必须与 model; 块里出现的名字完全一致(区分大小写)。本模型内生变量 6 个:$Y,C,I,K,N,A$;外生冲击 1 个:$\varepsilon^a$。
第 2 步:声明参数(parameters 与赋值)
parameters 列出所有参数名,然后逐行赋值。参数必须在 model; 块之前赋值,否则 Dynare 会用默认值 0,稳态直接爆炸。每个参数的取值来源见第 6 节校准表。
第 3 步:model 块——逐方程解释
model; 与 end; 之间是模型的核心方程。Dynare 用 X(+1) 表示 $X_{t+1}$、X(-1) 表示 $X_{t-1}$。每个方程以分号结尾。我们写非线性原始形式,让 Dynare 自己做扰动法线性化。
- 方程 1 欧拉:
1/C = beta*1/C(+1)*(1-delta+alpha*A(+1)*K(+1)^(alpha-1)*N(+1)^(1-alpha))。注意 $\sigma=1$ 时 $u'(C)=1/C$,所以写成1/C。MPK 用 $A_{t+1},K_{t+1},N_{t+1}$ 是因为今天的投资形成的资本明天才生产。 - 方程 2 劳动条件:
chi*N^varphi*C^sigma = (1-alpha)*A*K^alpha*N^(1-alpha-1)。左边 MRS,右边 MPL。 - 方程 3 生产函数:
Y = A*K^alpha*N^(1-alpha)。 - 方程 4 资源约束:
Y = C + I。 - 方程 5 资本积累:
K(+1) = (1-delta)*K + I。 - 方程 6 技术过程:
log(A) = rho_a*log(A(-1)) + eps_a。
第 4 步:initval 块——给稳态求解器一个起点
initval; 不是"真值",只是牛顿求解器的初始猜测。经验法则:从解析稳态拿值。令 $A=1$、$N=1/3$,$K$ 由资本劳动比估计(约 4~10,季度)。猜错了也没关系,Dynare 会迭代;但若差太远(如 $K=0$),求解器可能不收敛。
第 5 步:steady; 命令——求解稳态
steady; 调用非线性求解器(默认求解器)在 initval 附近迭代,找到满足所有方程的常数解。运行后控制台会打印 $Y,C,I,K,N$ 的稳态值,并报告残差(应接近 0)。
第 6 步:check; 命令——检查 Blanchard-Kahn 条件
check; 在稳态处做一阶扰动线性化,并计算 Jacobian 矩阵的特征值。它会打印"the rank of the jacobian"与特征值列表。判断标准:前瞻变量的个数 = 单位圆外的特征值个数。若满足,模型有唯一稳定解;否则 Dynare 会报警"Blanchard-Kahn conditions not satisfied",通常是因为方程写错(时间下标错、缺方程)。
第 7 步:stoch_simul(order=1, irf=40) ——求解与模拟
stoch_simul 是主命令:order=1 表示一阶 Taylor 近似(二阶近似用 order=2,会捕捉波动率效应);irf=40 表示画 40 期脉冲响应;后面列出你想画图的变量。运行后 Dynare 自动生成 IRF 图、 Moments(标准差、相关系数)、并把结果存到 oo_ 结构里供后续 MATLAB 绘图。
完整 .mod 代码
// ============================================================
// 09-rbc-baseline.mod —— RBC 基准模型(社会计划者配置)
// 运行:在 MATLAB/Octave 中执行 dynare rbc_baseline.mod
// 模型:CRRA(对数)消费 + 凸劳动,Cobb-Douglas 生产,AR(1) 技术
// 周期:季度
// ============================================================
// ---------- 第1步:声明内生变量 ----------
var Y // 产出 Output(GDP)
C // 消费 Consumption
I // 投资 Investment
K // 期初资本 Stock of capital
N // 劳动 Hours worked
w // 实际工资 Real wage
r_k // 资本租金率 Rental rate of capital
A; // 全要素生产率 TFP
// ---------- 第1步:声明外生冲击 ----------
varexo eps_a; // 技术冲击 innovation,白噪声
// ---------- 第2步:声明参数 ----------
parameters beta // 主观贴现因子(季度)
sigma // 相对风险厌恶 = 1/EIS
chi // 劳动负效用权重
varphi // Frisch 弹性倒数
alpha // 资本收入份额
delta // 季度折旧率
rho_a // 技术冲击持续性
sig_a; // 技术冲击标准差
// ---------- 第2步:赋值(校准值,见第6节) ----------
beta = 0.99; // 季度贴现,对应年化实际利率约4%
sigma = 1.0; // 对数效用 U(C)=log(C)
chi = 5.55; // 反推:使稳态 N≈1/3
varphi = 1.0; // Frisch 弹性 = 1
alpha = 0.33; // 资本份额 ≈ 1/3
delta = 0.025; // 季度折旧,年化约10%
rho_a = 0.95; // 技术冲击持续性(Solow残差估计)
sig_a = 0.007; // 技术冲击标准差(季度,约0.7%)
// ---------- 第3步:model 块(非线性原始形式) ----------
model;
// (1) 消费-资本欧拉方程:u'(C_t)=beta E_t{u'(C_{t+1})*(1-delta+r_k_{t+1})}
// 对数效用下 u'(C)=1/C;r_k_{t+1}=alpha*A_{t+1}*K_{t+1}^{alpha-1}*N_{t+1}^{1-alpha}
1/C = beta*1/C(+1)*( 1 - delta + alpha*A(+1)*K(+1)^(alpha-1)*N(+1)^(1-alpha) );
// (2) 劳动供给条件:MRS = MPL = w_t
// chi*N^varphi*C^sigma = (1-alpha)*A*K^alpha*N^(1-alpha-1) = w
chi*N^varphi*C^sigma = (1-alpha)*A*K^alpha*N^(1-alpha-1);
// (3) 实际工资定义(MPL)
w = (1-alpha)*A*K^alpha*N^(1-alpha-1);
// (4) 资本租金定义(MPK)
r_k = alpha*A*K^(alpha-1)*N^(1-alpha);
// (5) 生产函数(总供给)
Y = A*K^alpha*N^(1-alpha);
// (6) 资源约束:产出 = 消费 + 投资(封闭经济,无政府)
Y = C + I;
// (7) 资本积累方程:今天的投资 + 折旧后旧资本 = 明天的资本
K(+1) = (1-delta)*K + I;
// (8) 技术过程:log A 服从 AR(1),eps_a 是 iid 白噪声
log(A) = rho_a*log(A(-1)) + eps_a;
end;
// ---------- 第4步:initval(稳态求解器的初始猜测) ----------
// 从解析稳态拿:A=1,N=1/3,K 由资本劳动比估算约 4~10
initval;
A = 1.0;
N = 0.33;
K = 4.0;
Y = 1.0;
C = 0.75;
I = 0.25;
w = 2.0;
r_k = 0.035;
end;
// ---------- 第5步:求解稳态 ----------
steady;
// ---------- 第6步:检查 Blanchard-Kahn 条件 ----------
// 应输出:"required number of eigenvalues found"
check;
// ---------- 设定外生冲击分布 ----------
shocks;
var eps_a = sig_a^2; // 冲击方差 = 0.007^2
end;
// ---------- 第7步:一阶扰动求解 + 40期 IRF ----------
// order=1:一阶Taylor近似;irf=40:画40期
// 列出想画图的变量:Y C I N K w r_k
stoch_simul(order=1, irf=40) Y C I N K w r_k;
控制台先打印稳态值($Y,C,I,K,N,w,r_k$),再 EIGENVALUES 列表(应满足 Blanchard-Kahn 条件),最后弹出各变量对 $\varepsilon^a$ 的 IRF 图。把 irf=40 改大可看冲击消退的长尾;把 order=1 改成 order=2 可看二阶近似下的风险修正。
08 脉冲响应:技术冲击下各变量怎么动
对一个正向 1% 的技术冲击 $\varepsilon_t^a>0$,按时间顺序的预测(与 Dynare 画出的 IRF 一致)。每个变量单独给出"为什么这样反应"的经济学直觉。
关键机制是跨期劳动替代(intertemporal substitution of leisure):高工资期多工作、低工资期少工作,于是 $Y,C,I,N$ 同向波动。这正是 Kydland–Prescott 声称"技术冲击能解释 70% 美国产出波动"的来源。但要注意:共动 ≠ 因果正确。事后看,RBC 把索洛残差当作外生 TFP 的做法受到了强烈批评(见第 9 节)。
09 估计:从 FRED 数据到 Solow 残差与贝叶斯
第 6 节的校准表回答了"参数取多少",本节回答更实操的问题:这些数具体从哪条数据序列算出来?冲击参数 $\rho_a,\sigma_a$ 怎么用 OLS 估?如果不满足于校准、想做贝叶斯估计,需要哪些数据、先验、观测方程?这是 RBC 从"教科书玩具"走向"可写论文的实证模型"最常缺的一环。
9.1 美国数据:FRED 变量代码与处理流程
RBC 估计需要四类高频宏观序列。全部可在圣路易斯联储 FRED 数据库(fred.stlouisfed.org,免费、可直接下载 CSV)获取,代码如下表。样本惯例取 1955Q1–2019Q4(避开二战配给与 COVID 异常值),季度频率、季节调整。
| 模型变量 | FRED 代码 | 名称 / 单位 | 处理 |
|---|---|---|---|
| 产出 $Y_t$ | GDPC1 | 实际 GDP,十亿 2017 年链式美元,季度 SAAR | 取对数后 HP 滤波($\lambda=1600$)或一阶差分 |
| 消费 $C_t$ | PCECC96 | 实际个人消费支出(耐用品+非耐用品+服务),十亿链式美元 | 对数、剔除趋势;与 $Y_t$ 同频对齐 |
| 投资 $I_t$ | GPDIC1 | 实际国内私人总投资,十亿链式美元 | 同上。注意:勿用名义投资,必须用实际值 |
| 劳动 $N_t$ | PRS85006023 或 HOANBS | 非农业部门周平均工时(小时)/ 非农部门总工时指数 | 对数、去趋势。劳动份额校准用 PRS85006173(非农业单位劳动成本份额) |
| 资本 $K_t$ | RKNANPC(或自建永续盘存) | 私人固定资本存量(BEA) | 季度存量需用永续盘存法 $K_t=(1-\delta)K_{t-1}+I_t$ 从年度 BEA 数据插值 |
| 实际利率(校验 $\beta$) | FEDFUNDS − CPIAUCSL 通胀 | 联邦基金利率(月)− CPI 同比通胀 | 季度化后扣除长期通胀,得长期实际利率约 2%~3%,反推 $\beta$ |
① 频率对齐:月度序列(工时、利率)按季度末或季内平均聚合到季度。② 量纲统一:全部用实际值(链式美元),别混用名义与实际。③ 趋势处理:RBC 是平稳模型,数据必须去趋势——常用 HP 滤波($\lambda=1600$),学术论文里也可用线性趋势或 Baxter-King 带通滤波;不同滤波会改变方差分解结论,必须稳健性检验。④ 样本截断:去掉大萧条/二战/COVID 这类模型外冲击,避免估计被异常样本主导。
9.2 Solow 残差:$\rho_a,\sigma_a$ 的 OLS 估计
这是 RBC 估计最核心的一步。生产函数 $Y_t=A_tK_t^\alpha N_t^{1-\alpha}$ 两边取对数:
用 $\alpha=0.33$ 与上节数据算出 $\ln A_t$ 序列后,对它做 AR(1) 回归:
常数项 $c$:若数据已去趋势,$c$ 应接近 0;若未去趋势,$c$ 吸收趋势增长率,需在模型里单独处理。估计结果:美国战后季度数据典型 $\hat\rho_a\approx 0.95$、$\hat\sigma_a\approx 0.007$(即季度 TFP 创新波动约 0.7%)。批评:Burnside-Eichenbaum-Rebelo 与 Basu-Fernald-Kimball 指出,Solow 残差混入了资本利用率与劳动窖藏,"纯技术冲击"比这里小一半甚至逆周期——这是 RBC 最大的实证软肋(见第 11 节)。
9.3 中国数据适配
做中国 RBC 时,FRED 不可用,改用:国家统计局(季度 GDP、城镇就业、全社会固定资产投资)、Wind / CSMAR / CEIC 数据库(资本存量需要张军-施少华-龚六堂或单豪杰的永续盘存估算序列)。中国参数校准惯例:$\alpha=0.4\sim0.5$(劳动份额低于美国)、$\beta=0.99$ 季度、$\delta=0.025$、$\rho_a$ 由中国 Solow 残差 OLS 约为 0.85~0.9。注意中国季度 GDP 缺乏官方季度资本存量,需用年度资本存量+季度投资插值,这一步是中国 RBC 论文最容易被审稿人质疑的地方。
9.4 贝叶斯估计流程(进阶)
校准只把矩"对上去",贝叶斯估计则让数据说话。RBC 若升级到贝叶斯,标准流程如下(详细算法见站内 贝叶斯估计页,此处把 RBC 专用部分写全):
- 状态空间表示:把对数线性 RBC 写成 $X_t=A X_{t-1}+B\varepsilon_t$(转移方程)与 $Y_t^{obs}=H X_t$(观测方程)。
- 观测方程:用 3 个可观测序列即可——例如
$$\Delta\ln Y_t^{obs} = \hat y_t - \hat y_{t-1} + \gamma$$ $$\Delta\ln C_t^{obs} = \hat c_t - \hat c_{t-1} + \gamma$$ $$\Delta\ln I_t^{obs} = \hat i_t - \hat i_{t-1} + \gamma$$其中 $\gamma$ 是季度确定性趋势增长率(待估,先验 Normal(0.004, 0.002))。RBC 入门模型不观测资本与劳动,因为它们不可直接度量。
- 先验表:固定弱识别参数($\beta,\alpha,\delta$ 校准不估),只估行为与冲击参数:
参数 先验分布 先验均值 先验标准差 理由 $\sigma$ Normal 1.00 0.25 围绕对数效用 $\varphi$ Gamma 1.00 0.50 Frisch 弹性倒数 $\rho_a$ Beta 0.95 0.02 高度持续,约束 (0,1) $100\sigma_a$ Inv-gamma 0.70 Inf(1 型) 冲击标准差,正数约束 $\gamma$(趋势增长) Normal 0.004 0.002 美国季度趋势增长约 0.4% - 似然:用卡尔曼滤波(Kalman filter)对状态空间模型一步一步算 $p(Y^{obs}|\theta)$——每步由预测误差与其协方差更新,累积得对数似然。
- 后验抽样:后验 $\propto$ 先验 $\times$ 似然 通常无解析解,用 Metropolis-Hastings MCMC 抽 2 条各 25 万步的链,前半段 burn-in,检查有效样本量(ESS>100)与链收敛(Brooks-Gelman-Rubin 统计量接近 1)。
- 报告:后验均值、后验 90% 置信区间、边际似然(用于模型比较)。Dynare 里只需在 .mod 末尾把
stoch_simul换成estimation(datafile=..., mode_compute=6, mh_replic=200000) Y C I;并在estimated_params;块里登记先验。
RBC 经典论文(Kydland-Prescott, Cooley-Hansen)只用校准;贝叶斯是 1990 年代后 Smets-Wouters 时代的标配。对一个"只有一个技术冲击"的最简 RBC,贝叶斯估计常把 $\rho_a$ 推到 0.99 以上、把 $\sigma_a$ 压到很小——因为单一冲击解释不了数据里的多变量波动。这本身就是"RBC 太少冲击"的模型缺陷诊断。
10 方差分解与模型诊断
IRF 回答"冲击怎么传导",方差分解(variance decomposition)回答"谁在解释波动"。Dynare 跑完 stoch_simul 后会自动打印每个变量的 k 期预测方差中,各冲击贡献的百分比。RBC 只有一个冲击 $\varepsilon^a$,所以方差分解理论上是平凡的——100%。但这个"平凡"结果本身就是 RBC 最尖锐的实证检验。
10.1 理论方差分解
| 变量 | $\varepsilon^a$ 贡献(长期) | 经济含义 |
|---|---|---|
| $Y_t$ | ≈100% | RBC 命题:产出波动 100% 来自技术冲击 |
| $C_t$ | ≈100% | 消费平滑下,消费也由同一冲击驱动 |
| $I_t$ | ≈100% | 投资波动同样来自技术冲击 |
| $N_t$ | ≈100% | 劳动波动 = 跨期劳动替代对技术冲击的反应 |
Kydland-Prescott (1991) 的著名论断"技术冲击解释美国战后产出波动的 70%",本质就是在为这张表辩护——他们承认 RBC 解释不了 30%,但认为 70% 已经够多了。后来的文献(如 Hansen-Ohanian)加入政府支出、偏好、工资加成等额外冲击后,技术冲击的贡献降到 30%~50%。
10.2 二阶矩诊断:模型矩 vs. 数据矩
把 Dynare 打印的理论矩(标准差、与产出的相关系数、一阶自相关)与 HP 滤波后的 FRED 数据矩对照:
| 矩 | 模型预测(典型) | 美国数据 | 诊断 |
|---|---|---|---|
| $\sigma(Y)$ | 1.3% | 1.5% | ✓ 量级吻合 |
| $\sigma(C)/\sigma(Y)$ | 0.5~0.7 | 0.6 | ✓ 消费更平滑 |
| $\sigma(I)/\sigma(Y)$ | 2.5~3.5 | 3.0 | ✓ 投资波动大 |
| $\sigma(N)/\sigma(Y)$ | 0.5~0.8 | 1.0+ | △ RBC 低估劳动波动 |
| corr($N$, $Y$) | 0.9+ | 0.85 | ✓ 强顺周期 |
| $\rho_1(Y)$ | 0.90 | 0.85 | ✓ 持续性合理 |
RBC 的"成功"在于消费/投资相对波动与产出共动;"失败"在于劳动波动幅度不够大。这正是为什么后来的 NK/SW 模型要加入需求冲击、价格/工资粘性、垄断加成冲击——不是为了让模型更炫,而是为了把劳动与产出的缺口补上。
10.3 模型诊断清单
- Blanchard-Kahn 检查:
check;后特征值个数 = 前瞻变量个数(RBC 前瞻变量为 $C_t$,单位圆外特征根 1 个)。 - 稳态残差:
steady;打印的方程残差应 $<10^{-8}$,否则 .mod 方程写错。 - 矩匹配:校准用的矩(劳动份额 2/3、$I/K\approx0.025$、$K/Y\approx9.4$ 季度)必须与 Dynare 稳态输出一致;若 $N$ 不在 0.33 附近,回调 $\chi$。
- IRF 符号:正向技术冲击后 $Y,C,I,N,w$ 必须全为正;若 $N$ 为负,说明劳动条件符号写反或 $\varphi$ 过大。
- 二阶矩稳健性:换用线性趋势/带通滤波重做数据矩,若结论翻转,说明结论依赖去趋势方法——这是审稿人必问。
11 RBC 的局限与学术评价
- 失业与劳动幅度问题:RBC 的劳动波动几乎全靠跨期替代,需要极大的 Frisch 弹性才能匹配数据,微观证据不支持(Chetty et al. 2011 meta 估计中位数仅 0.5)。
- 技术冲击的可测性:把索洛残差当作外生 TFP 遭到 Mankiw、Summers 等批评——残差里混了 utilization(资本利用率周期波动)、劳动窖藏(labor hoarding)、需求侧因素。Basu-Fernald-Kimball (2006) 调整后的"纯技术冲击"甚至是轻微逆周期的。
- 货币政策完全中性:模型里没有货币,无法解释"货币政策冲击后产出、通胀系统性反应"这一被 VAR(Christiano-Eichenbaum-Evans)反复确认的事实。这正是新凯恩斯(NK)革命要补的洞。
- 价格灵活性假设太强:没有名义刚性,衰退被解释为"理性地选择少工作",缺乏政策含义——政府无为是最优。
- 无法解释通胀的内生持续性:RBC 里通胀根本不出现;现实中通胀有显著自相关,需要 NK 的价格粘性来解释。
RBC 不是因为错而被淘汰,而是因为它确立了方法论(微观基础 + 一般均衡 + 预期 + 校准/估计 + IRF)。NK 与 SW 中尺度模型都保留了 RBC 的实体骨架,只是加上名义刚性与更多摩擦。学 RBC 学的是"怎么搭一个能跑的 DSGE"。
12 论文案例、常见错误与进阶资料
10.1 必读论文
10.2 常见错误(≥4 条)
对数线性化后所有带 hat 的变量都是偏离稳态的百分比,不是水平值。初学者常在 .mod 里把 $\hat c_t$ 与 $C_t$ 混用,导致稳态求解爆炸。本页的 .mod 直接写非线性水平值,避免了这个混淆。
把 $MPK$ 误写成 $K$ 而不是 $K(+1)$。资本积累与欧拉方程的时间下标是 RBC 最易出错处:今天储蓄买的资本明天才生产。
$\beta=0.99$ 是季度值,$\delta=0.025$ 也是季度值。若误用年度 $\beta=0.96$、$\delta=0.1$,稳态 $K/Y$ 会差一个量级,IRF 全错。先确认"频率"再校准。
非线性模型里 $\chi$ 出现在劳动条件中,但对数线性化时 $\chi$ 被消掉(因为 $\chi N^\varphi C^\sigma=w$ 在稳态恒成立)。手推线性式时若忘了这一点,会在 $\hat n_t$ 方程里凭空多出常数项。
常见错误:把 $K$ 设成 100(应为 4~10 季度)或 $A=0.5$(应为 1.0)。Dynare 的牛顿求解器对初始值敏感;若报"steady: the solution does not converge",先回第 4 步调整 initval。
$\ln A_t=\ln Y_t-\alpha\ln K_t-(1-\alpha)\ln N_t$ 必须用实际产出与实际资本(链式美元);用名义值会让残差混入通胀,$\hat\rho_a$ 虚高到 0.99 以上。另外,若数据未去趋势,AR(1) 回归里必须留常数项 $c$,否则残差序列相关、$\sigma_a$ 被低估。
10.3 进阶资料
- Cooley (1995), Frontiers of Business Cycle Research —— RBC 手册级参考书。
- Ljungqvist & Sargent, Recursive Macroeconomic Theory —— 动态规划与 RBC 的严格推导。
- King & Rebelo (1999), "Resuscitating Real Business Cycles", Handbook of Macroeconomics。
- Dynare 官方 wiki: RBC example —— 与本页 .mod 对照。
13 方程总清单 Equation Summary
本表汇总 RBC 基准模型全部方程:模型设定(R1–R5)、厂商定义(R6–R7)、拉格朗日与 FOC(R8–R12)、稳态方程组(SS1–SS6)、对数线性化方程(L1–L6)。合计 N = 22 个方程。
| 编号 | 方程名称 | 公式简写 | 所在章节 |
|---|---|---|---|
| A. 模型设定方程(5 个) | |||
| Eq.R1 | 家庭 CRRA 效用 | $U=E_0\sum\beta^t[C_t^{1-\sigma}/(1-\sigma)-\chi N_t^{1+\varphi}/(1+\varphi)]$ | §2.1 |
| Eq.R2 | Cobb–Douglas 生产函数 | $Y_t=A_tK_t^\alpha N_t^{1-\alpha}$ | §2.2 |
| Eq.R3 | 资源约束 | $Y_t=C_t+I_t$ | §2.2 |
| Eq.R4 | 资本积累 | $K_{t+1}=(1-\delta)K_t+I_t$ | §2.2 |
| Eq.R5 | TFP AR(1) 冲击 | $\ln A_t=\rho_a\ln A_{t-1}+\varepsilon_t^a$ | §2.3 |
| B. 厂商定义方程(2 个) | |||
| Eq.R6 | 资本边际产出 MPK | $r_t^k=\alpha A_tK_t^{\alpha-1}N_t^{1-\alpha}=\alpha Y_t/K_t$ | §3.5 |
| Eq.R7 | 劳动边际产出 MPL = 实际工资 | $w_t=(1-\alpha)A_tK_t^\alpha N_t^{-\alpha}=(1-\alpha)Y_t/N_t$ | §3.5 |
| C. 拉格朗日与 FOC(5 个) | |||
| Eq.R8 | 拉格朗日函数 | $\mathcal L=E_0\sum\beta^t\{u(C,N)-\lambda_t[C_t+K_{t+1}-(1-\delta)K_t-A_tK_t^\alpha N_t^{1-\alpha}]\}$ | §3.1 |
| Eq.R9 | FOC on $C_t$ | $\lambda_t=C_t^{-\sigma}$ | §3.2 |
| Eq.R10/R10' | FOC on $N_t$(MRS=MPL) | $\chi N_t^\varphi C_t^\sigma=w_t$ | §3.3 |
| Eq.R11/R11' | FOC on $K_{t+1}$(欧拉) | $C_t^{-\sigma}=\beta E_t[C_{t+1}^{-\sigma}(1-\delta+r_{t+1}^k)]$ | §3.4 |
| Eq.R12 | 横截条件 TVC | $\lim_{T\to\infty}\beta^T E_0[C_T^{-\sigma}K_{T+1}]=0$ | §3.6 |
| D. 稳态方程组(6 个) | |||
| Eq.SS1 | 稳态欧拉 | $r^k=1/\beta-1+\delta$ | §4.1 |
| Eq.SS2 | 稳态 MPK | $r^k=\alpha Y/K$ | §4.1 |
| Eq.SS3 | 稳态生产函数 | $Y=K^\alpha N^{1-\alpha}$ | §4.1 |
| Eq.SS4 | 稳态资本积累 | $I=\delta K$ | §4.1 |
| Eq.SS5 | 稳态资源约束 | $Y=C+I$ | §4.1 |
| Eq.SS6 | 稳态劳动条件 | $\chi N^\varphi C^\sigma=(1-\alpha)Y/N$ | §4.1 |
| E. 对数线性化方程(6 个) | |||
| Eq.L1 | 线性化欧拉(IS 型) | $\hat c_t=E_t\hat c_{t+1}-\psi E_t\hat r_{t+1}^k$ | §5.1 |
| Eq.L2 | 线性化劳动条件 | $(\varphi+\alpha)\hat n_t=\hat a_t+\alpha\hat k_t-\sigma\hat c_t$ | §5.2 |
| Eq.L3 | 线性化生产函数 | $\hat y_t=\hat a_t+\alpha\hat k_t+(1-\alpha)\hat n_t$ | §5.3 |
| Eq.L4 | 线性化资源约束 | $\hat y_t=(C/Y)\hat c_t+(I/Y)\hat i_t$ | §5.3 |
| Eq.L5 | 线性化资本积累 | $\hat k_{t+1}=(1-\delta)\hat k_t+\delta\hat i_t$ | §5.3 |
| Eq.L6 | 线性化 AR(1) 技术 | $\hat a_t=\rho_a\hat a_{t-1}+\varepsilon_t^a$ | §5.4 |
模型设定 5 + 厂商定义 2 + 拉氏/FOC 5(含 TVC)+ 稳态 6 + 线性化 6 = 24 个独立公式块。其中 Eq.R10/R10'、Eq.R11/R11' 是同一 FOC 的两种写法(带乘子 / 消去乘子),按一个独立方程计;故按"独立模型方程"口径 N=22。