goGARCHfilter-class: class: GO-GARCH Filter Class

Description Objects from the Class Slots Extends Methods Note Author(s) References

Description

Class for the GO-GARCH filtered object.

Objects from the Class

The class is returned by calling the function gogarchfilter and is mainly called by gogarchfit when the “out.sample” option is used.

Slots

mfilter:

Multivariate filter object.

model:

Object of class "vector" containing details of the GOGARCH model specification.

Extends

Class "mGARCHfilter", directly. Class "GARCHfilter", by class "mGARCHfilter", distance 2. Class "rGARCH", by class "mGARCHfilter", distance 3.

Methods

as.matrix

signature(x = "goGARCHfilter"):
function:
as.matrix(x, which = "A")
This returns four types of matrices relating to the estimation of the independent components in the GO-GARCH model. Valid choices are “A” for the mixing matrix, “W” for the unmixing matrix, “U” for the rotational matrix and “K” for the whitening matrix, “Kinv” for the de-whitening matrix.

likelihood

signature(object = "goGARCHfilter"): The quasi log-likelihood of the model, which being an independent factor model is the sum of the univariate GARCH log-likelihoods plus a term for the mixing matrix. For a dimensionality reduced system, this is NA.

coef

signature(object = "goGARCHfilter"): Extraction of independent factor GARCH model coefficients.

fitted

signature(object = "goGARCHfilter"): Extracts the conditional mean equation filtered values.

residuals

signature(object = "goGARCHfilter"): Extracts the conditional mean equation residuals.

convolution

signature(object = "goGARCHfilter"):
function:
convolution(object, weights, fft.step = 0.001, fft.by = 0.0001, fft.support = c(-1, 1), support.method = c("user", "adaptive"), use.ff = TRUE, cluster = NULL, trace = 0,...)
The convolution method takes a goGARCHfit object and a weights vector or matrix and calculates the weighted density. If a vector is given, it must be the same length as the number of assets, otherwise a matrix with row dimension equal to the row dimension of the filtered dataset (i.e. less any lags). In the case of the multivariate normal distribution, this simply returns the linear and quadratic transformation of the mean and covariance matrix, while in the multivariate affine NIG distribution this is based on the numerical inversion by FFT of the characteristic function. In that case, the “fft.step” option determines the stepsize for tuning the characteristic function inversion, “fft.by” determines the resolution for the equally spaced support given by “fft.support”, while the use of the “ff” package is recommended to avoid memory problems on some systems and is turned on via the “use.ff” option. The “support.method” option allows either a fixed support range to be given (option ‘user’), else an adaptive method is used based on the min and max of the assets at each point in time at the 0.00001 and 1-0.00001 quantiles. The range is equally spaced subject to the “fft.by” value but the returned object no longer makes of the “ff” package returning instead a list. Finally, the option for parallel computation is available via the use of a cluster object as elsewhere in this package.

nisurface

signature(object = "goGARCHfilter"):
function:
nisurface(object, type = "cov", pair = c(1, 2), factor = c(1,2), plot = TRUE)
Creates the covariance or correlation (determined by “type” being either “cov” or “cor”) news impact surface for a pair of assets and factors. Since the shocks impact the factors independently, the news impact surface is a combination of the independent news impact curves of the factors which when combined via the mixing matrix A, create the dynamics for the underlying asset-factor surface function

portmoments

signature(object = "goGARCHfilter"):
function:
gportmoments(object, weights)
Calculates the first 4 portfolio moments using the geometric properties of the model, given a vector or matrix of asset weights. If a matrix is given it must have row dimension equal to the row dimension of the filtered dataset (i.e. less any lags), else if a vector is given it will be replicated for all time points.

rcoskew

signature(object = "goGARCHfilter") function:
rcoskew(object, standardize = TRUE, from = 1, to = 1)
Returns the 'time-varying' NxN^2 coskewness tensor in array format. The “from” and “to” options indicate the time indices for which to return the arrays. Because of memory issues, this is limited to 100 indices per call.

rcokurt

signature(object = "goGARCHfilter") function:
rcokurt(object, standardize = TRUE, from = 1, to = 1)
Returns the 'time-varying' NxN^3 cokurtosis tensor in array format. The “from” and “to” options indicate the time indices for which to return the arrays. Because of memory issues, this is limited to models with less than 100 assets.

rcov

signature(object = "goGARCHfilter"): Returns the time-varying NxN covariance matrix in array format. A further argument ‘output’ allows to switch between “array” and “matrix” returned object.

rcor

signature(object = "goGARCHfilter"): Returns the time-varying NxN correlation matrix in array format. A further argument ‘output’ allows to switch between “array” and “matrix” returned object.

betacovar

signature(object = "goGARCHfilter"): function:
betacovar(object, weights, asset = 1, cluster = NULL)
Returns the covariance beta given a matrix (of length equal to the number of rows of the original data, or vector which is then recycled to the number of rows of the original data) of benchmark weights and the asset number.

betacoskew

signature(object = "goGARCHfilter"): function:
betacoskew(object, weights, asset = 1, cluster = NULL)
Returns the coskewness beta given a matrix (of length equal to the number of rows of the original data, or vector which is then recycled to the number of rows of the original data) of benchmark weights and the asset number.

betacokurt

signature(object = "goGARCHfilter"): function:
betacokurt(object, weights, asset = 1, cluster = NULL)
Returns the cokurtosis beta given a matrix (of length equal to the number of rows of the original data, or vector which is then recycled to the number of rows of the original data) of benchmark weights and the asset number.

show

signature(object = "goGARCHfilter"): Summary method.

Note

The reference by Paolella (2007) contains more details on the algorithm for the characteristic function inversion via FFT. The application of this method in a related model can be found in Chen (2007). The de Athayde and Flores (2002) paper is the basis for the geometric properties of the higher moment tensors in finance.

Author(s)

Alexios Galanos

References

de Athayde, G.M. and Flores Jr, R.G. 2002, On Certain Geometric Aspects of Portfolio Optimisation with Higher Moments, mimeo.
Broda, S.A. and Paolella, M.S. 2009, CHICAGO: A Fast and Accurate Method for Portfolio Risk Calculation, Journal of Financial Econometrics 7(4), 412–436 .
Paolella, M.S. 2007, Intermediate Probability - A Computational Approach, Wiley-Interscience.
Schmidt, R., Hrycej, T. and Stutzle 2006, Multivariate distribution models with generalized hyperbolic margins, Computational Statistics \& Data Analysis 50(8), 2065-2096.


rmgarch documentation built on Feb. 5, 2022, 1:07 a.m.