id.garch {svars} | R Documentation |
Identification of SVAR models through patterns of GARCH
Description
Given an estimated VAR model, this function uses GARCH-type variances to identify the structural impact matrix B of the corresponding SVAR model
y_t=c_t+A_1 y_{t-1}+...+A_p y_{t-p}+u_t
=c_t+A_1 y_{t-1}+...+A_p y_{t-p}+B \epsilon_t.
Matrix B corresponds to the decomposition of the least squares covariance matrix \Sigma_u=B\Lambda_t B'
, where \Lambda_t
is the estimated conditional heteroskedasticity matrix.
Usage
id.garch(
x,
max.iter = 5,
crit = 0.001,
restriction_matrix = NULL,
start_iter = 50
)
Arguments
x |
An object of class 'vars', 'vec2var', 'nlVar'. Estimated VAR object |
max.iter |
Integer. Number of maximum likelihood optimizations |
crit |
Numeric. Critical value for the precision of the iterative procedure |
restriction_matrix |
Matrix. A matrix containing presupposed entries for matrix B, NA if no restriction is imposed (entries to be estimated). Alternatively, a K^2*K^2 matrix can be passed, where ones on the diagonal designate unrestricted and zeros restricted coefficients. (as suggested in Luetkepohl, 2017, section 5.2.1). |
start_iter |
Numeric. Number of random candidate initial values for univariate GRACH(1,1) optimization. |
Value
A list of class "svars" with elements
B |
Estimated structural impact matrix B, i.e. unique decomposition of the covariance matrix of reduced form residuals |
B_SE |
Standard errors of matrix B |
GARCH_parameter |
Estimated GARCH parameters of univariate GARCH models |
GARCH_SE |
Standard errors of GARCH parameters |
n |
Number of observations |
Fish |
Observed Fisher information matrix |
Lik |
Function value of likelihood |
iteration |
Number of likelihood optimizations |
method |
Method applied for identification |
A_hat |
Estimated VAR parameter via GLS |
type |
Type of the VAR model, e.g. 'const' |
restrictions |
Number of specified restrictions |
restriction_matrix |
Specified restriction matrix |
y |
Data matrix |
p |
Number of lags |
K |
Dimension of the VAR |
VAR |
Estimated input VAR object |
I_test |
Results of a series of sequential tests on the number of heteroskedastic shocks present in the system as described in Luetkepohl and Milunovich (2016). |
References
Normadin, M. & Phaneuf, L., 2004. Monetary Policy Shocks: Testing Identification Conditions under Time-Varying Conditional Volatility. Journal of Monetary Economics, 51(6), 1217-1243.
Lanne, M. & Saikkonen, P., 2007. A Multivariate Generalized Orthogonal Factor GARCH Model. Journal of Business & Economic Statistics, 25(1), 61-75.
Luetkepohl, H. & Milunovich, G. 2016. Testing for identification in SVAR-GARCH models. Journal of Economic Dynamics and Control, 73(C):241-258
See Also
For alternative identification approaches see id.st
, id.cvm
, id.cv
, id.dc
or id.ngml
Examples
# data contains quartlery observations from 1965Q1 to 2008Q2
# assumed structural break in 1979Q3
# x = output gap
# pi = inflation
# i = interest rates
set.seed(23211)
v1 <- vars::VAR(USA, lag.max = 10, ic = "AIC" )
x1 <- id.garch(v1)
summary(x1)
# Impulse response analysis
i1 <- irf(x1, n.ahead = 30)
plot(i1, scales = 'free_y')
# Restrictions
# Assuming that the interest rate doesn't influence the output gap on impact
restMat <- matrix(rep(NA, 9), ncol = 3)
restMat[1,3] <- 0
x2 <- id.garch(v1, restriction_matrix = restMat)
summary(x2)