Method for creating a univariate GARCH specification object prior to fitting.
ugarchspec(variance.model = list(model = "sGARCH", garchOrder = c(1, 1),
submodel = NULL, external.regressors = NULL, variance.targeting = FALSE),
mean.model = list(armaOrder = c(1, 1), include.mean = TRUE, archm = FALSE,
archpow = 1, arfima = FALSE, external.regressors = NULL, archex = FALSE),
distribution.model = "norm", start.pars = list(), fixed.pars = list(), ...)
A uGARCHspec
object containing details of the GARCH
specification.
List containing the variance model specification:
model
Valid models (currently implemented) are “sGARCH”,
“fGARCH”, “eGARCH”, “gjrGARCH”, “apARCH” and
“iGARCH” and “csGARCH”.
garchOrder
The ARCH (q) and GARCH (p) orders.
submodel
If the model is “fGARCH”, valid submodels are
“GARCH”, “TGARCH”, “AVGARCH”, “NGARCH”,
“NAGARCH”, “APARCH”,“GJRGARCH” and “ALLGARCH”.
external.regressors
A matrix object containing the external regressors to
include in the variance equation with as many rows as will be included in the
data (which is passed in the fit function).
variance.targeting
(Logical or Numeric) If logical, indicates whether to use
variance targeting for the conditional variance intercept “omega”, else
if numeric, the value provided is used instead of the unconditional variance for
the calculation of the intercept (in combination with the persistence value).
Care should be taken if using the numeric option for apARCH and fGARCH models
since the intercept is not the variance but sigma raised to the power of some
positive value. Finally, if scaling is used (from the fit.control option
in ugarchfit
), the value provided is adjusted accordingly by the
routine.
List containing the mean model specification:
armaOrder
The autoregressive (ar) and moving average (ma) orders (if any).
include.mean
Whether to include the mean.
archm
Whether to include ARCH volatility in the mean regression.
archpow
Indicates whether to use st.deviation (1) or variance (2) in the
ARCH in mean regression.
arfima
Whether to fractional differencing in the ARMA regression.
external.regressors
A matrix object containing the external regressors to
include in the mean equation with as many rows as will be included in the data
(which is passed in the fit function).
archex
(integer) Whether to multiply the last 'archex' external regressors
by the conditional standard deviation.
The conditional density to use for the innovations. Valid choices are “norm” for the normal distibution, “snorm” for the skew-normal distribution, “std” for the student-t, “sstd” for the skew-student, “ged” for the generalized error distribution, “sged” for the skew-generalized error distribution, “nig” for the normal inverse gaussian distribution, “ghyp” for the Generalized Hyperbolic, and “jsu” for Johnson's SU distribution. Note that some of the distributions are taken from the fBasics package and implenented locally here for convenience. The “jsu” distribution is the reparametrized version from the “gamlss” package.
List of staring parameters for the optimization routine. These are not usually required unless the optimization has problems converging.
List of parameters which are to be kept fixed during the optimization. It is
possible that you designate all parameters as fixed so as to quickly recover
just the results of some previous work or published work. The optional argument
“fixed.se” in the ugarchfit
function indicates whether to
calculate standard errors for those parameters fixed during the post
optimization stage.
.
Alexios Ghalanos
The specification allows for a wide choice in univariate GARCH models,
distributions, and mean equation modelling. For the “fGARCH” model,
this represents Hentschel's omnibus model which subsumes many others.
For the mean equation, ARFIMAX is fully supported in fitting, forecasting and
simulation. There is also an option to multiply the external regressors by
the conditional standard deviation, which may be of use for example in
calculating the correlation coefficient in a CAPM type setting.
The “iGARCH” implements the integrated GARCH model. For the “EWMA”
model just set “omega” to zero in the fixed parameters list.
The asymmetry term in the rugarch package, for all implemented models, follows
the order of the arch parameter alpha
.
Variance targeting, referred to in Engle and Mezrich (1996), replaces the
intercept “omega” in the variance equation by 1 minus the persistence
multiplied by the unconditional variance which is calculated by its sample
counterpart in the squared residuals during estimation. In the presence of
external regressors in the variance equation, the sample average of the external
regresssors is multiplied by their coefficient and subtracted from the
variance target.
In order to understand which parameters can be entered in the start.pars and
fixed.pars optional arguments, the list below exposes the names used for the
parameters across the various models:(note that when a parameter is followed by
a number, this represents the order of the model. Just increment the number
for higher orders, with the exception of the component sGARCH permanent
component parameters which are fixed to have a lag-1 autoregressive structure.):
Mean Model
constant: mu
AR term: ar1
MA term: ma1
ARCH-in-mean: archm
exogenous regressors: mxreg1
arfima: arfima
Distribution Model
skew: skew
shape: shape
ghlambda: lambda (for GHYP distribution)
Variance Model (common specs)
constant: omega
ARCH term: alpha1
GARCH term: beta1
exogenous regressors: vxreg1
Variance Model (GJR, EGARCH)
assymetry term: gamma1
Variance Model (APARCH)
assymetry term: gamma1
power term: delta
Variance Model (FGARCH)
assymetry term1 (rotation): eta11
assymetry term2 (shift): eta21
power term1(shock): delta
power term2(variance): lambda
Variance Model (csGARCH)
permanent component autoregressive term (rho): eta11
permanent component shock term (phi): eta21
permanent component intercept: omega
transitory component ARCH term: alpha1
transitory component GARCH term: beta1
The terms defined above are better explained in the vignette which provides each model's specification and exact representation. For instance, in the eGARCH model, both alpha and gamma jointly determine the assymetry, and relate to the magnitude and sign of the standardized innovations.
# a standard specification
spec1 = ugarchspec()
spec1
# an example which keep the ar1 and ma1 coefficients fixed:
spec2 = ugarchspec(mean.model=list(armaOrder=c(2,2),
fixed.pars=list(ar1=0.3,ma1=0.3)))
spec2
# an example of the EWMA Model
spec3 = ugarchspec(variance.model=list(model="iGARCH", garchOrder=c(1,1)),
mean.model=list(armaOrder=c(0,0), include.mean=TRUE),
distribution.model="norm", fixed.pars=list(omega=0))
Run the code above in your browser using DataLab