18.06.2013 Views

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 ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!