Measuring the Effects of a Shock to Monetary Policy - Humboldt ...
Measuring the Effects of a Shock to Monetary Policy - Humboldt ...
Measuring the Effects of a Shock to Monetary Policy - Humboldt ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Bayesian FAVARs with Agnostic Identification 93<br />
’SFYGT5’,’SFYGT10’,’SFYAAAC’,’SFYBAAC’,’FM1’,’FM2’,’FM3’,’FM2DQ’,’FMFBA’,’FMRRA’,’FMRNBA’,’FCLNQ’, ...<br />
’FCLBMC’,’CCINRV’,’PMCP’,’PWSFA’,’PWFCSA’,’PWIMSA’,’PWCMSA’,’PSM99Q’,’PUNEW’,’PU83’,’PU84’,’PU85’, ...<br />
’PUC’,’PUCD’,’PUS’,’PUXF’,’PUXHS’,’PUXM’,’LEHCC’,’LEHM’,’HHSNTN’};<br />
%%%%%%**********************************************************%%%%%<br />
%%%%%% Bayesian FAVAR Code August 26th %%%%%<br />
%%%%%%**********************************************************%%%%%<br />
%%%%%% DO _INPUT_STARTINGVALUES %%%%%<br />
%%%%%% see Sequence Diagram Block A.5 %%%%%<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
%%%%%% Returns starting values for all variables included in<br />
%%%%%% <strong>the</strong> input.startingvalues structure. These are F, lam_f,<br />
%%%%%% lam_y, R, Phi_lags and Q.<br />
%%%%%%<br />
%%%%%% startingvalues<br />
%%%%%% |---------- F<br />
%%%%%% |---------- lam_f<br />
%%%%%% |---------- lam_y<br />
%%%%%% |---------- R<br />
%%%%%% |---------- Phi_lags<br />
%%%%%% |---------- Q<br />
function [startingvalues] = DO_INPUT_STARTINGVALUES (input)<br />
%function [startingvalues] = DO_INPUT_STARTINGVALUES (input)<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
%’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’% %<br />
%’’’ function Get_Starting_Values = [Input_Structure] ’’’% %<br />
%’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’’% %<br />
% %<br />
%switch mode ==1 %<br />
% case Get_Starting_Values(Generated) %<br />
% Statement 1 %<br />
% case Get_Starting_Values(Dispersed distribution) %<br />
% Statement 2 %<br />
% case Get_Starting_Values(zero_values) %<br />
% Statement 3 %<br />
% o<strong>the</strong>rwise %<br />
% Statement 4 %<br />
% break %<br />
%end; %switch %<br />
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br />
X_st = input.xdata ./ repmat(std(input.xdata,1),input.specification.dim.T,1);<br />
Y_st = input.specification.y ./ repmat(std(input.specification.y,1),input.specification.dim.T,1);<br />
% first step - extract PC from X<br />
[F,lam_f] = extract(X_st,input.specification.model.K);<br />
% regress X on F0 and Y, obtain loadings<br />
Lfy = olssvd(X_st(:,input.specification.model.K+1:input.specification.dim.N),[F Y_st])’;<br />
% upper KxM block <strong>of</strong> Ly set <strong>to</strong> zero<br />
lam_f=[lam_f(1:input.specification.model.K,:);Lfy(:,1:input.specification.model.K)];<br />
lam_y=[zeros(input.specification.model.K,input.specification.dim.M);...<br />
Lfy(:,input.specification.model.K+1:input.specification.model.K+input.specification.dim.M)];<br />
% transform fac<strong>to</strong>rs and loadings for LE normalization<br />
[ql,rl]=qr(lam_f’);<br />
lam_f=rl; % do not transpose yet, is upper triangular