The rgarch package aims to provide a flexible and rich GARCH modelling and testing environment
for the user. Modelling is a simple process of defining a specification and fitting the data.
Inference can be made from summary, various tests and plot methods, while the forecasting,
filtering and simulation methods complete the modelling environment. Finally, specialized
methods are implemented for simulating the parameter distributions and the evaluating their
consistency, and a bootstrap forecast method which takes into account both parameter and
predictive distribution uncertainty.
The testing environment is based on a rolling backtest function which considers the more general context in which GARCH models are based, namely the conditional time varying estimation of density parameters and the implication for their use in analytical risk management measures.
The mean equation allows for AR(FI)MA, arch-in-mean and external regressors, while the variance equation implements a wide variety of univariate garch models as well as the possibility of including external regressors. Finally, a set of rich distributions from the “fBasics” package and Johnson's reparametrized SU from the “gamlss” package are used for modelling innovations.
Over time, the package will grow to add feasible multivariate GARCH models. At present, the Generalized Orthogonal GARCH using Independent Components Analysis (ICA) and Dynamic Conditional Correlation (with multivariate Normal, Laplace and Student distributions) models are fully implemented, with methods for spec, fit, filter, forecast, simulation, and rolling estimation and forecasting, as well as specialized functions to calculate and work with the weighted portfolio conditional density. As of version 1.85, a Copula-GARCH model is implemented with the multivariate Normal and Student distributions and both dynamic base (DCC) and static estimation of the correlation.
|Depends:||R (>= 2.10.0), Rcpp (>= 0.8.5), RcppArmadillo (>= 0.2.5), methods, Matrix, numDeriv, chron, Rsolnp, sandwich, mvtnorm|
While the package has implemented some safeguards, both during pre-estimation as well as the estimation phase,
there is no guarantee of convergence in the fitting procedure. As a result, the fit method allows the user to
input starting parameters as well as keep any parameters from the spec as fixed (including the case of all
The univariate functionality of the packages is contained in the main methods for defining a specification
simulation from fit object
ugarchsim, path simulation from specification object
parameter distribution by simulation
ugarchdistribution, bootstrap forecast
and rolling estimation and forecast
ugarchroll. There are also some functions which enable multiple
fitting of assets in an easy to use wrapper with the option of multicore functionality, namely
multiforecast. Explanations on the available methods
for the returned classes can be found in the documentation for those classes.
As of version 1.78, a separate subset of methods and classes has been included to calculate pure ARFIMA models with constant variance. This subset includes similar functionality as with the GARCH methods, with the exception that no plots are yet implemented, and neither is a forecast based on the bootstrap. These may be added in the future. While there are limited examples in the documentation on the ARFIMA methods, the interested user can search the unit.test folder of the source installation for some tests using ARFIMA models as well as equivalence to the base R arima methods (particularly replication of simulation). Finally, no representation is made about the adequacy of ARFIMA models, particularly the statistical properties of parameters when using distributions which go beyond the Gaussian.
The multivariate functionality, currently supports the GO-GARCH with ICA method, and is available through the
gogarchroll functions. The DCC with multivariate Normal,
Laplace and Student distributions is also supported with the main functionality in
dccroll. The Normal and Student Copula-GARCH, with dynamic or static correlation, is implemented
with the main functionality in
cgarchsim. Usual extractor and support methods for the multivariate GARCH models are documented
in the class of the returned objects.
The univariate conditional distributions used in the package are also exposed for the benefit of the user through the
rgarchdist functions which contain methods for density, distribution, quantile,
sampling and fitting. Additionally, the
provide the necessary parameter transformation and scaling methods for moving from the location scale invariant
‘rho-zeta’ parametrization with mean and standard deviation, to the standard ‘alpha-beta-delta-mu’
parametrization of the Generalized Hyperbolic Distribution family.
The type of data handled by the package is quite varied, accepting “timeSeries”, “xts”, “zoo”, “zooreg”, “data.frame” with dates as rownames, “matrix” and “numeric” vector with dates as names. For the “numeric” vector and “data.frame” with character dates in names or rownames, the package tries a variety of methods to try to recognize the type and format of the date else will index the data numerically. The package holds dates internally as class
This mostly impacts the plots and forecast summary methods. For high frequency data, the user should make use of
a non-named representation such as “matrix” or “numeric” as the package has yet
to implement methods for checking and working with frequencies higher than daily. Finally, the functions
WeekDayDummy offer some simple Date manipulation methods for
working with forecast dates and creating day of the week dummy variables for use in GARCH modelling.
Some benchmarks (published and comparison with commercial package), are available through the
ugarchbench function. The ‘inst’ folder of the source distribution also contains
various tests which can be sourced and run by the user, also exposing some finer details of the functionality
of the package. The user should really consult the examples supplied in this folder which are quite numerous
and instructive with some comments.
Whenever using this package, please cite as
1 2 3 4 5
The releases of this package is licensed under GPL version 3.
Baillie, R.T. and Bollerslev, T. and Mikkelsen,H.O. Fractionally integrated generalized autoregressive conditional heteroskedasticity, 1996, Journal of Econometrics, 3-30 .
Berkowitz, J. Testing density forecasts, with applications to risk management, 2001, Journal of Business and Economic Statistics, 19, 4, 465-474.
Bollerslev, T. Generalized Autoregressive Conditional Heteroskedasticity, 1986, Journal of Econometrics, 31, 307-327.
Broda, S.A. and Paolella, M.S. CHICAGO: A Fast and Accurate Method for Portfolio Risk Calculation, 2009, Journal of Financial Econometrics 7(4), 412-436 .
Croux, C. and Joossens, K. Robust estimation of the vector autoregressive model by a least trimmed squares procedure, 2008, COMPSTAT, 489-501.
Chung, C.F. Estimating the Fractionally Integrated GARCH Model, 1999, National Taiwan University working paper.
Ding, Z., Granger, C.W.J. and Engle, R.F. A Long Memory Property of Stock Market Returns and a New Model, 1993, Journal of Empirical Finance, 1, 83-106.
de Athayde, G.M. and Flores Jr, R.G. On Certain Geometric Aspects of Portfolio Optimisation with Higher Moments, 2002, mimeo.
Engle, R.F. and Ng, V. K. Measuring and Testing the Impact of News on Volatility, 1993, Journal of Finance, 48, 1749-1778.
Engle, R.F. Dynamic conditional correlation, 2002, Journal of Business and Economic Statistics, 20, 339-350.
Genest, C., Ghoudi, K. and Rivest, L. A semiparametric estimation procedure of dependence parameters in multivariate families of distributions, 1995, Biometrika, 82, 543-552.
Glosten, L.R., Jagannathan, R. and Runkle, D.E. On the Relation between the Expected Value and the Volatility of the Nominal Excess Return on Stocks, 1993, Journal of Finance, vol. 48(5), 1779-1801.
Hansen, B.E. Langrange Multiplier Tests for Parameter Instability in Non-Linear Models, 1990, mimeo.
Hentschel, Ludger. All in the family Nesting symmetric and asymmetric GARCH models, 1995, Journal of Financial Economics, vol. 39, issue 1, 71-104.
Joe, H. Multivariate Models and Dependence Concepts, 1997, Chapman \& Hall, London.
Jorion,P. Value at Risk, 2001, McGraw-Hill
Nelson, D.B.Conditional Heteroskedasticity in Asset Returns: A New Approach,1991, Econometrica, Vol. 59,347-370. Pascual, L., Romo, J., Ruiz, E., Bootstrap predictive inference for ARIMA processes, 2004, Journal of Time Series Analysis.
Pascual, L., Romo, J., Ruiz, E., Bootstrap prediction for returns and volatilities in GARCH models, 2006, Computational Statistics and Data Analysis.
Paolella, M.S.Intermediate Probability - A Computational Approach, 2007, Wiley-Interscience.
Schmidt, R., Hrycej, T. and Stutzle Multivariate distribution models with generalized hyperbolic margins, 2006, Computational Statistics \& Data Analysis 50(8), 2065-2096.
Vlaar, P.J.G. and Palm, F.C. The Message in Weekly Exchange Rates in the European Monetary System: Mean Reversion, Conditional Heteroskedasticity and Jumps, 1993, Journal of Business and Economic Statistics, 11, 351-360.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.