全部版块 我的主页
论坛 经济学论坛 三区 宏观经济学
7647 5
2016-04-03

小白论文要用dsge模型,第一次用,纯新手。dynare跑程序显示error('DYNARE: preprocessing failed'),不知道哪句语法有问题,麻烦大家看看是什么问题?小女子跪求各位大神


addpath c:\dynare\4.3.0\matlab

var y_i y p_i p c k i l  w r z mc;

varexo e_z e_c;

parameters beta d kappa delta ksi alpha epsilon rho tau sigma eta;

alpha = 0.476;

beta = 0.99;

delta = 1.75;

ksi = 6;

kappa = 2.359;

d = 0.025;

epsilon = 10;

sigma = 0.5237;

eta = 0.0127;

model;

(delta/c)  =  lambda;

(1-delta)/(1-l) = lambda*w;

y_i = (p_i/p)^(-ksi)*y;

y_i = z*(k^alpaha)*(l^(1-alpha));

psi*c/(1-l)  =  w;

c+i =  y;

l = ((1-alpha)*y_i/w)*mc;

k = (alpha*y_i/w)*mc;

w = y_i*((epsilon-1)/epsilon)*(1-alpha)/1;

r = y_i*((epsilon-1)/epsilon)*alpha/k(-1);

i = k-(1-d)*k(-1);

log(z) = rho*log(z(-1))+e_z;

log(c) = tau*log(c(-1))+e_c;

end;

initval;

y_i =0

y = 0;

p_i = 0;

p = 0;

I =0;

k = 0;

c = 0;

l = 0;

w = 0;

r = 0;

z = 0;

mc= 0;

e_z = 0;

e_c = 0

end;

steady;

check;

shocks;

var e_z = sigma^2;

var e_c = eta^2;

end;

stoch_simul;


二维码

扫码加我 拉你入群

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

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

全部回复
2016-4-29 23:54:15
感觉楼主貌似对模型并没有吃透啊,pi应该是中间产品的最优价格把,如果是灵活价格pi应该等于p才对啊,如果是calvo,楼主代码里面也完全没有辅助变量。
还是先把理论吃透,知道什么情况下有解,如非线性下也存在解的特殊形式,或只有线性近似后才有解的情形等等。
二维码

扫码加我 拉你入群

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

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

2018-3-16 21:06:11
好像初始值设置的也有问题吧,初始值最好设为稳态值
二维码

扫码加我 拉你入群

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

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

2020-2-18 11:44:16
请问楼主解决了么?
二维码

扫码加我 拉你入群

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

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

2020-2-22 21:36:21
陈玉路 发表于 2020-2-18 11:44
请问楼主解决了么?
最后没有解决,后来就放弃没用dsge了。
二维码

扫码加我 拉你入群

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

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

2024-6-11 16:21:09
你遇到的错误提示 'DYNARE: preprocessing failed' 通常意味着Dynare在预处理你的模型时遇到了问题。这可能是由于语法错误、方程定义不清晰或逻辑错误等原因引起的。

根据你提供的代码,我注意到了几个可能的问题点:

1. **变量和参数声明**:
   - `var` 和 `parameters` 命令应该列明所有的内生变量和参数。
   - 你的 `varexo` 行应该是 `varexo e_z, e_c;`

2. **模型方程中的一些拼写错误或逻辑问题**:
   - 第一行的 `(delta/c) = lambda;` 中,lambda 没有在之前声明为内生变量或参数。
   - 第二行中的 `y_i = (p_i/p)^(-ksi)*y;` 可能会导致循环定义。
   - 第三行 `y_i = z*(k^alpaha)*(l^(1-alpha));` 中,'alpaha' 应该是 'alpha'。

3. **方程不完整**:
   - 你列出了很多内生变量和参数,但是没有使用所有这些变量来定义完整的模型。例如 lambda 和 z 没有明确的方程定义。
   - 在 `model;` 块中需要包含所有的状态-转移和冲击响应方程。

4. **语法错误**:
   - 你可能忘记了一些分号或括号,这会导致 Dynare 解析器无法正确理解你的模型结构。

为了解决这个问题,你需要检查并修正上述提到的每一点。同时,请确保每个内生变量都有明确的方程定义,并且所有的参数和冲击在 `parameters` 和 `varexo` 命令中都已声明。

如果你可以提供完整的代码或者更详细的问题描述(例如具体的错误信息),我可能能够给出更具体、更有针对性的帮助。希望这能帮到你!

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群