Namespace:
Imsl.Stat
Assembly:
ImslCS (in ImslCS.dll) Version: 6.5.0.0
Syntax
C# |
---|
[SerializableAttribute] public class ARMAMaxLikelihood |
Visual Basic (Declaration) |
---|
<SerializableAttribute> _ Public Class ARMAMaxLikelihood |
Visual C++ |
---|
[SerializableAttribute] public ref class ARMAMaxLikelihood |
Remarks
ARMAMaxLikelihood computes estimates of parameters for a nonseasonal ARMA
model given a sample of observations, , for
where
z.Length. The class is derived from the maximum likelihood
estimation algorithm described by Akaike, Kitagawa, Arahata
and Tada (1979), and the XSARMA routine published in the TIMSAC-78 Library.
The stationary time series
with mean
can be represented by the nonseasonal
autoregressive moving average (ARMA) model by the following relationship:







ARMAMaxLikelihood checks the initial estimates for both the autoregressive and moving average coefficients to ensure that they represent a stationary and invertible series respectively.
If


If


By default, the order of the lags for the autoregressive terms is
and
for the moving average terms. However, this cannot be overridden.
Initial values for the AR and MA coefficients can be supplied via the SetAR and SetMA methods. Otherwise, initial estimates are computed internally by the method of moments. The class computes the roots of the associated polynomials. If the AR estimates represent a nonstationary series, ARMAMaxLikelihood issues a warning message and replaces the intial AR estimates with initial values that are stationary. If the MA estimates represent a noninvertible series, a terminal error is issued and new initial values must be sought.
ARMAMaxLikelihood also validates the final estimates of the AR coefficients to ensure that they too represent a stationary series. This is done to guard against the possibility that the internal log-likelihood optimizer converged to a nonstationary solution. If nonstationary estimates are encountered, an exception will be thrown.
For model selection, the ARMA model with the minimum value for
AIC might be preferred,
, where L is the
value of the maximum likelihood function evaluated at the parameter
estimates.
ARMAMaxLikelihood can also handle white noise processes,
i.e. processes.