NNS.ARMA: NNS ARMA

Description Usage Arguments Value Note Author(s) References Examples

View source: R/ARMA.R

Description

Autoregressive model incorporating nonlinear regressions of component series.

Usage

1
2
3
NNS.ARMA(variable, h = 1, training.set = NULL, seasonal.factor = TRUE,
  best.periods = 2, negative.values = FALSE, method = "nonlin",
  dynamic = FALSE, plot = TRUE, seasonal.plot = TRUE, intervals = FALSE)

Arguments

variable

a numeric vector.

h

integer; 1 (default) Number of periods to forecast.

training.set

numeric; NULL (defualt) Sets the number of variable observations

(variable[1 : training.set]) to monitor performance of forecast over in-sample range.

seasonal.factor

logical or integer(s); TRUE (default) Automatically selects the best seasonal lag from the seasonality test. To use weighted average of all seasonal lags set to (seasonal.factor = FALSE). Otherwise, directly input known frequency integer lag to use, i.e. (seasonal.factor = 12) for monthly data. Multiple frequency integers can also be used, i.e. (seasonal.factor = c(12, 24, 36))

best.periods

integer; [2] (default) used in conjuction with (seasonal.factor = FALSE), uses the best.periods number of detected seasonal lags instead of ALL lags when

(seasonal.factor = FALSE).

negative.values

logical; FALSE (default) If the variable can be negative, set to (negative.values = TRUE).

method

options: ("lin", "nonlin", "both"); "nonlin" (default) To select the regression type of the component series, select (method = "both") where both linear and nonlinear estimates are generated. To use a nonlineaer regression, set to (method = "nonlin"); to use a linear regression set to (method = "lin").

dynamic

logical; FALSE (default) To update the seasonal factor with each forecast point, set to (dynamic = TRUE). The default is (dynamic = FALSE) to retain the original seasonal factor from the inputted variable for all ensuing h.

plot

logical; TRUE (default) Returns the plot of all periods exhibiting seasonality and the variable level reference in upper panel. Lower panel returns original data and forecast.

seasonal.plot

logical; TRUE (default) Adds the seasonality plot above the forecast. Will be set to FALSE if no seasonality is detected or seasonal.factor is set to an integer value.

intervals

logical; FALSE (default) Plots the surrounding forecasts around the final estimate when (intervals = TRUE) and (seasonal.factor = FALSE). There are no other forecasts to plot when a single seasonal.factor is selected.

Value

Returns a vector of forecasts of length (h).

Note

For monthly data series, increased accuracy may be realized from forcing seasonal factors to multiples of 12. For example, if the best periods reported are: {37, 47, 71, 73} use (seasonal.factor = c(36, 48, 72)).

(seasonal.factor = FALSE) can be a very comutationally expensive exercise due to the number of seasonal periods detected.

If error encountered when (seasonal.factor = TRUE):

"NaNs produced Error in seq.default(length(variable)+1, 1, -lag[i]) : wrong sign in 'by' argument"

use the combination of (seasonal.factor = FALSE, best.periods = 1).

Author(s)

Fred Viole, OVVO Financial Systems

References

Viole, F. and Nawrocki, D. (2013) "Nonlinear Nonparametric Statistics: Using Partial Moments" http://amzn.com/1490523995

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
## Nonlinear NNS.ARMA using AirPassengers monthly data and 12 period lag
## Not run: 
NNS.ARMA(AirPassengers, h = 45, training.set = 100, seasonal.factor = 12, method = "nonlin")
## End(Not run)

## Linear NNS.ARMA using AirPassengers monthly data and 12, 24, and 36 period lags
## Not run: 
NNS.ARMA(AirPassengers, h = 45, training.set = 120, seasonal.factor = c(12, 24, 36), method = "lin")
## End(Not run)

## Nonlinear NNS.ARMA using AirPassengers monthly data and 2 best periods lag
## Not run: 
NNS.ARMA(AirPassengers, h = 45, training.set = 120, seasonal.factor = FALSE, best.periods = 2)
## End(Not run)

NNS documentation built on May 15, 2018, 5:04 p.m.