tegarch {betategarch} | R Documentation |
Estimate first order Beta-Skew-t-EGARCH models
Description
Fits a first order Beta-Skew-t-EGARCH model to a univariate time-series by exact Maximum Likelihood (ML) estimation. Estimation is via the nlminb
function
Usage
tegarch(y, asym = TRUE, skew = TRUE, components = 1, initial.values = NULL,
lower = NULL, upper = NULL, hessian = TRUE, lambda.initial = NULL,
c.code = TRUE, logl.penalty = NULL, aux = NULL, ...)
Arguments
y |
numeric vector, typically a financial return series. |
asym |
logical. TRUE (default) includes leverage or volatility asymmetry in the log-scale specification |
skew |
logical. TRUE (default) enables and estimates the skewness in conditional density (epsilon). The skewness method is that of Fernandez and Steel (1998) |
components |
Numeric value, either 1 (default) or 2. The former estimates a 1-component model, the latter a 2-component model |
initial.values |
NULL (default) or a vector with the initial values. If NULL, then the values are automatically chosen according to model (with or without skewness, 1 or 2 components, etc.) |
lower |
NULL (default) or a vector with the lower bounds of the parameter space. If NULL, then the values are automatically chosen |
upper |
NULL (default) or a vector with the upper bounds of the parameter space. If NULL, then the values are automatically chosen |
hessian |
logical. If TRUE (default) then the Hessian is computed numerically via the optimHess function. Setting hessian=FALSE speeds up estimation, which might be particularly useful in simulation. However, it also slows down the extraction of the variance-covariance matrix by means of the vcov method. |
lambda.initial |
NULL (default) or a vector with the initial value(s) of the recursion for lambda and lambdadagger. If NULL then the values are chosen automatically |
c.code |
logical. TRUE (default) is faster since it makes use of compiled C-code |
logl.penalty |
NULL (default) or a numeric value. If NULL then the log-likelihood value associated with the initial values is used. Sometimes estimation can result in NA and/or +/-Inf values, which are fatal for simulations. The value logl.penalty is the value returned by the log-likelihood function in the presence of NA or +/-Inf values |
aux |
NULL (default) or a list, se code. Useful for simulations (speeds them up) |
... |
further arguments passed to the nlminb function |
Value
Returns a list of class 'tegarch' with the following elements:
y |
the series used for estimation. |
date |
date and time of estimation. |
initial.values |
initial values used in estimation. |
lower |
lower bounds used in estimation. |
upper |
upper bounds used in estimation. |
lambda.initial |
initial values of lambda provided by the user, if any. |
model |
type of model estimated. |
hessian |
the numerically estimated Hessian. |
sic |
the value of the Schwarz (1978) information criterion. |
par |
parameter estimates. |
objective |
value of the log-likelihood at the maximum. |
convergence |
an integer code. 0 indicates successful convergence, see the documentation of nlminb. |
iterations |
number of iterations, see the documentation of nlminb. |
evaluations |
number of evaluations of the objective and gradient functions, see the documentation of nlminb. |
message |
a character string giving any additional information returned by the optimizer, or NULL. For details, see PORT documentation and the nlminb documentation. |
NOTE |
an additional message returned if one tries to estimate a 2-component model without leverage. |
Note
Empty
Author(s)
Genaro Sucarrat, http://www.sucarrat.net/
References
Fernandez and Steel (1998), 'On Bayesian Modeling of Fat Tails and Skewness', Journal of the American Statistical Association 93, pp. 359-371.
Nelson, Daniel B. (1991): 'Conditional Heteroskedasticity in Asset Returns: A New Approach', Econometrica 59, pp. 347-370.
Harvey and Sucarrat (2014), 'EGARCH models with fat tails, skewness and leverage'. Computational Statistics and Data Analysis 76, pp. 320-338.
Schwarz (1978), 'Estimating the Dimension of a Model', The Annals of Statistics 6, pp. 461-464.
Sucarrat (2013), 'betategarch: Simulation, Estimation and Forecasting of First-Order Beta-Skew-t-EGARCH models'. The R Journal (Volume 5/2), pp. 137-147.
See Also
tegarchSim
, coef.tegarch
, fitted.tegarch
, logLik.tegarch
, predict.tegarch
, print.tegarch
, residuals.tegarch
, summary.tegarch
, vcov.tegarch
Examples
##simulate series with 500 observations:
set.seed(123)
y <- tegarchSim(500, omega=0.01, phi1=0.9, kappa1=0.1, kappastar=0.05,
df=10, skew=0.8)
##estimate a 1st. order Beta-t-EGARCH model and store the output in mymod:
mymod <- tegarch(y)
#print estimates and standard errors:
print(mymod)
#graph of fitted volatility (conditional standard deviation):
plot(fitted(mymod))
#graph of fitted volatility and more:
plot(fitted(mymod, verbose=TRUE))
#plot forecasts of volatility 1-step ahead up to 20-steps ahead:
plot(predict(mymod, n.ahead=20))
#full variance-covariance matrix:
vcov(mymod)