%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%毕业论文，dynare文件
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%模型中的变量，内生42，外国3，可观察14，外生冲击10，辅助变量若干，外生变量14，
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%模型中的内生变量，42个

var

%核心变量,16个
s , rk , w , rd , nfa , k , kbar , u , q , h  ,  y, c,  i , psiz ,   nu , omegabar,

%定价变量，12个
fd ,pbar , fx,  pxbar ,fw , wbar ,
fmc, fmi,  fmx, pmcbar ,  pmibar ,pmxbar ,

%通胀及相对价格，14个
pi, pic, pii, pix, pimc, pimi , pimx  ,
gammac ,gammai , gammax,  gammamc , gammami , gammamx , sbar,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%外国经济变量，3个
ystar,  pistar,  rstar,


y_obs,  c_obs ,  i_obs,   x_obs,   m_obs,    nu_obs,  loan_obs,
r_obs,   pic_obs,   pii_obs , sbar_obs,
ystar_obs,  pistar_obs , rstar_obs,





%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%外生冲击变量，10个（14扣除3外加货币政策冲击）
pitarget,  muz,  up,  zetac,   zetah , g ,  sigma  ,zstar ,   varepsilon,   xie ;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%模型42个内生方程中使用的辅助变量,  个，在mode部分加#表示
% kd  kx  kw  kmx  kmc   kmi  
% pidtil  pixtil  piwtil  pimctil  pimitil  pimxtil 
% mcd  mcx  mcmc mcmi  mcmx
% cm  im  xm  
% re
%***模型43个内生方程中可能使用的稳态表达



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%外生变量，即外生冲击过程的扰动项,14个
varexo
e_ystar,  e_pistar,    e_rstar,
e_xie,  e_epsilonr ,  e_pitarget,  e_muz , e_up ,  e_zetac , e_zetah , 
e_g ,  e_sigma ,  e_zstar , e_epsilon;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%模型中的参数,校准值设定

parameters

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%价格加成参数
lambdad_p ,   %国内厂商的价格加成
lambdamc_p ,  %进口消费的价格加成
lambdami_p ,  %进口投资的价格加成
lambdamx_p ,  %进口出口中间品的价格加成
lambdax_p ,   %出口的价格加成
lambdaw_p ,   %工资加成

%价格粘性参数
xid_p  ,    %国内产品价格粘性
ximc_p  ,   %进口消费价格粘性
ximi_p  ,   %进口投资价格粘性
ximx_p ,    %进口出口中间产品价格粘性
xix_p ,     %出口价格粘性
xiw_p  ,    %工资粘性

%定价指数化参数
kappad_p ,  kappamc_p ,  kappami_p ,  kappamx_p ,   kappax_p ,  kappaw_p ,


%替代弹性
etac_p ,   %国内外消费弹性
etai_p  ,  %国内外投资弹性
etax_p  ,  %出口使用国外中间品弹性
etaf_p   , %国外弹性

%占比参数
omegac_p ,  %进口消费占比
omegai_p ,  %进口投资占比
omegax_p  , %进口出口中间品占比
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%内生变量方程中的核心参数
alpha_p ,  %资本占比
beta_p  ,  %贴现率
delta_p ,  %折旧率
b_p     ,  %消费习惯
sigmal_p , %劳动弹性
al_p    ,  %劳动效用占比
sigmaa_p , %可变资本利用率
sss_p   ,  %投资成本参数
mu_p    ,  %监督成本
taub_p  ,  %资本管制
te_p    ,  %企业家转移支付
bigtheta_p , %退出企业家的消费
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%货币政策方程中参数
rhor_p , %利率平滑
rpi_p  , %通胀反应
ry_p  ,  %产出缺口反应
rs_p   , %汇率变动的反应
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%外国经济VAR 参数
rpistar, rystar,
a11,a12,a13,a21,a22,a23,a31,a32,a33,

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

phitildea,  phitildes,

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%10个冲击过程中的参数
rhopitarget_p,  rhomuz_p , rhoup_p , rhozetac_p ,  rhozetah_p  ,rhog_p  ,rhosigma_p , 
rhozstar_p ,   rhoepsilon_p,   rhoxie_p,
pitarget_p , %均值通胀
muz_p   ,    %均值增长率
Fomegabar ,   %破产率

nk,

%冲击方差，14个
stdpitarget_p,  stdmuz_p , stdup_p  ,stdzetac_p ,  stdzetah_p  , stdg_p , stdsigma_p  ,
stdzstar_p ,   stdepsilonr_p  , stdxie_p,
stdystar_p  ,stdpistar_p , stdrstar_p ,  stdepsilon_p;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%开始参数的校准及估计参数的先验

%%%校准的参数值
omegac_p=0.3;  %进口消费占比
omegai_p=0.3;  %进口投资占比
omegax_p=0.4;  %进口出口中间品占比

%内生变量方程中的核心参数
alpha_p=0.55;  %资本占比
beta_p=0.98;  %贴现率
delta_p=0.05;  %折旧率
sigmal_p=2 ;%劳动弹性
al_p    = 5; %劳动效用占比
te_p    =0.005;  %企业家转移支付
bigtheta_p =0.005; %退出企业家的消费


pitarget_p= 1.007  ; %均值通胀
muz_p  = 1.02;    %均值增长率


phitildea=0.01; 

phitildes=	1.25; 



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%估计参数的先验
%价格加成参数
lambdad_p =1.2 ;  %国内厂商的价格加成
lambdamc_p =1.2 ;  %进口消费的价格加成
lambdami_p =1.2 ; %进口投资的价格加成
lambdamx_p =1.2 ; %进口出口中间品的价格加成
lambdax_p =1.2 ;  %出口的价格加成
lambdaw_p =1.2;  %工资加成

%价格粘性参数
xid_p  =0.75;    %国内产品价格粘性
ximc_p = 0.75;   %进口消费价格粘性
ximi_p  = 0.75;  %进口投资价格粘性
ximx_p  = 0.75;   %进口出口中间产品价格粘性
xix_p   = 0.75;  %出口价格粘性
xiw_p   = 0.75;   %工资粘性

%定价指数化参数
kappad_p=0.5;
kappamc_p=0.5;
kappami_p=0.5;
kappamx_p=0.5;
kappax_p=0.5;
kappaw_p=0.5;

%替代弹性
etac_p=1.5;   %国内外消费弹性
etai_p=1.5;  %国内外投资弹性
etax_p=1.5;  %出口使用国外中间品弹性
etaf_p=1.5;  %国外弹性

b_p  = 0.65; %消费习惯
sigmaa_p =0.2; %可变资本利用率
sss_p   =5;  %投资成本参数
mu_p    =0.275;  %监督成本
taub_p  = 0.2 ;  %资本管制


Fomegabar=0.007;   %破产率
nk=0.5;        %



%货币政策方程中参数
rhor_p =0.75; %利率平滑
rpi_p  =1.5; %通胀反应
ry_p  =0.25; %产出缺口反应
rs_p   =0.2; %汇率变动的反应

%外国经济VAR 参数
rpistar=1.5;
rystar=0.25;
a11=0.5;
a12=0;
a13=0;
a21=0;
a22=0.5;
a23=0;
a31=0;
a32=0;
a33=0.5;

rhopitarget_p=0.85;  
rhomuz_p=0.85;  
rhoup_p=0.85; 
rhozetac_p =0.85; 
rhozetah_p=0.85; 
rhog_p=0.85; 
rhosigma_p=0.85; 
rhozstar_p=0.85;   
rhoepsilon_p =0.85;  
rhoxie_p=0.85; 






stdpitarget_p=0.002;  
stdmuz_p =0.002;
stdup_p=0.002;
stdzetac_p=0.002;
stdzetah_p=0.002;
stdg_p=0.002;
stdsigma_p=0.002;
stdzstar_p=0.002;
stdepsilonr_p=0.002;
stdxie_p=0.002;
stdystar_p=0.002;
stdpistar_p=0.002;
stdrstar_p =0.002;
stdepsilon_p=0.002;



%%%模型方程

model; 


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%***模型中的辅助方程，主要表达并不算作内生变量的辅助变量

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**方程中使用到的稳态表达
%**冲击方程中的稳态
#g_ss=(steady_state(g));
#sigma_ss=(steady_state(sigma));
#xie_ss=(steady_state(xie));


%**固定成本
#phi=((1-1/lambdad_p)*steady_state(k)^alpha_p*steady_state(h)^(1-alpha_p)*muz_p^(-alpha_p));

%**调整资本利用率
#rk_ss=(steady_state(rk));
#gammai_ss=(steady_state(gammai));
#nfa_ss=(steady_state(nfa));

%**货币政策
#rd_ss=(steady_state(rd));
#rstar_ss=(steady_state(rstar));

%%
%外国VAR
#pistar_ss=(steady_state(pistar));
#ystar_ss=(steady_state(ystar));

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**简单定价规则
%国内厂商
#pidtil=(pi(-1)^kappad_p*pitarget^(1-kappad_p));
#pidtilp1=(pi^kappad_p*pitarget(+1)^(1-kappad_p));
%出口厂商
#pixtil=(pix(-1)^kappax_p*pitarget^(1-kappax_p));
#pixtilp1=(pix^kappax_p*pitarget(+1)^(1-kappax_p));%请尝试换，是否该使用国内的通胀
%工资
#piwtil=(pic(-1)^kappaw_p*pitarget^(1-kappaw_p))*muz;
#piwtilp1=(pic^kappaw_p*pitarget(+1)^(1-kappaw_p))*muz(+1);
#piw=(w*muz*pi/w(-1));
#piwp1=(w(+1)*muz(+1)*pi(+1)/w);

%进口厂商
#pimctil=(pimc(-1)^kappamc_p*pitarget^(1-kappamc_p));
#pimctilp1=(pimc^kappamc_p*pitarget(+1)^(1-kappamc_p));
#pimitil=(pimi(-1)^kappami_p*pitarget^(1-kappami_p));
#pimitilp1=(pimi^kappami_p*pitarget(+1)^(1-kappami_p));
#pimxtil=(pimx(-1)^kappamx_p*pitarget^(1-kappamx_p));
#pimxtilp1=(pimx^kappamx_p*pitarget(+1)^(1-kappamx_p));


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**边际成本
#mcd=((1/(1-alpha_p))^(1-alpha_p)*(1/alpha_p)^alpha_p*rk^alpha_p*w^(1-alpha_p)/varepsilon);
#mcmc=(sbar*gammac/gammamc);
#mcmi=(sbar*gammac/gammami);
#mcmx=(sbar*gammac/gammamx);
#mcx=((omegax_p*gammamx^(1-etax_p)+1-omegax_p)^(1/(1-etax_p))/(sbar*gammac*gammax));


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**定价辅助变量其一
#kd=(fd*((1 - xid_p * (pidtil/ pi)^(1/(1-lambdad_p))) / (1 - xid_p))^(1-lambdad_p));
#kdp1=(fd(+1)*((1 - xid_p * (pidtilp1/ pi(+1))^(1/(1-lambdad_p))) / (1 - xid_p))^(1-lambdad_p));
#kmc=(fmc*((1 - ximc_p * (pimctil/ pimc)^(1/(1-lambdamc_p))) / (1 - ximc_p))^(1-lambdamc_p));
#kmcp1=(fmc(+1)*((1 - ximc_p * (pimctilp1/ pimc(+1))^(1/(1-lambdamc_p))) / (1 - ximc_p))^(1-lambdamc_p));
#kmi=(fmi*((1 - ximi_p * (pimitil/ pimi)^(1/(1-lambdami_p))) / (1 - ximi_p))^(1-lambdami_p));
#kmip1=(fmi(+1)*((1 - ximi_p * (pimitilp1/ pimi(+1))^(1/(1-lambdami_p))) / (1 - ximi_p))^(1-lambdami_p));
#kmx=(fmx*((1 - ximx_p * (pimxtil/ pimx)^(1/(1-lambdamx_p))) / (1 - ximx_p))^(1-lambdamx_p));
#kmxp1=(fmx(+1)*((1 - ximx_p * (pimxtilp1/ pimx(+1))^(1/(1-lambdamx_p))) / (1 - ximx_p))^(1-lambdamx_p));
#kx=(fx*((1 - xix_p * (pixtil/ pix)^(1/(1-lambdax_p))) / (1 - xix_p))^(1-lambdax_p));
#kxp1=(fx(+1)*((1 - xix_p * (pixtilp1/ pix(+1))^(1/(1-lambdax_p))) / (1 - xix_p))^(1-lambdax_p));
#kw=(fw*((1 - xiw_p * (piwtil*w(-1)/ (pi*w*muz))^(1/(1-lambdaw_p))) / (1 - xiw_p))^(1-lambdaw_p*(1+sigmal_p))*w/al_p);
#kwp1=(fw(+1)*((1 - xiw_p * (piwtilp1*w/ (pi(+1)*w(+1)*muz(+1)))^(1/(1-lambdaw_p))) / (1 - xiw_p))^(1-lambdaw_p*(1+sigmal_p))*w/al_p);



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**进口部分
#cm=(omegai_p*(gammac/gammamc)^etai_p*c);
#im=(omegai_p*(gammai/gammami)^etai_p*(i+rk_ss/gammai_ss*(exp(sigmaa_p*(u-1))-1)/sigmaa_p*kbar(-1)/muz));
#xm=(omegax_p*((omegax_p*gammamx^(1-etax_p)+1-omegax_p)^(1/(1-etax_p))/gammamx)^etax_p*pxbar^(lambdax_p/(1-lambdax_p))*gammax^(-etaf_p)*ystar*zstar);
#cml1=(omegai_p*(gammac(-1)/gammamc(-1))^etai_p*c(-1));
#iml1=(omegai_p*(gammai(-1)/gammami(-1))^etai_p*(i(-1)+rk_ss/gammai_ss*(exp(sigmaa_p*(u(-1)-1))-1)/sigmaa_p*kbar(-1)/muz(-1)));
#xml1=(omegax_p*((omegax_p*gammamx(-1)^(1-etax_p)+1-omegax_p)^(1/(1-etax_p))/gammamx(-1))^etax_p
       *pxbar(-1)^(lambdax_p/(1-lambdax_p))*gammax(-1)^(-etaf_p)*ystar(-1)*zstar(-1));


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**投资调整成本
#si=((exp(sqrt(sss_p)*(i*muz/i(-1)-muz_p))+exp((-sqrt(sss_p))*(i*muz/i(-1)-muz_p))-2)/2);
#sii=((exp(sqrt(sss_p)*(i*muz/i(-1)-muz_p))-exp((-sqrt(sss_p))*(i*muz/i(-1)-muz_p)))*sqrt(sss_p)/2);
#siip1=((exp(sqrt(sss_p)*(i(+1)*muz(+1)/i-muz_p))-exp((-sqrt(sss_p))*(i(+1)*muz(+1)/i-muz_p)))*sqrt(sss_p)/2);






%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%测量方程中的辅助变量
%**测量总产出，总产出测量方程
#ybar=g+(1-omegac_p)*gammac^etac_p*c+(1-omegai_p)*gammai^etai_p*i+(1-omegax_p)
     *(omegax_p*gammamx^(1-etax_p)+1-omegax_p)^(etax_p/(1-etax_p))*pxbar^(lambdax_p/(1-lambdax_p))*gammax^(-etaf_p)*ystar*zstar;
#ybarl1=g(-1)+(1-omegac_p)*gammac(-1)^etac_p*c(-1)+(1-omegai_p)*gammai(-1)^etai_p*i+(1-omegax_p)
     *(omegax_p*gammamx(-1)^(1-etax_p)+1-omegax_p)^(etax_p/(1-etax_p))*pxbar(-1)^(lambdax_p/(1-lambdax_p))*gammax(-1)^(-etaf_p)*ystar(-1)*zstar(-1);





%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**企业家部分用到的辅助变量
#F=(normcdf((log(omegabar) + sigma(-1)^2 / 2) / sigma(-1)));
#G=(normcdf((log(omegabar) + sigma(-1)^2 / 2) / sigma(-1) - sigma(-1)));
#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  );  %文中使用的gamma
#Gammaprp1 =( 1 - Fp1);                   %上述的导数
%**Gr=(omegabar(+1)*normpdf((log(omegabar(+1)) + sigma^2 / 2) / sigma) );     %G的导数
#Gr=(omegabar(+1) * normpdf((log(omegabar(+1)) + sigma^2 / 2) / sigma) / omegabar(+1) / sigma);
#re=((u(+1)*rk(+1)-rk_ss/gammai_ss*(exp(sigmaa_p*(u(+1)-1))-1)/sigmaa_p*gammai(+1)+(1-delta_p)*q(+1))*pi(+1)/q );   %企业家收益率
#rel1=((u*rk-rk_ss/gammai_ss*(exp(sigmaa_p*(u-1))-1)/sigmaa_p*gammai+(1-delta_p)*q)*pi/q(-1)   );                   %企业家收益率滞后
#d=(mu_p*G*rel1*q(-1)*kbar(-1)/(pi*muz) );   %消耗的监督成本，进入社会资源约束


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%





%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%***模型均衡方程，42个内生变量对应42个均衡方程

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**国内厂商
%国内定价fd方程  A1
fd = psiz*y + (pidtilp1 / pi(+1))^(1/(1-lambdad_p)) * beta_p * xid_p * fd(+1);

%国内定价kd方程   A2
kd=lambdad_p*mcd* psiz*y+(pidtilp1 / pi(+1))^(lambdad_p/(1-lambdad_p)) * beta_p * xid_p * kdp1;


%价格运动方程   A3
pbar=((1-xid_p)*((1 - xid_p * (pidtil/ pi)^(1/(1-lambdad_p))) / (1 - xid_p))^lambdad_p
      +xid_p * (pidtil*pbar(-1)/ pi)^(lambdad_p/(1-lambdad_p)))^((1-lambdad_p)/lambdad_p);

%国内中间厂商成本最小化条件  A4
w=rk*(1-alpha_p)*k(-1)/(alpha_p*h*muz);



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**进口厂商

%定价fmc的方程   A5
fmc= psiz*gammamc*cm + (pimctilp1 / pimc(+1))^(1/(1-lambdamc_p)) * beta_p * ximc_p * fmc(+1);

%定价fmi的方程   A6
fmi= psiz*gammami*im + (pimitilp1 / pimi(+1))^(1/(1-lambdami_p)) * beta_p * ximi_p * fmi(+1);

%定价fmx的方程   A7
fmx= psiz*gammamx*xm + (pimxtilp1 / pimx(+1))^(1/(1-lambdamx_p)) * beta_p * ximx_p * fmx(+1);

%定价kmc的方程   A8
kmc= lambdamc_p*mcmc*psiz*gammamc*cm + (pimctilp1 / pimc(+1))^(lambdamc_p/(1-lambdamc_p)) * beta_p * ximc_p * kmcp1;

%定价kmi的方程  A9
kmi= lambdami_p*mcmi*psiz*gammami*im + (pimitilp1 / pimi(+1))^(lambdami_p/(1-lambdami_p)) * beta_p * ximi_p * kmip1;

%定价kmx的方程   A10
kmx= lambdamx_p*mcmx*psiz*gammamx*xm + (pimxtilp1 / pimx(+1))^(lambdamx_p/(1-lambdamx_p)) * beta_p * ximx_p * kmxp1;

%价格运动 c      A11
pmcbar=((1-ximc_p)*((1 - ximc_p * (pimctil/ pimc)^(1/(1-lambdamc_p))) / (1 - ximc_p))^lambdamc_p
      +ximc_p*(pimctil*pmcbar(-1)/ pimc)^(lambdamc_p/(1-lambdamc_p)))^((1-lambdamc_p)/lambdamc_p);

%价格运动 i      A12
pmibar=((1-ximi_p)*((1 - ximi_p * (pimitil/ pimi)^(1/(1-lambdami_p))) / (1 - ximi_p))^lambdami_p
      +ximi_p*(pimitil*pmibar(-1)/ pimi)^(lambdami_p/(1-lambdami_p)))^((1-lambdami_p)/lambdami_p);

%价格运动 x      A13
pmxbar=((1-ximx_p)*((1 - ximx_p * (pimxtil/ pimx)^(1/(1-lambdamx_p))) / (1 - ximx_p))^lambdamx_p
      +ximx_p*(pimxtil*pmxbar(-1)/ pimx)^(lambdamx_p/(1-lambdamx_p)))^((1-lambdamx_p)/lambdamx_p);


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**出口厂商

%定价fx的方程   A14
fx= psiz*gammax^(1-etaf_p)*gammac*sbar*ystar + (pixtilp1 / pix(+1))^(1/(1-lambdax_p)) * beta_p * xix_p * fx(+1);

%定价kx的方程   A15
kx= lambdax_p*mcx*psiz*gammax^(1-etaf_p)*gammac*sbar*ystar + (pixtilp1 / pix(+1))^(lambdax_p/(1-lambdax_p)) * beta_p * xix_p * kxp1;

%价格运动 x     A16
pxbar=((1-xix_p)*((1 - xix_p * (pixtil/ pix)^(1/(1-lambdax_p))) / (1 - xix_p))^lambdax_p
      +xix_p*(pixtil*pxbar(-1)/ pix)^(lambdax_p/(1-lambdax_p)))^((1-lambdax_p)/lambdax_p);


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**相对价格以及通胀,9个

gammamc=gammamc(-1)*pimc/pi;
gammami=gammami(-1)*pimi/pi;
gammamx=gammamx(-1)*pimx/pi;
gammac=gammac(-1)*pic/pi;
gammai=gammai(-1)*pii/pi;
gammax=gammax(-1)*pix/pistar;

sbar=sbar(-1)*s*pistar/pic;

gammac=(1-omegac_p+omegac_p*gammamc^(1-etac_p))^(1/(1-etac_p));
gammai=(1-omegai_p+omegai_p*gammami^(1-etai_p))^(1/(1-etai_p));



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**资本品生产

%投资决策的一阶条件     A26
psiz=(psiz*q*up*(1-si-sii*i*muz/i(-1))+beta_p*psiz(+1)*q(+1)*up(+1)*siip1*muz(+1)*(i(+1)/i)^2)/gammai;

%资本累积方程            A27
kbar=(1-delta_p)*kbar(-1)/muz+up*(1-si)*i;



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**家户决策

%消费的欧拉方程          A28
gammac*psiz=zetac/(c-b_p*c(-1)/muz)-beta_p*b_p*zetac(+1)/(c(+1)*muz(+1)-b_p*c);


%家户国内资产的决策      A29
psiz=beta_p*rd*psiz(+1)/(muz(+1)*pi(+1));


%家户国外资产的决策       A30    //还有问题,国家风险的引入//放弃

psiz*muz(+1)*pi(+1)=beta_p*psiz(+1)*s(+1)*rstar* exp(-phitildea*(nfa-nfa_ss)-phitildes*(rstar-rd-(rstar_ss-rd_ss)))*(1+taub_p);



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**工资决策

%fw的方程                 A31
fw=psiz/lambdaw_p*h+w(+1)/w*(piwtilp1 / piwp1)^(1/(1-lambdaw_p)) * beta_p * xiw_p * fw(+1);


%kw的方程                A32
kw=zetah*h^(1+sigmal_p)+(piwtilp1 / piwp1)^(lambdaw_p*(1+sigmal_p)/(1-lambdaw_p)) * beta_p * xiw_p * kwp1;


%工资加总的方程                   A33
wbar=((1-xiw_p)*((1 - xiw_p * (piwtil/ piw)^(1/(1-lambdaw_p))) / (1 - xiw_p))^lambdaw_p
      +xiw_p*(piwtil*wbar(-1)/ piw)^(lambdaw_p/(1-lambdaw_p)))^((1-lambdaw_p)/lambdaw_p);



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**企业家的资本利用

%资本利用决策             A34
rk=rk_ss/gammai_ss*exp(sigmaa_p*(u-1))*gammai;

%一个等式                 A35
k(-1)=u*kbar(-1);


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**最优贷款合同     //难点部分

%零利润条件               A36
%Gammap1-mu_p*Gp1=rd*(q*kbar-nu)/(re*q*kbar);
%(1-mu_p)*normcdf((log(omegabar(+1))+sigma^2/2)/sigma-sigma)+omegabar(+1)*(1-normcdf((log(omegabar(+1))+sigma^2/2)/sigma))=rd*(q*kbar-nu)/(re*q*kbar);
nu/kbar=q-re/rd*(Gammap1-mu_p*Gp1);

%一阶条件                 A37
(1-Gammap1)*re/rd + Gammaprp1/(Gammaprp1-mu_p*Gr)*(re/rd*(Gammap1-mu_p*Gp1)-1 )=0   ;


%净财富动态                 A38
nu=xie/(pi*muz)*((rel1*(1-mu_p*G)-rd(-1))*kbar(-1)*q(-1)+rd(-1)*nu(-1))+te_p;


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**资源约束以及其他          


%加总产出的表达              A39
y=pbar^(lambdad_p/(lambdad_p-1))*(varepsilon*(k(-1)/muz)^alpha_p*h^(1-alpha_p)-phi);


%国内产出的资源约束           A40
y=g+d+bigtheta_p*(1-xie)/xie*(nu-te_p)+(1-omegac_p)*gammac^etac_p*c+(1-omegai_p)*gammai^etai_p*(i+rk_ss/gammai_ss*(exp(sigmaa_p*(u-1))-1)/sigmaa_p*kbar(-1)/muz)
     +(1-omegax_p)*(omegax_p*gammamx^(1-etax_p)+1-omegax_p)^(etax_p/(1-etax_p))*pxbar^(lambdax_p/(1-lambdax_p))*gammax^(-etaf_p)*ystar*zstar;


%净外国资产nfa的动态            A41
nfa=sbar*gammac*gammax*gammax^(-etaf_p)*ystar*zstar-sbar*gammac*(pmcbar^(lambdamc_p/(1-lambdamc_p))*cm+pmibar^(lambdami_p/(1-lambdami_p))*im+pmxbar^(lambdamx_p/(1-lambdamx_p))*xm)
     +rstar(-1)*s*nfa(-1)*(1+taub_p)/(pi*muz) * exp(-phitildea*(nfa(-1)-nfa_ss)-phitildes*(rstar(-1)-rd(-1)
-(rstar_ss-rd_ss)));


%货币政策                       A42         ??产出缺口的衡量
log(rd/rd_ss)=rhor_p*log(rd(-1)/rd_ss)+(1-rhor_p)*(log(pitarget/pitarget_p)+rpi_p*log(pic/pitarget)+ry_p*log(ybar/ybarl1)+rs_p*log(s))+e_epsilonr;


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%三个外国变量对应三变量VAR
pistar - pistar_ss=a11*(pistar(-1)-pistar_ss)+a12*(log(ystar(-1)/ystar_ss))+a13*(rstar(-1)-rstar_ss)+e_pistar;
log(ystar/ystar_ss)=a21*(pistar(-1)-pistar_ss)+a22*(log(ystar(-1)/ystar_ss))+a23*(rstar(-1)-rstar_ss)+e_ystar;
rstar-rstar_ss=rpistar*(pistar-pistar_ss)+rystar*log(ystar/ystar_ss)+a31*(pistar(-1)-pistar_ss)+a32*(log(ystar(-1)/ystar_ss))+a33*(rstar(-1)-rstar_ss)+e_rstar;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%说明：真实变量对数差分后减去均值处理
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%14个数据对应的观测方程
%**B.1 产出数据，使用国内GDP(使用到辅助变量，考虑总产出的度量）
y_obs=log(ybar/ybarl1*muz/muz_p);

%**B.2 消费数据，社会零售总额
c_obs=log(c/c(-1)*muz/muz_p);

%**B.3 投资数据，固定资产投资
i_obs=log(i/i(-1)*muz/muz_p);

%**B.4 净财富数据，股指或股票总市值
nu_obs=log(nu/nu(-1)*muz/muz_p);

%**B.5 信贷数据，非金融机构新增贷款
loan_obs=log((q*kbar-nu)/(q(-1)*kbar(-1)-nu(-1))*muz/muz_p);

%**B.6 出口数据，
x_obs=log(gammax^(-etaf_p)*ystar*zstar/((gammax(-1))^(-etaf_p)*ystar(-1)*zstar(-1))*muz/muz_p);

%**B.7 进口数据，使用进口辅助变量
m_obs=log((cm+im+xm)/(cml1+iml1+xml1)*muz/muz_p);

%**B.8 消费通胀，CPI,减去均值
pic_obs=pic- 1.007;

%**B.9 投资通胀，固定资产价格指数，减去均值
pii_obs=pii-1.007;

%**B.10 利率，银行七天拆借，减去均值
r_obs=100*(rd-rd_ss);

%**B.11 实际有效汇率，IFS
sbar_obs=sbar/sbar(-1);

%**B.12 外国产出
ystar_obs=log(ystar*zstar/(ystar(-1)*zstar(-1))*muz/muz_p);

%**B.13 外国利率
rstar_obs=100*(rstar-rstar_ss );

%**B.14 外国通胀
pistar_obs=pistar-1.007;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%









%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%**10个外生冲击方程（排除国外及货币政策冲击）
%**C.1 通胀目标冲击
log(pitarget/pitarget_p)=rhopitarget_p*log(pitarget(-1)/pitarget_p)+e_pitarget;

%**C.2 增长率冲击
log(muz/muz_p)=rhomuz_p*log(muz(-1)/muz_p)+e_muz;

%**C.3 投资技术冲击
log(up)=rhoup_p*log(up(-1))+e_up;

%**C.4 偏好冲击
log(zetac)=rhozetac_p*log(zetac(-1))+e_zetac;

%**C.5 劳动力冲击
log(zetah)=rhozetah_p*log(zetah(-1))+e_zetah;

%**C.6 政府支出冲击
log(g/g_ss)=rhog_p*log(g(-1)/g_ss)+e_g;

%**C.7 财富冲击
log(xie/xie_ss)=rhoxie_p*log(xie(-1)/xie_ss)+e_xie;

%**C.8 风险冲击
log(sigma/sigma_ss)=rhosigma_p*log(sigma(-1)/sigma_ss)+e_sigma;

%**C.9 国内外非对称的技术冲击
log(zstar)=rhozstar_p*log(zstar(-1))+e_zstar;

%**C.10 国内平稳技术冲击
log(varepsilon)=rhoepsilon_p*log(varepsilon(-1))+e_epsilon;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

end;







%%模型中冲击设定

shocks;
var e_ystar; stderr stdystar_p;
var e_pistar; stderr stdpistar_p;
var e_rstar; stderr stdrstar_p;
var e_xie;   stderr  stdxie_p;
var e_epsilonr; stderr stdepsilonr_p;
var e_pitarget; stderr stdpitarget_p;
var e_muz;    stderr stdmuz_p;
var e_up;    stderr stdup_p;
var e_zetac; stderr stdzetac_p;
var e_zetah; stderr  stdzetah_p;
var e_g;   stderr stdg_p;
var e_sigma; stderr stdsigma_p;
var e_zstar;  stderr stdzstar_p;
var e_epsilon; stderr stdepsilon_p;
end;


% Compute the steady state of the model.
steady;

% Compute the eigenvalues of the model linearized around the steady state.
check;



%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%交代可观测变量
varobs
y_obs,  c_obs ,  i_obs,   x_obs,   m_obs,    nu_obs,  loan_obs,
r_obs,   pic_obs,   pii_obs , sbar_obs,
ystar_obs,  pistar_obs , rstar_obs;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%估计参数的先验设定

estimated_params;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%价格加成参数

%价格粘性参数
xid_p , beta_pdf , 0.75,0.075;    %国内产品价格粘性
ximc_p, beta_pdf ,  0.75,0.075;   %进口消费价格粘性
ximi_p  , beta_pdf ,  0.75,0.075 ;   %进口投资价格粘性
ximx_p  , beta_pdf ,  0.75,0.075 ;   %进口出口中间产品价格粘性
xix_p   , beta_pdf ,  0.75,0.075 ;  %出口价格粘性
xiw_p    , beta_pdf , 0.75,0.075;   %工资粘性

%定价指数化参数
kappad_p, beta_pdf ,0.5 , 0.15 ;
kappamc_p, beta_pdf ,0.5 , 0.15 ;
kappami_p, beta_pdf ,0.5 , 0.15 ;
kappamx_p, beta_pdf ,0.5 , 0.15 ;
kappax_p, beta_pdf ,0.5 , 0.15 ;
kappaw_p, beta_pdf ,0.5 , 0.15 ;

%替代弹性
etac_p , gamma_pdf , 1.5, 0.25 ;   %国内外消费弹性
etai_p , gamma_pdf , 1.5 , 0.25 ;  %国内外投资弹性
etax_p , gamma_pdf , 1.5 , 0.25 ;   %出口使用国外中间品弹性
etaf_p , gamma_pdf , 1.5 , 0.25 ;   %国外弹性

b_p   , beta_pdf , 0.65 , 0.1 ;  %消费习惯
sigmaa_p , gamma_pdf , 0.2 , 0.075; %可变资本利用率
sss_p   ,gamma_pdf, 5 , 1.5;  %投资成本参数
mu_p , beta_pdf , 0.275 , 0.15 ;  %监督成本
taub_p ,beta_pdf , 0.3 , 0.2 ;  %资本管制

%货币政策方程中参数
rhor_p  , beta_pdf , 0.75 ,0.1 ; %利率平滑
rpi_p  , normal_pdf , 1.5 , 0.25 ; %通胀反应
ry_p  , normal_pdf , 0.25, 0.1 ; %产出缺口反应
rs_p  , normal_pdf ,0.2  ,0.1  ; %汇率变动的反应

%外国经济VAR 参数
rpistar , normal_pdf , 1.5 , 0.25 ;
rystar  , normal_pdf , 0.25, 0.1 ; 
a11 , normal_pdf , 0.5, 0.5;
a12 , normal_pdf , 0 , 0.5;
a13 , normal_pdf , 0 , 0.5;
a21 , normal_pdf , 0 , 0.5;
a22 , normal_pdf , 0.5 , 0.5;
a23 , normal_pdf , 0 , 0.5;
a31 , normal_pdf , 0 , 0.5;
a32 , normal_pdf , 0 , 0.5;
a33 , normal_pdf , 0.5, 0.5;

%%
%冲击AR系数
rhopitarget_p , beta_pdf , 0.85 , 0.1 ;  
rhomuz_p , beta_pdf , 0.85 , 0.1 ; 
rhoup_p , beta_pdf , 0.85 , 0.1 ; 
rhozetac_p   , beta_pdf , 0.85 , 0.1 ; 
rhozetah_p , beta_pdf , 0.85 , 0.1 ; 
rhog_p     , beta_pdf , 0.85 , 0.1 ; 
rhosigma_p , beta_pdf , 0.85 , 0.1 ; 
rhozstar_p , beta_pdf , 0.85 , 0.1 ; 
rhoepsilon_p  , beta_pdf , 0.85 , 0.1 ; 
rhoxie_p    , beta_pdf , 0.85 , 0.1 ; 



Fomegabar , beta_pdf , 0.007 , 0.0037;   %破产率



%%
%冲击方差
stderr e_pitarget , inv_gamma_pdf , 0.002, inf ;
stderr e_muz  , inv_gamma_pdf , 0.002, inf ;
stderr e_up , inv_gamma_pdf , 0.002, inf ;
stderr e_zetac  , inv_gamma_pdf , 0.002, inf ;
stderr e_zetah  , inv_gamma_pdf , 0.002, inf ;
stderr e_g  , inv_gamma_pdf , 0.002, inf ;
stderr e_sigma  , inv_gamma_pdf , 0.002, inf ;
stderr e_zstar  , inv_gamma_pdf , 0.002, inf ;
stderr e_epsilonr  , inv_gamma_pdf , 0.002, inf ;
stderr e_xie   , inv_gamma_pdf , 0.002, inf ;
stderr e_ystar   , inv_gamma_pdf , 0.002, inf ;
stderr e_pistar  , inv_gamma_pdf , 0.002, inf ;
stderr e_rstar    , inv_gamma_pdf , 0.002, inf ;
stderr e_epsilon   , inv_gamma_pdf , 0.002, inf ;

end;


estimation ( datafile=myfirstdata,mh_replic=1000,mh_nblocks=1,mh_drop=0.45,mh_jscale=0.2,mode_compute=6,nograph);








