最近要写论文,入门了DSGE模型,作为目前经济学学术界普遍采用的一种分析范式,该模型兼具微观、宏观经济学理论知识,包含了大量建模、求解、估计等的数据计算、处理方式,因此该模型学习难度也比较高,对入门者基本素质要求较高。
作为入门者,在学习的过程中总是想解决“DSGE模型到底是什么”的问题,然而本人在网上搜索资料的时候,却发现很多介绍DSGE模型入门的资料,要么提供了入门学习路径(各种经典论文与书籍的介绍),要么一开始就讲起来DSGE模型的构建与求解技术(几大部门、线性技术化、贝叶斯估计等等)。
事实上,不了解DSGE的基本框架,在入门的过程中总是会问:我为什么学习这个,我学这个的目的是干什么?这就陷入了“见树木而不见森林”的困境,故本人在此将DSGE模型基本框架梳理一下,且采用Dynare软件实现DSGE模型结果也是基于这个框架,既为自己也为大家学习提供方便,但由于本人也是初学者,其中的错误望大家批评指正。
DSGE 模型分析框架大致可以分为模型构建、模型求解、数据处理与参数估计和模型模拟分析等四大部分。
(1)模型构建
DSGE模型构建就是研究者根据自己的需求建立一个多部门、不同经济行为主体的虚拟经济体,一般来说包括家庭、厂商、政府等,在此基础上不同的模型会进行扩展,比如央行、银行、中间品生产商、最终品生产商等等,在这部门所涉及的不同经济行为主体通过约束、偏好、最优行为选择、假设条件等产生关联,并在一定的约束条件下产生效用最大化问题。不同的DSGE模型其经济行为主体构建的决策公式由于其围观经济学理论基础也会不同,比如效用函数就采用对数或CRRA形式,其间又引入了不同的变量及参数,有的还会引入消费习惯、价格粘性、劳动可分、投资调整,及其货币政策、财政政策等等。
另外,DSGE模型可能还包含总体资源约束公式、恒等式,并引入多种外生随机冲击,这些外生随机冲击与各行为主体的决策共同决定了DSGE模型的动态过程。这么多设定使得DSGE模型的变量、参数相较于一般的计量模型多得多。
(2)模型求解
DSGE模型中的各个行为主体优化条件(通常为一阶条件)、资源约束条件,这些构成了具有理性预期的线性期望差分方程组,DSGE求解就是对这些方程求出相关变量的解析解,以此刻画出模型中各变量变化所遵循的动态路径。对DSGE模型求解,一种方法就是直接对非线性模型求解,但由于绝大部分 DSGE 模型都是含有期望符号的非线性模型,这一方法计算复杂且很难实现,故大多数DSGE模型采用对数线性化的方法,对模型进行对数变换,在稳态附近进行泰勒展开,采用一阶或高阶近似,将含有期望符号的非线性系统转变为含有期望符号的线性系统。
另外线性技术化方法还包括:全微分法、Uhlig法、BK 法等。通俗地讲,个人认为DSGE模型求解就是将不同部门或经济主体的优化公式联立起来,在线性化的技术手段下,形成线性方程组,经过一系列推导,得到不同变量的表达式。
(3)数据处理与参数估计
在模型求解的基础上,我们需要搜集DSGE模型相对应的各种真实经济数据(如消费、投资、产出等),从而对参数进行估计,估计出来的参数也是为DSGE模型下一步模型仿真模拟做准备。有时候在参数估计之前需要对数据进行预处理,包括去趋势化、周期分离等,主要目的是去除实际宏观数据的趋势或周期性(如季度数据),是数据变得平稳,在这里也有很多计量经济学中的一些方法。
模型对现实世界的拟合程度,很大程度上依赖模型参数的取值,所以参数估计直接关系到模型的现实意义。DSGE模型的参数估计方法包括校准法、极大似然估计、贝叶斯估计以及后来出现的投影法、值函数迭代法等等,但是这里使用比较多的还是校准法和贝叶斯估计等。校准法的主导思想是通过使模型的理论矩尽可能与观测数据一致而得到模型参数的校准值,即主要根据经验研究确定模型的参数,但由于校准法缺乏坚实的理论基础,并且个别参数的校准取值未必准确,因此相对于极大似然估计、贝叶斯估计而言,后者可以提供观测数据的完全信息,从而在模型估计中得到了更为广泛的应用。
(4)模型模拟分析
在给出了模型参数的适当估计值之后,就可以利用模型进行各种在真实世界中无法实施的试验。如模拟(或仿真)分析各种不确定性因素(外生冲击)或政策变化(货币政策、财政政策、供给政策)对模型的内生变量产生的脉冲响应影响,可以分析冲击的动态宏观经济传导机制。模拟过程包括分析各种外生冲击以及受政策变化影响的内生冲击对宏观经济的影响,分析冲击的动态传导机制,分析经济政策的实施效果,从而验证模型的准确性以及为政策制定部门提供做决策的理论依据。这些问题正是DSGE模型最后一步完成后会得出的结论,也正是建立模型的主要目的。
在这里借用一张图来说明上述的整个过程(如下),另外基于DSGE模型的Dynare代码的编写,其基本格式也是以此为基础,包括对内生变量、外生变量、参数的声明,编写线性或一阶线性估计模型、可观测变量、初始值、参数估计等等,一般了解了DSGE模型的基本框架,找一个简单的模型Dynare代码,就基本知道了Dynare的基本套路,后面遇到在复杂的模型也是这个命令套路。
我们学习DSGE要学习什么:DSGE基本框架介绍
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 机器学习是做NLP和计算机视觉这类应用算法的基础,虽然现在深度学习模型大行其道,但是懂一些传统算法的原理和它们之间...
- Tsuchikawa S, Schwanninger M (2013) A Review of Recent Ne...
- 中文文档:http://sklearn.apachecn.org/cn/0.19.0/tutorial/basic...