楼主: 2009200051
4620 9

[学科前沿] DSGE的maytlab运行问题 [推广有奖]

  • 1关注
  • 0粉丝

硕士生

68%

还不是VIP/贵宾

-

威望
0
论坛币
59 个
通用积分
0
学术水平
2 点
热心指数
4 点
信用等级
3 点
经验
394 点
帖子
60
精华
0
在线时间
304 小时
注册时间
2010-10-6
最后登录
2025-11-20

楼主
2009200051 发表于 2012-11-24 11:31:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
US_EURO.TXT (7.33 KB)

本人初学DSGE,老师让我看看Frank Schorfheide的A Bayesian Look at New Open Economy Macroeconomics,并再跑一下这篇文章的程序。但用dynare运行时,出现了问题。还请高手指点一下。
mod文件如下:
// Two Country
// BENCHMARK MODEL: OUTPUT GROWTH RULE, DEMEANED DATA
var PI PI_star PI_H PI_Hstar PI_F PI_Fstar
    LAM LAM_star C C_star calC calC_star
    R R_star Y Y_star Q Q_star
    S E_del PSI_F PSI_Hstar
    A A_star G G_star Z
    INF_US INF_F R_US R_F Ygr_US Ygr_F ;

varexo EPS_R EPS_Rstar EPS_A EPS_Astar EPS_G EPS_Gstar EPS_Z EPS_Edel;

parameters theta_H theta_F theta_Hstar theta_Fstar
           tau h alp eta bet
           rhoR psi1 psi2 psi3
           rhoRstar psi1star psi2star psi3star
           rhoA rhoAstar rhoG rhoGstar rhoZ
           gam_steady rr_steady pi_steady pi_steadystar;
// pi_steady = pi_steadystar
// corr_RRstar = 0
// To be substituted
// bet = 1/(1+rr_steady/400);
// kap_H = (1-theta_H)/theta_H*(1-theta_H*bet);
// kap_F = (1-theta_F)/theta_F*(1-theta_F*bet);
// kap_Hstar = (1-theta_Hstar)/theta_Hstar*(1-theta_Hstar*bet);
// kap_Fstar = (1-theta_Fstar)/theta_Fstar*(1-theta_Fstar*bet);
model(linear);
        // 1. Domestic firms price setting
        PI_H = 1/(1+rr_steady/400)*PI_H(+1) + (1-theta_H)/theta_H*(1-theta_H/(1+rr_steady/400))*( -LAM - alp*Q - A );
        
        // 2. Domestic habits
        (1-h)*calC = C - h*C(-1) + h*Z;
        
        // 3. Domestic Marginal utility of consumption
        -LAM = tau/(1-h/(1+rr_steady/400))*calC - h/(1+rr_steady/400)/(1-h/(1+rr_steady/400))*(tau*calC(+1)+Z(+1));
            
        // 4. Domestic importers' price setting
        PI_F = 1/(1+rr_steady/400)*PI_F(+1) + (1-theta_F)/theta_F*(1-theta_F/(1+rr_steady/400))*PSI_F;
      
        // 5. Definition of CPI
        PI   = alp*PI_F + (1-alp)*PI_H;
        
        // 6. Terms of Trade Dynamics
        Q    = Q(-1) + PI_H - PI_F;
        
        // 7. Real Exchange Rate Dynamics
        S    = PSI_F - (1-alp)*Q - alp*Q_star;
        
        // 8. Nominal Depreciation Rate
        E_del = PI - PI_star + S - S(-1) + EPS_Edel;
        
        // 9. Home goods market clearing
        Y = C + G -(alp/tau)*S - alp*(1-alp)*eta*(Q-Q_star);
        
        // 10. Risk Sharing Condition
        LAM = LAM_star - S;
        
        // 11. Monetary Policy Rule
        R = rhoR*R(-1) + (1-rhoR)*(psi1*PI +psi2*(Y-Y(-1)+Z) + psi3*E_del) + EPS_R;
        
        // 12. UIP equation
        R - R_star = PI(+1) - PI_star(+1) + S(+1) -S;
        
        // 13. Foreign firms price setting
        PI_Fstar = 1/(1+rr_steady/400)*PI_Fstar(+1) + (1-theta_Fstar)/theta_Fstar*(1-theta_Fstar/(1+rr_steady/400))*( -LAM_star - alp*Q_star - A_star);
        
        // 14. Foreign habits
        (1-h)*calC_star = C_star - h*C_star(-1) + h*Z;
        // 15. Foreign Marginal utility of consumption
        -LAM_star = tau/(1-h/(1+rr_steady/400))*calC_star - h/(1+rr_steady/400)/(1-h/(1+rr_steady/400))*(tau*calC_star(+1)+Z(+1));
        // 16. Foreign importers' price setting
        PI_Hstar = 1/(1+rr_steady/400)*PI_Hstar(+1) + (1-theta_Hstar)/theta_Hstar*(1-theta_Hstar/(1+rr_steady/400))*PSI_Hstar;
        
        // 17. Definition of CPI
        PI_star   = alp*PI_Hstar + (1-alp)*PI_Fstar;
        
        // 18. Terms of Trade Dynamics
        Q_star = Q_star(-1) + PI_Fstar - PI_Hstar;
               
        // 19. Real Exchange Dynamics
        S = -PSI_Hstar + (1-alp)*Q_star + alp*Q;
        
        // 20. Foreign goods market clearing
        Y_star = C_star + G_star -((1-alp)/tau)*S + alp*(1-alp)*eta*(Q-Q_star);
        
        // 21. Foreign Monetary policy rule
        R_star = rhoRstar*R_star(-1) + (1-rhoRstar)*(psi1star*PI_star + psi2star*(Y_star-Y_star(-1)+Z) - psi3star*E_del) + EPS_Rstar;
        // 22. Euler Equation
        -LAM = -LAM(+1) -(R - PI(+1)) + Z(+1);
        
        // Exogenous shocks
        A        = rhoA*A(-1) + EPS_A;
        A_star   = rhoAstar*A_star(-1) + EPS_Astar;
        G        = rhoG*G(-1) + EPS_G;
        G_star   = rhoGstar*G_star(-1) + EPS_Gstar;
        Z        = rhoZ*Z(-1) + EPS_Z;
        
        // Measurement equations
        INF_US = 4*PI;
        R_US   = 4*R;
        Ygr_US = Y - Y(-1) + Z;
        INF_F  = 4*PI_star;
        R_F    = 4*R_star;
        Ygr_F  = Y_star - Y_star(-1) + Z;
end;

estimated_params;
    //                 STARTING VALUES &       PRIORS
    theta_H,           0.5,1E-5,0.999,         BETA_PDF,0.5,0.15;
    theta_F,           0.5,1E-5,0.999,         BETA_PDF,0.5,0.15;
    theta_Hstar,       0.5,1E-5,0.999,         BETA_PDF,0.75,0.15;
    theta_Fstar,       0.5,1E-5,0.999,         BETA_PDF,0.75,0.15;
    tau,               2.7,1E-5,10,            GAMMA_PDF,2,0.5;
    h,                 0.3,1E-5,0.999,         BETA_PDF,0.3,0.1;
    alp,               0.1,1E-5,0.999,         BETA_PDF,0.12,0.05;
    eta,               1,1E-5,10,              GAMMA_PDF,1,0.5;
    psi1,              1.5,0.95,10,            GAMMA_PDF,1.5,0.25;
    psi2,              0.5,1E-5,10,            GAMMA_PDF,0.5,0.25;
    psi3,              0.1,1E-5,10,            GAMMA_PDF,0.1,0.05;
   
    psi1star,          1.1,0.95,10,            GAMMA_PDF,1.5,0.25;
    psi2star,          0.5,1E-5,10,            GAMMA_PDF,0.5,0.25;
    psi3star,          0.1,1E-5,10,            GAMMA_PDF,0.1,0.05;
    rhoA,              0.86,1E-5,1,            BETA_PDF,0.8,0.1;
    rhoR,              0.81,1E-5,1,            BETA_PDF,0.5,0.2;
    rhoG,              0.96,1E-5,1,            BETA_PDF,0.8,0.1;
      
    rhoAstar,          0.97,1E-5,1,            BETA_PDF,0.6,0.2;
    rhoRstar,          0.82,1E-5,1,            BETA_PDF,0.5,0.2;
    rhoGstar,          0.81,1E-5,1,            BETA_PDF,0.8,0.1;
    rhoZ,              0.54,1E-5,1,            BETA_PDF,0.66,0.15;
    rr_steady,         0.5,0,10,               GAMMA_PDF,0.5,0.5;
    gam_steady,        0.5,-5,5,               NORMAL_PDF,0.4,0.2;
    pi_steady,         3.33,0,10,              GAMMA_PDF,7,2;
//  pi_steadystar,     4.2,0,10,               GAMMA_PDF,8.8,2;
    stderr EPS_A,      2,1E-8,5,               INV_GAMMA_PDF,1.253314,0.655136;  //fs_dyn(1,4)
    stderr EPS_G,      0.6,1E-8,5,             INV_GAMMA_PDF,1.253314,0.655136;  //fs_dyn(1,4)
    stderr EPS_R,      0.15,1E-8,5,            INV_GAMMA_PDF,0.501326,0.262055;  //fs_dyn(0.4,4)
    stderr EPS_Astar,  0.5,1E-8,5,             INV_GAMMA_PDF,0.501326,0.262055;  //fs_dyn(0.4,4)
    stderr EPS_Gstar,  0.7,1E-8,5,             INV_GAMMA_PDF,1.253314,0.655136;  //fs_dyn(1,4)
    stderr EPS_Rstar,  0.1,1E-8,5,             INV_GAMMA_PDF,0.250663,0.131027;  //fs_dyn(0.2,4)
    stderr EPS_Z,      0.34,1E-8,5,            INV_GAMMA_PDF,0.626657,0.327568;  //fs_dyn(0.5,4)
    stderr EPS_Edel,   4,1E-8,10,              INV_GAMMA_PDF,4.386599,2.292977;  //fs_dyn(3.5,4)
end;

varobs Ygr_US INF_US R_US Ygr_F INF_F R_F E_del;
estimation(datafile=us_euro_data_demeaned,mode_compute=4,mh_replic=20000,mh_jscale=0.15,presample=4);
// mode_compute=3
// load_mh_file
// nodiagnostic
// mode_file=MODEL1_mode
运行过程中出现如下错误提示:
Error using chol
Matrix must be positive definite.

Error in metropolis_hastings_initialization (line 52)
d = chol(vv);

Error in random_walk_metropolis_hastings (line 58)
[ ix2, ilogpo2, ModelName, MhDirectoryName, fblck, fline, npar, nblck, nruns, NewFile, MAX_nruns, d ] =
...

Error in dynare_estimation_1 (line 871)
                feval(options_.posterior_sampling_method,'DsgeLikelihood',options_.proposal_distribution,xparam1,invhess,bounds,gend,data,...
               
Error in dynare_estimation (line 62)
    dynare_estimation_1(var_list,varargin{:});

Error in us_euro_m1_demeaned (line 272)
dynare_estimation(var_list_);

Error in dynare (line 120)
evalin('base',fname) ;

这是什么原因啊,还请前辈们指点。
其中的数据文件程序如下:
% import observations from
% EVIEWS ASCII export
% Range: 1983:I to 2002:IV = 80 observations
% Greenspan starts 1987:III, observation 19
dataset = importdata('C:\dynare\us_euro.txt',',');
% demean the series
dataset = dataset - repmat(mean(dataset,1),size(dataset,1),1);
Ygr_US = dataset(:,1);
INF_US = dataset(:,2);
R_US   = dataset(:,3);
Ygr_F  = dataset(:,4);
INF_F  = dataset(:,5);
R_F    = dataset(:,6);
E_del  = dataset(:,7);
us_euro.txt文件在附件中。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:DSGE 运行问题 Lab May observations 文章 程序

已有 1 人评分学术水平 热心指数 信用等级 收起 理由
epoh + 1 + 1 + 1 鼓励积极发帖讨论

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

本帖被以下文库推荐

沙发
epoh 发表于 2012-11-24 22:00:19
addpath c:\dynare\4.3.1\matlab
cd c:\dynare\Schorfheide
dynare us_euro_m1

    Schorfheide.rar (6.05 KB)

藤椅
2009200051 发表于 2012-11-25 01:39:14
epoh 发表于 2012-11-24 22:00
addpath c:\dynare\4.3.1\matlab
cd c:\dynare\Schorfheide
dynare us_euro_m1
没想到能这么快得到epoh老师的指点,太感谢您了。您对我的修改是删除了数据文件中的demean命令,因为我的数据已经是做过demean处理的了,所以才会造成运行时出现负值的情况。想问老师的是pi_steady在model中都没用到,为什么还要有,起什么作用的啊?

板凳
epoh 发表于 2012-11-25 09:19:52
2009200051 发表于 2012-11-25 01:39
没想到能这么快得到epoh老师的指点,太感谢您了。您对我的修改是删除了数据文件中的demean命令,因为我的 ...
哈哈!不好意思
我不是要删除demean命令,而是我忘记你要demean,
现在把data demean,重新上传.
      us_euro_m1_demeaned.rar (7.63 KB)
底下结果,我为节省时间是用mh_replic=2000
仅供你参考:

ESTIMATION RESULTS
Log data density is -865.680210.
parameters
              prior mean post. mean   conf. interval  prior     pstdev

theta_H          0.500     0.6529     0.5601   0.7482  beta      0.1500
theta_F          0.500     0.6353     0.4440   0.8178  beta      0.1500
theta_Hstar      0.750     0.9291     0.8586   0.9973  beta      0.1500
theta_Fstar      0.750     0.6813     0.6369   0.7479  beta      0.1500
tau              2.000     4.2369     3.6228   5.0792  gamma     0.5000
h                0.300     0.3557     0.2086   0.5092  beta      0.1000
alp              0.120     0.1491     0.0568   0.1987  beta      0.0500
eta              1.000     0.6320     0.1292   1.1958  gamma     0.5000
psi1             1.500     1.1689     1.0474   1.2943  gamma     0.2500
psi2             0.500     0.7026     0.4481   0.9055  gamma     0.2500
psi3             0.100     0.0335     0.0171   0.0522  gamma     0.0500
psi1star         1.500     1.2943     1.0453   1.6561  gamma     0.2500
psi2star         0.500     0.7478     0.5383   1.0015  gamma     0.2500
psi3star         0.100     0.0188     0.0069   0.0330  gamma     0.0500
rhoA             0.800     0.8650     0.8102   0.9210  beta      0.1000
rhoR             0.500     0.7679     0.7296   0.8094  beta      0.2000
rhoG             0.800     0.9130     0.8801   0.9496  beta      0.1000
rhoAstar         0.600     0.9074     0.8653   0.9481  beta      0.2000
rhoRstar         0.500     0.7834     0.7533   0.8139  beta      0.2000
rhoGstar         0.800     0.9090     0.8630   0.9532  beta      0.1000
rhoZ             0.660     0.6165     0.5319   0.7428  beta      0.1500
rr_steady        0.500     0.3080     0.0002   0.6752  gamma     0.5000
gam_steady       0.400     0.3956     0.0432   0.6940  norm      0.2000
pi_steady        7.000     6.1669     3.3377   9.2654  gamma     2.0000

standard deviation of shocks
              prior mean post. mean   conf. interval  prior     pstdev

EPS_A            1.253     1.3823     0.9181   2.0001  invg      0.6551
EPS_G            1.253     0.5666     0.4610   0.6369  invg      0.6551
EPS_R            0.501     0.1861     0.1566   0.2114  invg      0.2621
EPS_Astar        0.501     1.5778     1.1234   1.8956  invg      0.2621
EPS_Gstar        1.253     0.5332     0.4578   0.6065  invg      0.6551
EPS_Rstar        0.251     0.1807     0.1526   0.2077  invg      0.1310
EPS_Z            0.627     0.3090     0.2461   0.3861  invg      0.3276
EPS_Edel         4.387     4.4683     4.1030   4.9821  invg      2.2930

报纸
2009200051 发表于 2012-11-25 16:24:01
epoh 发表于 2012-11-25 09:19
哈哈!不好意思
我不是要删除demean命令,而是我忘记你要demean,
现在把data demean,重新上传.
十分感谢epoh老师抽出时间为我答惑。您是把mode_compute=4改成mode_compute=6是吗?我知道前者是用 Chris Sims’s csminwel,后者是用Monte-Carlo based optimization routine的方法。我不是很清楚前者是什么东西。不知道老师可否解释下或者推荐有关的资料我看一下。因为这个程序是文章自带的,原程序用的是 Chris Sims’s csminwel,但出现错误,不知道老师可否解释一下。

地板
epoh 发表于 2012-11-25 20:57:15
In some situations the posterior mode (that will be used to initialize the Metropolis Hastings (MH)
and to define the jumping distribution)
is hard to obtain with standard (newton like) optimization routines.
The user, by specifying mode_compute = 6, can trigger a Monte-Carlo based optimization routine
    http://www.dynare.org/DynareWiki/MonteCarloOptimization
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
2009200051 + 1 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

7
spealingman 发表于 2013-11-7 14:28:13
老师,你好。
我在电脑跑了你的文件Schorfheide,就是没有demean的情况下。还是得到报错信息。不知道有没有解决方法?
高手们能解答一下吗?
??? Error using ==> chol
Matrix must be positive definite.

Error in ==> metropolis_hastings_initialization at 68
d = chol(vv);

Error in ==> random_walk_metropolis_hastings at 69
[ ix2, ilogpo2, ModelName, MhDirectoryName, fblck, fline, npar, nblck, nruns, NewFile, MAX_nruns, d ] = ...

Error in ==> dynare_estimation_1 at 909
            feval(options_.posterior_sampling_method,objective_function,options_.proposal_distribution,xparam1,invhess,bounds,dataset_,options_,M_,estim_params_,bayestopt_,oo_);
            
Error in ==> dynare_estimation at 70
    dynare_estimation_1(var_list,dname);

Error in ==> us_euro_m1 at 277
dynare_estimation(var_list_);

Error in ==> dynare at 120
evalin('base',fname) ;

8
spealingman 发表于 2013-11-8 17:02:17
spealingman 发表于 2013-11-7 14:28
老师,你好。
我在电脑跑了你的文件Schorfheide,就是没有demean的情况下。还是得到报错信息。不知道有没有 ...
有高手愿意指点一下吗?谢谢

9
Nicolle 学生认证  发表于 2013-11-8 23:08:49
提示: 作者被禁止或删除 内容自动屏蔽

10
spealingman 发表于 2013-11-8 23:35:25
??any help?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-10 21:16