var c cT cN nT nN lambda p wT wN kT kN gT gN rN rT rS r aT aN yT yN iT iN tb bS y s v mu; varexo e_gT e_gN e_aT e_aN e_s e_v e_mu; parameters zeta sigma the_T omega gamma the_N phi_T beta gT_bar phi_N gN_bar rS_s alp_T alp_N delta psi rho_aT rho_aN rho_gT rho_gN rho_s rho_v rho_mu kTs_nTs kNs_nNs wNs_ps cs_cTs cNs_cTs tbs_ys ss_ys s_yNs bS_s; zeta=0.59; sigma=-0.5; the_T=0.5; omega=1.99; gamma=2; the_N=0.5; phi_T=9.65; gT_bar=0.0183; phi_N=4; gN_bar=0.012; rS_s=0.01; alp_T=0.315; alp_N=0.245; delta=0.0065; psi=0.000005; rho_aT=0.97; rho_aN=0.75; rho_gT=0.15; rho_gN=0.25; rho_s=0.86; rho_v=0.93; rho_mu=0.04; ss_ys=0.184; tbs_ys=-0.015; cs_cTs=0.59; beta=1/((1+rS_s)*gT_bar^(-gamma)); rs=gN_bar/(beta*gT_bar^(1-gamma))-1; rTs=1/(beta*gT_bar^(-gamma))-(1-delta); rNs=gN_bar/(beta*gT_bar^(1-gamma))-(1-delta); kTs_nTs=(rTs/alp_T)^(1/(alp_T-1))*gT_bar; kNs_nNs=(rNs/alp_N)^(1/(alp_N-1))*gN_bar; wTs=(1-alp_T)*gT_bar^(1-alp_T)*kTs_nTs^alp_T; wNs_ps=(1-alp_N)*gN_bar^(1-alp_N)*kNs_nNs^alp_N; nTs=((wTs/the_T)*(1/(zeta*cs_cTs))^(sigma-1))^(1/(omega-1)); cNs_cTs=((cs_cTs-zeta^(1-sigma))/(1-zeta)^(1-sigma))^(1/sigma); ps=(zeta/(1-zeta)*cs_cTs)^(sigma-1); wNs=wNs_ps*ps; kTs=kTs_nTs*nTs; yTs=kTs^alp_T*(nTs*gT_bar)^(1-alp_T); nNs=((wNs/wTs)*(the_N/the_T))^(1/(omega))*nTs; kNs=kNs_nNs*nNs; yNs=kNs^alp_N*(nNs*gN_bar)^(1-alp_N); ys=yTs+ps*yNs; cNs=yNs*(1-(gN_bar-(1-delta))*(alp_N/rNs))-ss_ys*ys; cTs=(ps*cNs*(1/cs_cTs))/(1-1/cs_cTs); cs=cTs+ps*cNs; iTs=kTs*(gT_bar-(1-delta)); iNs=kNs*(gN_bar-(1-delta)); tbs=tbs_ys*ys; bS_s=tbs/(1-gT_bar/(1+rS_s)); lambda_bar=(cs-((the_T/omega)*nTs^omega+(the_N/omega)*nNs^omega))^(-gamma)*(cTs/(zeta*cs))^(sigma-1); s_yNs=ss_ys/(ps*yNs); model; c=(zeta^(1-sigma)*cT^sigma+(1-zeta)^(1-sigma)*(cN)^sigma)^(1/sigma); (c-((the_T/omega)*nT^omega+(the_N/omega)*nN^omega))^(-gamma)*(cT/(zeta*c))^(sigma-1)=lambda; (c-((the_T/omega)*nT^omega+(the_N/omega)*nN^omega))^(-gamma)*(cN/(1-zeta)*c)^(sigma-1)=p*lambda; (c-((the_T/omega)*nT^omega+(the_N/omega)*nN^omega))^(-gamma)*the_T*nT^(omega-1)=lambda*wT; (c-((the_T/omega)*nT^omega+(the_N/omega)*nN^omega))^(-gamma)*the_N*nN^(omega-1)=lambda*wN; lambda*v*(1+phi_T*(kT*gT/kT(-1)-gT_bar))=beta*gT^(-gamma)*(lambda(+1)*v(+1)*(rT(+1)+(1-delta)+phi_T*(kT(+1)*gT(+1)/kT-gT_bar)*(kT(+1)/kT)-phi_T/2*(kT(+1)*gT(+1)/kT-gT_bar)^2)); lambda*v*(1+phi_N*(kN*gN/kN(-1)-gN_bar))=beta*(gT^(1-gamma)/gN)*(lambda(+1)*v(+1)*p(+1)*(rN+(1-delta)+phi_N*(kN(+1)*gN(+1)/kN-gN_bar)*(kN(+1)/kN)-phi_N/2*(kN(+1)*gN(+1)/kN-gN_bar)^2)); lambda*v=beta*(1+rS)*gT^(-gamma)*lambda(+1)*v(+1); lambda*v*p=beta*(1+r)*gT^(1-gamma)/gN*p(+1)*lambda(+1)*v(+1); rS=rS_s+psi*(exp(bS(+1)-(bS_s))-1)+(exp(mu-1)-1); rT=alp_T*aT*kT(-1)^(alp_T-1)*(nT*gT)^(1-alp_T); wT=(1-alp_T)*aT*kT(-1)^alp_T*nT^(-alp_T)*gT^(1-alp_T); rN=alp_N*aN*kN(-1)^(alp_N-1)*(nN*gN)^(1-alp_N); wN=p*(1-alp_N)*aN*kN(-1)^alp_N*nN^(-alp_N)*gN^(1-alp_N); yT=cT+iT+phi_T/2*(kT*gT/kT(-1)-gT_bar)^2*(kT(-1))+tb; yN*(1-s_yNs*s)=cN+iN+phi_N/2*(kN*gT/kN(-1)-gN_bar)^2*kN(-1); iT=kT*gT-(1-delta)*kT(-1); iN=kN*gN-(1-delta)*kN(-1); yT=aT*kT(-1)^alp_T*gT^(1-alp_T)*nT^(1-alp_T); yN=aN*kN(-1)^alp_N*gN^(1-alp_N)*nN^(1-alp_N); tb=bS-bS(+1)*gT/(1+rS); y=yT+p*yN; ln(aT)=rho_aT*ln(aT(-1))+e_aT; ln(aN)=rho_aN*ln(aN(-1))+e_aN; ln(gT/gT_bar)=rho_gT*ln(gT(-1)/gT_bar)+e_gT; ln(gN/gN_bar)=rho_gN*ln(gN(-1)/gN_bar)+e_gN; ln(v)=rho_v*ln(v(-1))+e_v; ln(s)=rho_s*ln(s(-1))+e_s; ln(mu)=rho_mu*ln(mu(-1))+e_mu; end; initval; c=cs; cT=cTs; cN=cNs; nT=nTs; nN=nNs; wT=wTs; wN=wNs; kT=kTs; kN=kNs; y=ys; yT=yTs; yN=yNs; iT=iTs; iN=iNs; r=rs; rT=rTs; rN=rNs; rS=rS_s; p=ps; tb=tbs; bS=bS_s; gT=gT_bar; gN=gN_bar; aT=0; aN=0; s=0; v=0; mu=0; lambda=log(lambda_bar); end; shocks; var e_gT=0.014; var e_gN=0.014; var e_aT=0.013; var e_aN=0.013; var e_s=0.036; var e_v=0.036; var e_mu=0.01; end; stoch_simul;