predict-s_semiarma-method: Point and Interval Forecasts for Seasonal Semi-ARMA Models

predict,s_semiarma-methodR Documentation

Point and Interval Forecasts for Seasonal Semi-ARMA Models

Description

Obtain point and interval forecasts based on fitted Seasonal Semi-ARMA models.

Usage

## S4 method for signature 's_semiarma'
predict(
  object,
  n.ahead = 1,
  intervals = TRUE,
  alpha = c(0.95, 0.99),
  method = c("norm", "boot"),
  bootMethod = c("simple", "advanced"),
  npaths = 5000,
  quant.type = 8,
  expo = FALSE,
  adjust.bias = TRUE,
  ...
)

Arguments

object

an object of class "s_semiarma".

n.ahead

a numeric vector of length one that represents the forecasting horizon; assume that object is based on observations at time points t=1,2,\dots,n; forecasts are then obtained for time points t=n+1,n+2,\dots,n+\code{n.ahead}; the default is n.ahead = 1.

intervals

a logical vector of length one that indicates whether or not forecasting intervals should be obtained; the default is intervals = TRUE.

alpha

a numeric vector of variable length that indicates the confidence levels at which to obtain forecasting intervals; the default is alpha = c(0.95, 0.99), i.e. confidence levels of 95 and 99 percent.

method

a character vector that indicates the method used to obtain forecasting intervals; available are theoretical intervals based on the assumption of normal innovations ("norm") and intervals through a bootstrap ("boot"); the default is method = "norm".

bootMethod

a character vector that allows the user to select a bootstrap procedure for the forecasting intervals when method = "boot" is selected; the default bootMethod = "simple" simulates future observations by resampling the obtained residuals; the second approach bootMethod = "advanced" also considers the variation in the ARMA coefficient estimates by simulating and reestimating complete ARMA paths upon which forecasts are obtained (see also the B-ARMARoots algorithm in Lu and Wang, 2020); the second approach is often time-consuming.

npaths

the number of paths to simulate, if the forecasting intervals are obtained via a bootstrap.

quant.type

the method to obtain sample quantiles from the simulated forecasting errors; see also the argument type of the function quantile.

expo

a logical vector of length one; indicates whether the forecasting results should be exponentiated at the end; the default is expo = FALSE.

adjust.bias

a logical vector of length one; indicates whether or not the point forecasts should have a bias adjustment when simultaneously expo = TRUE; the default is TRUE; for TRUE, the point forecasts on the exponentiated scale will be mean forecasts.

...

only for comparability with the standard predict method.

Details

Assume a Seasonal Semi-ARMA model was fitted using s_semiarma. Pass the resulting object to this method, in order to obtain point and interval forecasts.

If expo = TRUE and adjust.bias = TRUE, the point forecasts will be exponentiated and adjusted for bias, so that the resulting forecasts can be seen as mean forecasts on the exponentiated scale. Forecasting intervals do not need such an adjustment. For expo = FALSE, no adjustment will be done. Let y_{n+k} be the forecast on the log-scale (with n as the number of observations and k as the forecast horizon). Under method = "norm", we use \exp{y_{n+k}}\exp{\sigma_h^2 / 2} as the bias-adjusted point forecast, where \sigma_h^2 / 2 is the estimated variance of the prediction error in accordance with the infinite-order moving-average representation of the fitted ARMA model part. For method = "boot", the sample mean of future simulated paths on the exponentiated scale is obtained.

Value

A list with the following elements is returned.

pred

the obtained point forecasts.

interv

the obtained forecasting intervals.

obs

the observation series.

ts_name

the name of the observation series object.

Author(s)

  • Dominik Schulz (Research Assistant) (Department of Economics, Paderborn University),
    Author and Package Creator

Examples


xt <- log(EXPENDITURES)
est <- s_semiarma(xt)
predict(est, n.ahead = 10)



deseats documentation built on March 16, 2026, 5:08 p.m.