Learn R Programming

smoots (version 1.1.4)

optOrd: Optimal Order Selection

Description

From a matrix with values of an information criterion for different orders \(p\) and \(q\) of an autoregressive-moving-average (ARMA) model, the optimal orders are selected.

Usage

optOrd(mat, restr = NULL, sFUN = min)

Value

The function returns a vector with two elements. The first element is the optimal order \(p\), whereas the second element is the selected optimal order \(q\).

Arguments

mat

a numeric matrix, whose rows represent the AR orders \(p = 0, 1, ..., p_{max}\) and whose columns represent the MA orders \(q = 0, 1, q_{max}\); the elements of the matrix are then the values of an information criterion calculated for ARMA models with the different order combinations; a matrix returned by the function critMatrix of the smoots package shares these characteristics.

restr

a single expression (not a character object) that defines further restrictions; the standard logical operators, e.g. >=, & or ==, can be used; refer to the rows with p and to the columns with q; is set to NULL by default, i.e. no restrictions are imposed.

sFUN

the selection function; is set to min, i.e. the minimal value that meets the restrictions restr is selected and the corresponding orders \(p\) and \(q\) are returned.

Author

  • Sebastian Letmathe (Scientific Employee) (Department of Economics, Paderborn University),

Details

Given a matrix mat filled with the values of an information criterion for different estimated ARMA(\(p,q\)) models, where the rows represent different orders \(p = 0, 1, ..., p_{max}\) and where the columns represent the orders \(q = 0, 1, ..., q_{max}\), the function returns a vector with the optimal orders \(p\) and \(q\). Further selection restrictions can be passed to the argument restr as an expression. To implement a restriction, the rows and columns are addressed via p and q, respectively. Moreover, standard boolean operators such as ==, >= or & can be used. See the Section Examples for examples of different restrictions. In many cases, the minimum value of a criterion is considered to indicate the best model. However, in some other cases a different selection approach might be appropriate. Therefore, a selection function can be considered by means of the argument sFUN. The default is sFUN = min, i.e. the function min is applied to select the optimal orders.

Examples

Run this code
if (FALSE) {
set.seed(21)
Xt <- arima.sim(model = list(ar = c(1.2, -0.5), ma = 0.7), n = 1000) + 7
mat <- smoots::critMatrix(Xt)
optOrd(mat)  # without restrictions
optOrd(mat, p <= q)  # with one restriction
optOrd(mat, p >= 1 & q >= 4)  # with two restrictions
}

Run the code above in your browser using DataLab