locpol_spec {fEGarch}R Documentation

Specification of Nonparametric Local Polynomial Models

Description

Specify the nonparametric local polynomial model part in a semiparametric volatility model.

Usage

locpol_spec(
  poly_order = c(3, 1),
  kernel_order = c(1, 0, 2, 3),
  boundary_method = c("extend", "shorten"),
  bwidth = NULL
)

Arguments

poly_order

a single numeric value, in detail either 1 or 3, that represents the local polynomial order.

kernel_order

a single numeric value representing the smoothness of the underlying kernel function; available are 0 (uniform), 1 (epanechnikov), 2 (bisquare), and 3 (triweight).

boundary_method

a single character value indicating the smoothing concept to use at boundary points; for "extend", the smoothing window is extended toward the interior by the amount that is lost toward the boundary; for "shorten", there is no compensation in the smoothing window toward the interior for the loss of window width toward the boundary, i.e. the total smoothing window width reduces more and more when getting closer to the first and last time points.

bwidth

the smoothing bandwidth; for NULL, i.e. the default, an automated bandwidth selection is employed; otherwise a single numeric value between 0 and 0.5 must be provided.

Details

Assume that a time series \{r_t\}, t=1,\dots,n, follows

r_t = \mu + \sigma_t \eta_t,

where \mu = E(r_t) and \eta_t are independent and identically distributed random variables with mean zero and variance one. \sigma_t > 0 are total volatilities composed of s(x_t), a smooth, deterministic scale function in the unconditional variance over time (with x_t being the rescaled time on the interval [0, 1]), and of \lambda_t, the conditional standard deviation in \zeta_t=\lambda_t\eta_t, so that \sigma_t = s(x_t)\lambda_t, or alternatively r_t = \mu + s(x_t)\zeta_t. It is assumed that the unconditional variance of the \zeta_t is one.

The package's estimation of \sigma_t is based on the following relations:

r_t^{*} = r_t - \mu, y_t=\ln\left[\left(r_t^{*}\right)^2\right], C_{\mu}=E\left[\ln\left(\zeta_t^2\right)\right], m(x_t) = \ln\left[s^2 (x_t)\right] + C_{\mu}, \xi_t = \ln\left(\zeta_t^2\right) - C_{\mu}, so that

y_t = m(x_t)+\xi_t,

where m describes a smooth, deterministic trend in y_t. Nonparametric estimation of m and subsequent retransformation allows to obtain a suitable estimate of the scale function s in r_t. Following Feng et al. (2022) and Letmathe et al. (2023), we employ local polynomial regression with automatically selected bandwidth (specially for the time-series context). The function locpol_spec allows to set the basic characteristics of the local polynomial estimator considered, like the order of polynomial used in the local regressions, and the kernel function order. After the scale function has been estimated, a zero-mean GARCH-type model can be fitted to the estimated \zeta_t.

Depending on whether \zeta_t is assumed to follow a short-memory or a long-memory model, the bandwidth selection algorithm in the local polynomial regression step differs and follows either Feng et al. (2022) and Letmathe et al. (2023). The algorithm selection is done automatically based on the remaining model specifications in the call to the estimation functions like fEGarch.

Value

An object of class "locpol_spec" is returned.

References

Examples

locpol_spec()
locpol_spec(poly_order = 1)
locpol_spec(kernel_order = 2)


[Package fEGarch version 1.0.1 Index]