SVAR2 {vars} | R Documentation |
Estimates an SVAR (either ‘A-model’, ‘B-model’ or ‘AB-model’) by utilising a scoring algorithm.
SVAR2(x, Ra = NULL, Rb = NULL, ra = NULL, rb = NULL, start = NULL, max.iter = 100, conv.crit = 0.1e-6, maxls = 1.0, lrtest = TRUE)
x |
Object of class ‘varest ’; generated by
VAR() . |
Ra |
Matrix of the explicit form constraints on A. |
Rb |
Matrix of the explicit form constraints on B. |
ra |
Vector of the non-homogenous part of constraints on A. |
rb |
Vector of the non-homogenous part of constraints on B. |
start |
Vector of starting values for gamma. |
max.iter |
Integer, maximum number of iteration. |
conv.crit |
Real, convergence value of algorithm.. |
maxls |
Real, maximum movement of the parameters between two iterations of the scoring algorithm. |
lrtest |
Logical, over-identification LR test, the result is set
to NULL for just-identified system. |
Consider the following structural form of a k-dimensional vector autoregressive model:
A y_t = A_1^*y_{t-1} + ... + A_p^*y_{t-p} + C^*D_t + Bvarepsilon_t
The coeffiecient matrices (A_1^* | ... | A_p^* | C^*) might
now differ from the ones of a VAR (see ?VAR
). One can now
impose restrictions on ‘A
’ and/or ‘B
’,
resulting in an ‘A-model’ or ‘B-model’ or if the
restrictions are placed on both matrices, an ‘AB-model’.
In contrast to the function SVAR()
, the restrictions have to
be provided in explicit form:
vec(A) = R_a gamma_a + r_a
and/or
vec(B) = R_b gamma_b + r_b
Please note that for either an ‘A-model’ or ‘B-model’,
K(K-1)/2 restrictions have to be imposed, such that the models'
coefficients are identified. For an ‘AB-model’ the number of
restrictions amounts to: K^2 + K(K-1)/2. The unknown parameters
are estimated by a scoring algorithm. The reduced form residuals can
be obtained from the above equation via the relation:
u_t = A^{-1}Bvarepsilon_t, with
variance-covariance matrix Σ_U = A^{-1}BB'A^{-1'}.
Finally, in case of an overidentified SVAR, a likelihood ratio statistic is computed according to:
LR = T(lndet(tilde{Σ}_u^r) - lndet(tilde{Σ}_u)) quad ,
with tilde{Σ}_u^r being the restricted variance-covariance matrix and tilde{Σ}_u being the variance covariance matrix of the reduced form residuals. The test statistic is distributed as chi^2(nr - 2K^2 - frac{1}{2}K(K + 1)), where nr is equal to the number of restrictions.
A list of class ‘svarest
’ with the following elements is
returned:
A |
If A- or AB-model, the matrix of estimated coeffiecients. |
Ase |
If ‘hessian = TRUE ’, the standard errors of
‘A ’, otherwise a null-matrix is returned. |
B |
If A- or AB-model, the matrix of estimated coeffiecients. |
Bse |
If ‘hessian = TRUE ’, the standard errors of
‘B ’, otherwise a null-matrix is returned. |
LRIM |
For Blanchard-Quah estimation LRIM is the estimated
long-run impact matrix; for all other SVAR models LRIM is
NULL . |
Sigma.U |
The variance-covariance matrix of the reduced form residuals times 100, i.e., Σ_U = A^{-1}BB'A^{-1'} times 100. |
LR |
Object of class ‘code{htest}’, holding the Likelihood ratio overidentification test. |
opt |
Is set to NULL for function SVAR2() . |
start |
Vector of starting values. |
type |
SVAR-type, character, either ‘A-model’, ‘B-model’ or ‘AB-model’. |
var |
The ‘varest ’ object ‘x ’. |
call |
The call to SVAR() . |
Bernhard Pfaff
Amisano, G. and C. Giannini (1997), Topics in Structural VAR Econometrics, 2nd edition, Springer, Berlin.
Breitung, J., R. Brüggemann and H. Lütkepohl (2004), Structural vector autoregressive modeling and impulse responses, in H. Lütkepohl and M. Krätzig (editors), Applied Time Series Econometrics, Cambridge University Press, Cambridge.
Hamilton, J. (1994), Time Series Analysis, Princeton University Press, Princeton.
Lütkepohl, H. (2006), New Introduction to Multiple Time Series Analysis, Springer, New York.
data(Canada) varcad <- VAR(Canada, p = 2, type = "const") Ra <- matrix(0, nrow = 16, ncol = 5) Ra[1, 1] <- 1 Ra[4, 2] <- 1 Ra[6, 3] <- 1 Ra[11, 4] <- 1 Ra[16, 5] <- 1 ra <- rep(0, 16) SVAR2(x = varcad, Ra = Ra, Rb = NULL, ra = ra, rb = NULL, lrtest = TRUE, start = abs(rnorm(5)), max.iter = 100, maxls = 1000, conv.crit = 1.0e-8)