楼主: Joko_妹妹
1331 7

[DSGE讨论专题] 构建的NK-BGG的DSGE模型代码报错求助(参考马家进博士论文) [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

小学生

64%

还不是VIP/贵宾

-

威望
0
论坛币
110 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
166 点
帖子
3
精华
0
在线时间
13 小时
注册时间
2022-4-26
最后登录
2023-10-24

楼主
Joko_妹妹 学生认证  发表于 2023-3-16 13:30:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
是稳态方程求解有问题吗?报错原因也看不懂,求大佬帮忙看看,小白自学DSGE表示很痛苦,尝试用对数线性化求解但不知道金融加速器那块怎么搞,以及稳态值也不会求解。

源代码:

var
N W C Rd pi K I Q Yi mc A r pistar f1 f2 d Y Re
V Z Leverage Omegabar Sigma
ln_N ln_W ln_C ln_Rd ln_pi ln_K ln_I ln_Q ln_Yi ln_mc ln_A ln_r ln_pistar ln_f1 ln_f2 ln_d ln_Y ln_Re
ln_V ln_Z ln_Leverage ln_Omegabar ln_Sigma;

varexo
e_a e_sigma;

parameters
beta eta chi delta fai alpha theta epsilon
F_ss Sigma_ss mu gamma We
rho_a rho_sigma sigma_a sigma_sigma;

beta = 0.9937;
eta = 1;
chi = 1;
delta = 0.025;
fai = 3.5;
alpha = 0.5;
theta = 0.75;
epsilon = 10;
F_ss = 0.01;
Sigma_ss = 0.28;
mu = 0.2149;
gamma = 0.97;
We = 0.0783;
rho_a = 0.9;
rho_sigma = 0.9;
sigma_a = 1; % 1 percent (0.01)
sigma_sigma = 1; % 1 percent (0.01)

model;

# F = normcdf((log(Omegabar) + Sigma(-1)^2/2) / Sigma(-1));
# G = normcdf((log(Omegabar) + Sigma(-1)^2/2) / Sigma(-1) - Sigma(-1));
# GAMMA = Omegabar*(1-F) + G;

# Fp1 = normcdf((log(Omegabar(+1)) + Sigma^2/2) / Sigma);
# Gp1 = normcdf((log(Omegabar(+1)) + Sigma^2/2) / Sigma - Sigma);
# GAMMAp1 = Omegabar(+1)*(1-Fp1) + Gp1;
# dFp1 = 1/(Omegabar(+1)*Sigma)*normpdf((log(Omegabar(+1)) + Sigma^2/2) / Sigma);

chi*N^eta = 1/C*W;
1/C = beta*1/C(+1)*Rd*1/pi(+1);

K(+1) = (1-fai/2*(I/I(-1)-1)^2)*I + (1-delta)*K;
1 = Q*(1-fai/2*(I/I(-1)-1)^2-fai*(I/I(-1)-1)*I/I(-1))
    + beta*C/C(+1)*Q(+1)*fai*(I(+1)/I-1)*(I(+1)/I)^2;

Yi = A*K^alpha*N^(1-alpha);
W = mc*(1-alpha)*A*K^alpha*N^(-alpha);
r = mc*alpha*K^(alpha-1)*N^(1-alpha);
mc = 1/A*(1/alpha)^alpha*(1/(1-alpha))^(1-alpha)*r^alpha*W^(1-alpha);

pistar = epsilon/(epsilon-1)*pi*f1/f2;
f1 = mc*Y + beta*theta*C/C(+1)*pi(+1)^epsilon*f1(+1);
f2 = Y + beta*theta*C/C(+1)*pi(+1)^(epsilon-1)*f2(+1);
(1-theta)*pistar^(1-epsilon) + theta*pi^(epsilon-1) = 1;
d = (1-theta)*pistar^(-epsilon) + theta*pi^epsilon*d(-1);
Y*d = Yi;

Re = (r+Q*(1-delta))/Q(-1);
Leverage = Q*K(+1)/V;

Omegabar*Re*Leverage(-1) = Z(-1)*(Leverage(-1)-1);
(GAMMAp1-mu*Gp1)*Re(+1)*Leverage = Rd*(Leverage-1);
(1-Fp1)/(1-GAMMAp1) = Re(+1)/Rd*(1-Fp1-mu*Omegabar(+1)*dFp1)/(1-Re(+1)/Rd*(GAMMAp1-mu*Gp1));
V = gamma*(1-GAMMA)*Re*Q(-1)*K + We;

Y = C + I;
log(A) = rho_a*log(A(-1)) + e_a;
log(Sigma) = (1-rho_sigma)*log(Sigma_ss) + rho_sigma*log(Sigma(-1)) + e_sigma;

ln_N = log(N);
ln_W = log(W);
ln_C = log(C);
ln_Rd = log(Rd);
ln_pi =log(pi);
ln_K = log(K);
ln_I = log(I);
ln_Q = log(Q);
ln_Yi = log(Yi);
ln_mc = log(mc);
ln_A = log(A);
ln_r = log(r);
ln_pistar = log(pistar);
ln_f1 = log(f1);
ln_f2 = log(f2);
ln_d = log(d);
ln_Y = log(Y);
ln_Re = log(Re);
ln_V = log(V);
ln_Z = log(Z);
ln_Leverage = log(Leverage);
ln_Omegabar = log(Omegabar);
ln_Sigma = log(Sigma);

end;

shocks;
var e_a; stderr sigma_a;
var e_sigma; stderr sigma_sigma;
end;

steady_state_model;

Sigma = Sigma_ss;

Omegabar = exp(norminv(F_ss)*Sigma-Sigma^2/2);
G_ss = normcdf((log(Omegabar) + Sigma^2/2) / Sigma - Sigma);
GAMMA_ss = Omegabar*(1-F_ss) + G_ss;
dF_ss = 1/(Omegabar*Sigma)*normpdf((log(Omegabar) + Sigma^2/2) / Sigma);

A = 1;
Q = 1;
pi = 1;
pistar = 1;
d = 1;

Rd = 1/beta;
Re = 1/(1-mu*(G_ss+Omegabar*dF_ss*(1-GAMMA_ss)/(1-F_ss)))*Rd;
r = Re-(1-delta);
mc = (epsilon-1)/epsilon;
W = (1-alpha)*(r^alpha/(alpha^alpha)*mc)^(1/(alpha-1));
N = (1/chi*W/((alpha/(1-alpha)*W/r)^alpha-delta*(alpha/(1-alpha)*W/r)))^(1/(1+eta));
K = alpha/(1-alpha)*W/r*N;
I = delta*K;
Yi = K^alpha*N^(1-alpha);
Y = Yi;
C = Y-I;
f1 = mc*Y/(1-beta*theta);
f2 = Y/(1-beta*theta);
Leverage = 1/(1-Re/Rd*(GAMMA_ss-mu*G_ss));
Z = Omegabar*Re*Leverage/(Leverage-1);
V = gamma*(1-GAMMA_ss)*Re*K + We;

ln_N = log(N);
ln_W = log(W);
ln_C = log(C);
ln_Rd = log(Rd);
ln_pi =log(pi);
ln_K = log(K);
ln_I = log(I);
ln_Q = log(Q);
ln_Yi = log(Yi);
ln_mc = log(mc);
ln_A = log(A);
ln_r = log(r);
ln_pistar = log(pistar);
ln_f1 = log(f1);
ln_f2 = log(f2);
ln_d = log(d);
ln_Y = log(Y);
ln_Re = log(Re);
ln_V = log(V);
ln_Z = log(Z);
ln_Leverage = log(Leverage);
ln_Omegabar = log(Omegabar);
ln_Sigma = log(Sigma);

end;

% steady;
% check;
% model_diagnostics;

% Timing Convention:
% IRFs of ln_K and ln_Re from 2 to 21, others from 1 to 20
stoch_simul(order=1,irf=21)
ln_Y ln_C ln_I ln_K ln_Re ln_Rd ln_Omegabar ln_Leverage ln_A ln_Sigma;

显示报错:
错误使用 print_info (line 32)
The steadystate file did not compute the steady state
出错 stoch_simul (line 120)
    print_info(info, options_.noprint, options_);
出错 nk_bgg1.driver (line 480)
[info, oo_, options_, M_] = stoch_simul(M_, options_, oo_, var_list_);
出错 dynare (line 281)
    evalin('base',[fname '.driver']);

二维码

扫码加我 拉你入群

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

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

关键词:dsge模型 博士论文 DSGE BGG diagnostics DSGE;BGG;金融加速器;Dynare;

已有 1 人评分经验 论坛币 收起 理由
linmengmiki + 100 + 100 奖励积极上传好的资料

总评分: 经验 + 100  论坛币 + 100   查看全部评分

沙发
百里一横 发表于 2023-3-18 16:09:35 来自手机
稳态计算错误

藤椅
Joko_妹妹 学生认证  发表于 2023-3-20 15:42:15
百里一横 发表于 2023-3-18 16:09
稳态计算错误
那请问大佬具体是哪里的稳态求错?感谢!

板凳
2453095347 学生认证  发表于 2023-5-13 00:39:17 来自手机
我最近也看了这篇博士论文,一样的问题,总是报错,请问楼主你解决了吗?

报纸
百里一横 发表于 2023-5-13 07:55:34 来自手机
Joko_妹妹 发表于 2023-3-20 15:42
那请问大佬具体是哪里的稳态求错?感谢!
这个可以私聊

地板
2453095347 学生认证  发表于 2023-5-13 18:52:38 来自手机
百里一横 发表于 2023-5-13 07:55
这个可以私聊
可以加微信号咨询你吗?我的微信号zhouhgrade。

7
2453095347 学生认证  发表于 2023-5-13 19:05:05 来自手机
百里一横 发表于 2023-5-13 07:55
这个可以私聊
我怎么联系你呢?扣扣还是微信呢?

8
baofuba 发表于 2023-9-11 15:38:17
找几个相互学习DSGE模型的小伙伴,共同探讨共同学习,欢迎加我

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

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2026-1-6 12:10