Learn R Programming

VGAMextra (version 0.0-6)

ARMA.studentt.ff: VGLTSMs Family Functions: Generalized autoregressive moving average model with Student-t errors

Description

For an ARMA model, estimates a 3--parameter Student-\(t\) distribution characterizing the errors plus the ARMA coefficients by MLE usign Fisher scoring. Central Student--t handled currently.

Usage

ARMA.studentt.ff(order = c(1, 0),
                             zero = c("scale", "df"),
                             cov.Reg = FALSE,
                             llocation = "identitylink",
                             lscale    = "loglink",
                             ldf       = "logloglink",
                             ilocation = NULL,
                             iscale = NULL,
                             idf = NULL)

Value

An object of class "vglmff"

(see vglmff-class) to be used by VGLM/VGAM modelling functions, e.g., vglm or vgam.

Arguments

order

Two--entries vector, non--negative. The order $u$ and $v$ of the ARMA model.

zero

Same as studentt3.

cov.Reg

Logical. If covariates are entered, Should these be included in the ARMA model as a Regressand? Default is FALSE, then only embedded in the linear predictors.

llocation, lscale, ldf, ilocation, iscale, idf

Same as studentt3.

Author

Victor Miranda

Details

The normality assumption for time series analysis is relaxed to handle heavy--tailed data, giving place to the ARMA model with shift-scaled Student-\(t\) errors, another subclass of VGLTSMs.

For a univariate time series, say \(y_t\), the model described by this VGLTSM family function is $$ \theta(B)y_t = \phi(B) \varepsilon_t, $$

where \(\varepsilon_t\) are distributed as a shift-scaled Student--\(t\) with \(\nu\) degrees of freedom, i.e., \(\varepsilon_t \sim t(\nu_t, \mu_t, \sigma_t)\). This family functions estimates the location (\(\mu_t\)), scale (\(\sigma_t\)) and degrees of freedom (\(\nu_t\)) parameters, plus the ARMA coefficients by MLE.

Currently only centered Student--t distributions are handled. Hence, the non--centrality parameter is set to zero.

The linear/additive predictors are \(\boldsymbol{\eta} = (\mu, \log \sigma, \log \log \nu)^T,\) where \(\log \sigma\) and \(\nu\) are intercept--only by default.

See Also

ARIMAXff, studentt, vglm.

Examples

Run this code
### Estimate the parameters of the errors distribution for an
## AR(1) model. Sample size = 50

set.seed(20180218)
nn <- 250
y  <- numeric(nn)
ncp   <- 0           # Non--centrality parameter
nu    <- 3.5         # Degrees of freedom.
theta <- 0.45        # AR coefficient
res <- numeric(250)  # Vector of residuals.

y[1] <- rt(1, df = nu, ncp = ncp)
for (ii in 2:nn) {
  res[ii] <- rt(1, df = nu, ncp = ncp)
  y[ii] <- theta * y[ii - 1] + res[ii]
}
# Remove warm up values.
y <- y[-c(1:200)]
res <- res[-c(1:200)]

### Fitting an ARMA(1, 0) with Student-t errors.
AR.stut.er.fit <- vglm(y ~ 1, ARMA.studentt.ff(order = c(1, 0)),
                       data = data.frame(y = y), trace = TRUE)

summary(AR.stut.er.fit)
Coef(AR.stut.er.fit)

# \donttest{
plot(ts(y), col = "red", lty = 1, ylim = c(-6, 6), main = "Plot of series Y with Student-t errors")
lines(ts(fitted.values(AR.stut.er.fit)), col = "blue", lty = 2)
abline( h = 0, lty = 2)
# }



Run the code above in your browser using DataLab