This function extracts covariance matrix of 1 to h steps ahead forecast errors for
adam(), ssarima(), gum(), sma(), es() and
ces() models.
multicov(object, type = c("analytical", "empirical", "simulated"), h = 10,
nsim = 1000, ...)# S3 method for smooth
multicov(object, type = c("analytical", "empirical",
"simulated"), h = 10, nsim = 1000, ...)
Scalar in cases of non-smooth functions. (h x h) matrix otherwise.
Model estimated using one of the functions of smooth package.
What method to use in order to produce covariance matrix:
analytical - based on the state space structure of the model and the
one-step-ahead forecast error. This works for pure additive and pure multiplicative
models. The values for the mixed models might be off.
empirical - based on the in-sample 1 to h steps ahead forecast errors
(works fine on larger samples);
simulated - the data is simulated from the estimated model, then the
same model is applied to it and then the empirical 1 to h steps ahead forecast
errors are produced;
Forecast horizon to use in the calculations.
Number of iterations to produce in the simulation. Only needed if
type="simulated"
Other parameters passed to simulate function (if type="simulated"
is used). These are obs and seed. By default obs=1000.
This approach increases the accuracy of covariance matrix on small samples
and intermittent data;
Ivan Svetunkov, ivan@svetunkov.com
The function returns either scalar (if it is a non-smooth model) or the matrix of (h x h) size with variances and covariances of 1 to h steps ahead forecast errors.
orders
x <- rnorm(100,0,1)
# A simple example with a 5x5 covariance matrix
ourModel <- ces(x, h=5)
multicov(ourModel)
Run the code above in your browser using DataLab