查看原文
其他

Stata:参数校准-nl-nlsur

连享会 连享会 2023-10-24

👇 连享会 · 推文导航 | www.lianxh.cn


作者:李祉豪 (厦门大学)
邮箱:andycristone@163.com

温馨提示: 文中链接在微信中无法生效。请点击底部「阅读原文」。或直接长按/扫描如下二维码,直达原文:


目录

  • 1. 背景简介

  • 2. 命令语法

  • 3. 应用实例

  • 4. 参考文献

  • 5. 相关推文



1. 背景简介

参数校准作为宏观经济学实证研究的重要环节,其结果对后续研究中的基准拟合结果分析、反事实模拟与稳健性检验具有重要影响。

参数校准的基本思路是根据所建立的宏观经济模型的一般均衡结果推导得出的目标方程去逼近实际数据,在一定的参考准则下通过不断调整参数赋值进行迭代使得模型尽可能趋近真实数据。这一过程与计量回归最小二乘法估计思想相同,不同之处在于通常需估计的模型目标方程多为非线性的,而且也多以方程组的形式出现。

相关的 Stata 命令为 nlnlsur。前者为单一目标方程的非线性最小二乘估计,后者为多个方程组的非线性最小二乘似不相关回归。

2. 命令语法

nlnlsur 为系统自带命令可直接使用。两者语法基本相同,语法结构如下:

* nl
nl (depvar_1=<sexp_1>) [if] [in] [weight] [, options]

* nlsur
nlsur (depvar_1=<sexp_1>) (depvar_2=<sexp_2>)
[if] [in] [weight] [, options]

其中,depvar 为需要进行估计的被解释变量名。sexp 为有关被解释变量的表达式,其中代估参数的变量名需包含于 {} 中。options 选择项如下:

  • variables/va:指定模型中的解释变量;
  • initial/in:指定参数的初始值;
  • fgnls:该指令只适用于 nlsur 命令,表示在估计时采用可行广义非线性最小二乘两步估计,默认为该估计方法;
  • ifgnls:该指令只适用于 nlsur 命令,表示在估计时采用可行广义非线性最小二乘迭代估计;
  • nls:该指令只适用于 nlsur 命令下,表示在估计时采用普通的非线性最小二乘估计;
  • nolog:不显示估计时的迭代过程;
  • vce(#):指定估计时的稳健标准误类型,# 可填 gnrrobustclusterbootstrap 等;
  • eps(#):指定估计收敛准则,默认为 esp(1e-5)
  • delta(#):指定估计误差精确度范围,默认为 delta(4e-7)

3. 应用实例

农业增加值在国民产出中的占比变化是衡量一国或地区经济发展水平的一个参考指标,也是经济增长、结构转型与发展经济学的重要研究对象。关于结构转型这一研究主题,经济增长手册第二卷第六章“增长与结构转型” (Handbook of Economic Growth, vol.2 Chapter 6- Economic Growth and Structural Transformation) 对此进行了详细介绍。

参考其中的模型设定做法,为模拟中国农业增加值从 1978 年至 2018 年的增加值占比变化,假定一个封闭经济体下有农业和非农业两个产品生产部门,其产品价格分别为 ,该经济体有一个永久生存的代表性家庭,其对两种商品偏好的效用函数采取非位似偏好的 CES 形式,表达式为:

分别为消费者对农产品和非农产产品的消费量。 为消费者维持自身生存的最低农业消费量,一般为负数,表示扣除这一维持生存的部分之后对农产品的额外偏好。 为消费者总消费中农产品消费所占权重取值在0~1之间。 为农产品和非农产品之间的替代弹性,取值为大于 0 的正数。

在生产方面,两个产品部门分别有两个代表性厂商雇佣劳动力进行产品生产,其生产函数为: 为部门技术水平, 为部门生产所雇佣的劳动力。

模型一般均衡时有产品市场出清和要素市场出清,前者为 ,后者为 。最终我们得到一般均衡条件下农业部门的增加值占比表达式为:

在进行校准前,我们从国家统计局收集校准所需的原始数据并对其进行处理。国家统计局报告了三大产业的名义增加值和各自的增加值指数,我们将二三产业进行合并即为非农产业名义增加值得到 。其次我们对价格进行标准化处理。

以 1978 年为基期并令三大产业的产品价格均为 1,对农业来说,利用以下公式:

得到标准化后的农产品价格。对于非农产业来说,参照对 的计算式分别得到第二、三产业标准化后的产品价格,然后利用以下公式:

得到非农产业的实际增加值 。那么 。最后我们得到处理后的数据如下:

* Example generated by -dataex-.
* For more info, type help dataex
clear
input int t double(P1Y1 P2Y2 P1 P2)
1978 217.4284311 567.9183656 1 1
1979 268.7701471 606.6007728 1.165062739 .988408265
1980 290.2247935 689.1317806 1.276105246 1.011683517
1981 329.974596 723.7367376 1.356232312 1.018125315
1982 376.0860748 771.0223513 1.385977997 1.004192714
1983 418.6111052 866.7250176 1.425079406 1.008836388
1984 490.0625494 1063.74485 1.477000523 1.064952712
1985 542.5997481 1399.824947 1.605876864 1.184760973
1986 590.0774929 1625.024016 1.690899053 1.239048998
1987 684.0936746 1914.949939 1.871679696 1.280842558
1988 817.8810068 2422.816643 2.183174818 1.423101943
1989 902.6321969 2764.874154 2.337499502 1.553399758
1990 1071.067182 2957.901928 2.583150365 1.613456688
1991 1129.048097 3568.68689 2.660212302 1.737713314
1992 1238.24264 4567.213885 2.788904772 1.886363672
1993 1470.358431 6145.144419 3.164480048 2.16801463
1994 2022.03104 8361.0358 4.185308074 2.546677812
1995 2566.125141 10528.65956 5.06313172 2.847837334
1996 2962.726555 12367.97387 5.563991434 3.009158906
1997 3045.321606 13972.16233 5.529446263 3.077537219
1998 3120.786457 15066.66951 5.478307794 3.051600199
1999 3105.906966 16227.69677 5.306364209 3.028510112
2000 3141.856841 18265.84548 5.246940319 3.111080866
2001 3309.459258 20357.5134 5.384122076 3.179706001
2002 3456.268813 22527.84834 5.475756716 3.196316331
2003 3622.782486 25713.93805 5.60631018 3.267201781
2004 4462.630489 30086.84329 6.507480974 3.449560495
2005 4655.274 35333.39026 6.460652936 3.610469406
2006 4977.691437 41867.83511 6.595641253 3.763908427
2007 5907.841086 51751.21149 7.562323566 4.032590386
2008 6930.405824 61221.63397 8.434618463 4.335256636
2009 7169.438337 67231.79557 8.390276076 4.32539084
2010 8204.171381 79774.6515 9.209847262 4.593469757
2011 9559.891553 94605.12777 10.30177885 4.937914009
2012 10478.51333 104497.0433 10.80801318 5.038278277
2013 11320.38939 115264.8635 11.24997825 5.141816966
2014 11875.0507 125024.9344 11.34051199 5.187079352
2015 12333.66778 134111.4574 11.33596804 5.20918141
2016 12838.46039 145149.0297 11.42547089 5.283369949
2017 13256.94341 161956.9199 11.34987468 5.534223986
2018 13819.35401 178377.8793 11.43132622 5.728554633
end

* 利用 nl 进行参数校准
nl (xShare = 1/(1+exp({gamma2}))*P1^(1-exp({gamma1})) ///
/(1/(1+exp({gamma2}))*P1^(1-exp({gamma1}))+exp({gamma2}) ///
/(1+exp({gamma2}))*P2^(1-exp({gamma1})))*(1+P1*{Cbar1}/Y) ///
-P1*{Cbar1}/Y), vce(robust) initial(gamma1 1 gamma2 1 Cbar1 -100)

在上述命令中,gamma1gamma2 是我们进行校准的参数,因此需用 {} 括起来。 为社会总产出。在进行估计时使用异方差稳健标准误,在迭代估计时给两个待估参数初值均赋值为 1 维持生存的农产品消费 赋初值为 -100。

在原模型中我们真正需要校准的参数为 ,由于我们的模型对两个参数进行了设定,而在使用 nl 命令进行迭代运算时参数取值是不受限制的,为得到我们真正需要校准的受限取值参数,需使用非线性组合命令 nlcom 对上述结果根据取值范围进行限定:

nlcom (epsilon: exp(_b[/gamma1])) (w: 1/(1+exp(_b[/gamma2]))) (Cbar_1: _b[/Cbar1])

其中 ,通过该命令可将任意取值的参数校准值限定在我们设定的取值范围中,从而得到我们真正关心的参数校准结果。最后的校准结果如下:

Nonlinear regression Number of obs = 41
R-squared = 0.9830
Adj R-squared = 0.9816
Root MSE = .0270708
Res. dev. = -182.7249
------------------------------------------------------------------------
xShare | Coefficient Std. err. z P>|z| [95% conf. interval]
-------+----------------------------------------------------------------
epsilon| 1.672679 .8482823 1.97 0.049 .0100761 3.335281
w | .1390985 .0684974 2.03 0.042 .0048461 .2733509
Cbar_1 | -193.8921 28.84717 -6.72 0.000 -250.4315 -137.3526
-------------------------------------------------------------------------

由此我们可以得到有关待估参数的校准结果及相关统计信息。

4. 参考文献

  • Paul Gomme and Peter Rupert. Theory, measurement and calibration of macroeconomic models[J]. Journal of Monetary Economics, 2007, 54(2): 460-497. -PDF-
  • Nikolay Iskrev. What to expect when you're calibrating: Measuring the effect of calibration on the estimation of macroeconomic models[J]. Journal of Economic Dynamics and Control, 2019, 99: 54-81. -PDF-
  • Herrendorf Berthold, Richard Rogerson, and Akos Valentinyi. Growth and structural transformation[M]. Handbook of economic growth, 2014, vol. 2: 855-941. -PDF-
  • 郭凯明, 杭静, 徐亚男. 劳动生产率、鲍莫尔病效应与区域结构转型[J]. 经济学动态, 2020, 710(04):79-95. -PDF-
  • 陈昆亭, 周炎. 有限需求、市场约束与经济增长[J]. 管理世界, 2020, 36(04):39-53. -PDF-
  • 张斌, 茅锐. 工业赶超与经济结构失衡[J]. 中国社会科学, 2016, 243(03):80-98+206. -PDF-

5. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh 经济结构转型 模型的求解,
安装最新版 lianxh 命令:
ssc install lianxh, replace

  • 专题:Python-R-Matlab
    • MATLAB:Ramsey模型的求解与模拟
  • 专题:其它
    • 一文理解经济结构转型
    • 世代交叠OLG模型的求解与模拟
  • 专题:公开课
    • ⏩ 公开课:如何用理论模型解释经济结构转型?



New! Stata 搜索神器:lianxhsongbl  GIF 动图介绍
搜: 推文、数据分享、期刊论文、重现代码 ……
👉 安装:
. ssc install lianxh
. ssc install songbl
👉  使用:
. lianxh DID 倍分法
. songbl all

🍏 关于我们

  • 连享会 ( www.lianxh.cn,推文列表) 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 直通车: 👉【百度一下: 连享会】即可直达连享会主页。亦可进一步添加 「知乎」,「b 站」,「面板数据」,「公开课」 等关键词细化搜索。


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存