Complete rewrite. The version 1.1 interface (gsFit,
gsSpec, gsSim, gsSelect, S4
classes) is replaced; the package was archived on CRAN in 2020, so no
compatibility layer is provided.
libstable4u), GEV and GAt. Normal, t, skew t and GED
innovations are left to fGarch and rugarch; S1 and S2 stable
parametrizations and the stable package are dropped.gs_dist(), which requires every field the machinery needs
(including when moments exist) and checks them against each other
(gs_check_dist()).gs_spec(), gs_model(): specification and
parameters as plain lists.gs_fit(): maximum likelihood on internally rescaled
data, sqp (Rsolnp) or nlminb, warm starts
through start, optional Hessian, standard errors set to
NA with a warning when a parameter is on a bound or the
Hessian is not usable, persistence warning. It records convergence
diagnostics in $diagnostics (scaled gradient, Hessian
reciprocal condition number and definiteness, optimizer iterations) and
warns when the gradient is not near zero, the Hessian is ill
conditioned, or the iteration cap is hit.gs_bootstrap(): parametric bootstrap standard errors
and percentile confidence intervals, recommended over the Hessian errors
near a boundary and for GEV innovations, whose support depends on the
shape parameter.gs_sim(), predict(): simulation and
forecasting (exact one step, APARCH recursion and simulated paths
beyond).gs_stationarity(),
gs_aparch_moment().coef, vcov,
logLik, residuals (raw, standardized, pit),
sigma, fitted, print.mu is the intercept, the unconditional location
is mu / (1 - sum(ar)).mean(|e|^delta), which is
scale equivariant. Starting from fGarch’s own initial value, the
likelihood reproduces fGarch exactly for GARCH and APARCH models.sqp.restriction algorithm is not available).delta is no longer bounded below by 1
for stable innovations; delta < stable_alpha is enforced
instead. Version 1.1 estimates at delta = 1 were on that
bound.pgat() kept only a few digits next to zero; it now uses
the exact upper beta tail.delta
above the innovation moment bound, or a non-stationary AR polynomial)
instead of a flat constant. The objective slopes back toward the
feasible region, so the optimizer no longer stalls on a flat
plateau.libstable4u is about 90 times
faster than stabledist (2000 points: 31 ms against 2.9 s).
A stable AR(1)-APARCH(1,1) fit on 2000 observations takes about 20
seconds with standard errors and 3 seconds from a warm start
(dev/bench/bench_stable_density.R).