MatlabからDynareを実行する


2

私はDynare ++に慣れていません。その答えを見つけることができないような素早い質問です。

これら2つのコマンドの違いは何ですか?また出力が異なるのはなぜですか?

!dynare++ --per 20 --sim 3 file_name.mod

dynare file_name.mod

最初のコマンドでは初期値に基づいて定常状態の値を見つけることができず、2番目のコマンドではそれを行うことができます。どうして?

これは最初のコマンドでシミュレートしたい基本的なRBCモデルのmodファイルです。私は2回目でそうすることができますが、1回目ではそうではありません。

var c, l, k, w, r, y, i, z;
varexo eps;

parameters beta, delta, alpha, a, rho, rbar, wbar;

beta=.99;
delta=.025;
alpha=.33;
a=1;
rho=.9;
rbar=1/beta+delta-1; 
wbar=(1-alpha)*(alpha/rbar)^(alpha/(1-alpha)); 


model;
//Inter-Euler
1/c=beta*(1/c(+1))*(1+r(+1)-delta);
//Intra-Euler
a/(1-l)=w/c;
//H.H. Budget Constraint
k=w(-1)*l(-1)+(1-r(-1)-delta)*k(-1)-c(-1);
//Firm FOC Capital
r=exp(z)*alpha*exp(z)*(l/k)^(1-alpha);
//Firm FOC Labor
w=exp(z)*(1-alpha)*exp(z)*(k/l)^(alpha);
// Production Function
y=exp(z)*(k^alpha)*(l^(1-alpha));
i=y-c;
z=rho*z(-1)+eps;
end;

initval;
k=((wbar/a)/(wbar*(1+1/a)-(r+delta)*(alpha/rbar)^(1/(1-alpha))))*(alpha/rbar)^(1/(1-alpha));  
c=wbar*(1-((wbar/a)/(wbar*(1+1/a)-(r+delta)*(alpha/rbar)^(1/(1-alpha)))))/a;  
l=(wbar/a)/(wbar*(1+1/a)-(r+delta)*(alpha/rbar)^(1/(1-alpha))); 
w=wbar; 
r=rbar; 
y=(k^alpha)*(l^(1-alpha));
i=(k^alpha)*(l^(1-alpha))-(wbar*(1-((wbar/a)/(wbar*(1+1/a)-(r+delta)*(alpha/rbar)^(1/(1-alpha)))))/a);
z=0;
end;

shocks;
var eps;
stderr .02;
end;

こんにちは。 modファイルのコードを共有してもいいですか。問題が何であるかを判断するのに役立ちます。あなたはMWEを作り出すことを考えるかもしれません(それでも問題の問題を作り出している間できるだけ短い「最小実用例」)。
jmbejara

1
私は自分の投稿をmodファイルで更新しました
jessica
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.