Por favor, dígame cómo hacer la descomposición de la varianza histórica en Dynare

La estimación de parámetros debería encontrar una descomposición de la varianza histórica, ¿verdad? Le enviaré un código dynare, que generará automáticamente un documento de Excel después de ejecutarlo. Después de abrirlo, convertir los datos en un gráfico es lo que se llama descomposición de la varianza histórica, ¿verdad? También estoy aprendiendo los detalles, así que probablemente no pueda ayudarte ya que no soy bueno en la estimación de parámetros.

var x ppi a ii v ppiact

varexo e u errppi

Parámetro βγωφ_ piφ_ yρ_ Aρ_ v;

β= 0,99;

Gamma = 1;

ω= 0,8;

phi _ pi = 0,5

phi _ y = 0,5

rho _ A = 0.9

rho _ v = 0.9

Modelo (lineal);

#κ=(1-ω)*(1 - ω*β)*(γ+1)/ω;

PPI = beta * PPI(+1)+kappa * x;

x = x(+1)- ( ii-PPI(+1))+(rho _ A-1)* A;

ii =(phi _ pi+1)* PPI+phi _ y * x+v;

A = rho _ A * A(-1)+e

v = rho _ v * v(-1)+u

ppiact = PPI+ err PPI; ;

Fin;

Impacto;

var e; stderr 0.5

var u; var errppistderr 0.5

Fin;

Estable;

Verificar

estimado _ parámetros

gamma, gamma_pdf , 1, 0,5;

ω, beta_pdf, 0,8, 0,1;

phi_pi, gamma_pdf, 0,5, 0,25;

rho_A, beta_pdf, 0,8, 0,05;

rho_v, beta_pdf, 0,8, 0,1

stderr e, inv_gamma_pdf, 0,5, 0,5;

p>

stderr u, inv_gamma_pdf, 0.5, 0.5;

stderr errppi, inv_gamma_pdf, 0.5, 0.5

Fin

varobs; x ppiact ii

estimación(datafile=dset, mh_replic=125000, mh_drop=0.25, mh_nblocks=2, mh_jscale=0.7, mode_compute=4

shock_decomposition

;

util _ CSV write(' histdocomp _ x . CSV ', forma(oo_. shock_decomposition(1,:,,5,76)',{'e','u','errppi','init','x'});

util _ CSV write(' histdecop _pi.CSV',forma(oo_.

shock_decomposition(2,:),5,76)',{'e','u','errppi','init','pi'});

util _ CSV write('histdocomp _ I .CSV ',shape(oo_.shock_decomposition(4,:),5,76)',{'e','u','errppi','init','I'});

util_CSV write('histdecop_piact.CSV',shape(oo_.shock_decomposition(6,:),5,76)',{'e','u','errppi','init', ' piact ' } );

cadena 1 =[];

cadena 2 =[];

Porque i = 1:11

carga( strcat('./NK _ Linear _ EST/metropolis/NK _ Linear _ EST _ MH ', num2str(i), ' _blck1.mat '))

cadena 1 =[cadena 1;

cadena 2 =[cadena 2;x2];

Fin

varnames = {'gamma','omega','phi_pi','phi_y',' rho_A ' , ' rho_v ', ' stderr_e ', ' stderr_u ', ' stderr_err PPI ' };

util _CSV write(' chain1 . CSV ', cadena 1, varnames);

util_csvwrite ('chain2.csv ', chain2, varnames);