1// See fs2000.mod in the examples/ directory for details on the model 2 3var m P c e W R k d n l gy_obs gp_obs y dA; 4varexo e_a e_m; 5 6parameters alp bet gam mst rho psi del; 7 8alp = 0.33; 9bet = 0.99; 10gam = 0.003; 11mst = 1.011; 12rho = 0.7; 13psi = 0.787; 14del = 0.02; 15 16model; 17dA = exp(gam+e_a); 18log(m) = (1-rho)*log(mst) + rho*log(m(-1))+e_m; 19-P/(c(+1)*P(+1)*m)+bet*P(+1)*(alp*exp(-alp*(gam+log(e(+1))))*k^(alp-1)*n(+1)^(1-alp)+(1-del)*exp(-(gam+log(e(+1)))))/(c(+2)*P(+2)*m(+1))=0; 20W = l/n; 21-(psi/(1-psi))*(c*P/(1-n))+l/n = 0; 22R = P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(-alp)/W; 231/(c*P)-bet*P*(1-alp)*exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)/(m*l*c(+1)*P(+1)) = 0; 24c+k = exp(-alp*(gam+e_a))*k(-1)^alp*n^(1-alp)+(1-del)*exp(-(gam+e_a))*k(-1); 25P*c = m; 26m-1+d = l; 27e = exp(e_a); 28y = k(-1)^alp*n^(1-alp)*exp(-alp*(gam+e_a)); 29gy_obs = dA*y/y(-1); 30gp_obs = (P/P(-1))*m(-1)/dA; 31end; 32 33steady_state_model; 34 dA = exp(gam); 35 gst = 1/dA; 36 m = mst; 37 khst = ( (1-gst*bet*(1-del)) / (alp*gst^alp*bet) )^(1/(alp-1)); 38 xist = ( ((khst*gst)^alp - (1-gst*(1-del))*khst)/mst )^(-1); 39 nust = psi*mst^2/( (1-alp)*(1-psi)*bet*gst^alp*khst^alp ); 40 n = xist/(nust+xist); 41 P = xist + nust; 42 k = khst*n; 43 44 l = psi*mst*n/( (1-psi)*(1-n) ); 45 c = mst/P; 46 d = l - mst + 1; 47 y = k^alp*n^(1-alp)*gst^alp; 48 R = mst/bet; 49 W = l/n; 50 ist = y-c; 51 q = 1 - d; 52 53 e = 1; 54 55 gp_obs = m/dA; 56 gy_obs = dA; 57end; 58 59shocks; 60var e_a; stderr 0.014; 61var e_m; stderr 0.005; 62end; 63 64steady; 65 66check; 67 68stoch_simul(irf=0); 69 70conditional_forecast_paths; 71var gy_obs; 72periods 1 2 3:5; 73values 0.01 -0.02 0; 74var gp_obs; 75periods 1:5; 76values 0.05; 77end; 78 79conditional_forecast(parameter_set=calibration, controlled_varexo=(e_a,e_m)); 80 81plot_conditional_forecast(periods=10) gy_obs gp_obs; 82 83