Last chance! 50% off unlimited learning
Sale ends in
Estimates an SVAR (either ‘A-model’, ‘B-model’ or
‘AB-model’) by using a scoring algorithm or by directly
minimising the negative log-likelihood with optim()
.
SVAR(x, estmethod = c("scoring", "direct"), Amat = NULL, Bmat = NULL,
start = NULL, max.iter = 100, conv.crit = 0.1e-6, maxls = 1.0,
lrtest = TRUE, ...)
# S3 method for svarest
print(x, digits = max(3, getOption("digits") - 3), ...)
A list of class ‘svarest
’ with the following elements is
returned:
If A- or AB-model, the matrix of estimated coefficients.
The standard errors of ‘A
’.
If A- or AB-model, the matrix of estimated coefficients.
The standard errors of ‘B
’.
For Blanchard-Quah estimation LRIM
is the estimated
long-run impact matrix; for all other SVAR models LRIM
is
NULL
.
The variance-covariance matrix of the reduced form
residuals times 100, i.e.,
Object of class ‘htest
’, holding the Likelihood
ratio overidentification test.
List object returned by optim()
.
Vector of starting values.
SVAR-type, character, either ‘A-model’, ‘B-model’ or ‘AB-model’.
The ‘varest
’ object ‘x
’.
Integer, the count of iterations.
The call
to SVAR()
.
Object of class ‘varest
’; generated by
VAR()
.
Character, either scoring for estimating the SVAR-model with the scoring algorithm (default), or directly minimizing the negative log-likelihood.
Vector with starting values for the parameters to be optimised.
Logical, over-identification LR test, the result is set
to NULL
for just-identified system.
Integer, maximum number of iteration (used if
estmethod = "scoring"
).
Real, convergence value of algorithm (used if
estmethod = "scoring"
).
Real, maximum movement of the parameters between two
iterations of the scoring algorithm (used if
estmethod = "scoring"
).
Matrix with dimension
Matrix with dimension
the number of significant digits to use when printing.
further arguments passed to or from other methods.
Bernhard Pfaff
Consider the following structural form of a k-dimensional vector autoregressive model:
The coefficient matrices ?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 case
of a SVAR ‘A-model’,
For an ‘A-model’ a Amat
’ and the functional
argument ‘Bmat
’ must be set to ‘NULL
’ (the
default). Hereby, the to be estimated elements of ‘Amat
’
have to be set as ‘NA
’. Conversely, for a
‘B-model’ a matrix object with dimension NA
’ at the positions of the to be
estimated parameters has to be provided and the functional argument
‘Amat
’ is ‘NULL
’ (the default). Finally,
for an ‘AB-model’ both arguments, ‘Amat
’ and
‘Bmat
’, have to be set as matrix objects containing
desired restrictions and ‘NA
’ values. The parameters are
estimated by minimising the negative of the concentrated
log-likelihood function:
Two alternatives are implemented for this: a scoring algorithm or
direct minimization with optim()
. If the latter is chosen, the
standard errors are returned if SVAR()
is called with
‘hessian = TRUE
’.
If ‘start
’ is not set, then 0.1
is used as
starting values for the unknown coefficients.
The reduced form residuals can be obtained from the above equation
via the relation:
Finally, in case of an overidentified SVAR, a likelihood ratio statistic is computed according to:
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.
VAR
, SVEC
, logLik
,
irf
, fevd
data(Canada)
var.2c <- VAR(Canada, p = 2, type = "const")
amat <- diag(4)
diag(amat) <- NA
amat[2, 1] <- NA
amat[4, 1] <- NA
## Estimation method scoring
SVAR(x = var.2c, estmethod = "scoring", Amat = amat, Bmat = NULL,
max.iter = 100, maxls = 1000, conv.crit = 1.0e-8)
## Estimation method direct
SVAR(x = var.2c, estmethod = "direct", Amat = amat, Bmat = NULL,
hessian = TRUE, method="BFGS")
Run the code above in your browser using DataLab