Method for simulating and estimating the parameter distribution from a variety of univariate GARCH models as well as the simulation based consistency of the estimators given the data size.

```
ugarchdistribution(fitORspec, n.sim = 2000, n.start = 1,
m.sim = 100, recursive = FALSE, recursive.length = 6000, recursive.window = 1000,
presigma = NA, prereturns = NA, preresiduals = NA, rseed = NA,
custom.dist = list(name = NA, distfit = NA), mexsimdata = NULL, vexsimdata = NULL,
fit.control = list(), solver = "solnp", solver.control = list(), cluster = NULL, ...)
```

fitORspec

n.sim

The simulation horizon.

n.start

The burn-in sample.

m.sim

The number of simulations.

recursive

Whether to perform a recursive simulation on an expanding window.

recursive.length

If `recursive`

is TRUE, this indicates the final length of the simulation
horizon, with starting length `n.sim`

.

recursive.window

If `recursive`

is TRUE, this indicates the increment to the expanding
window. Together with `recursive.length`

, it determines the total number
of separate and increasing length windows which will be simulated and fitted.

presigma

Allows the starting sigma values to be provided by the user.

prereturns

Allows the starting return data to be provided by the user.

preresiduals

Allows the starting residuals to be provided by the user.

rseed

Optional seeding value(s) for the random number generator.

custom.dist

Optional density with fitted object from which to simulate.

mexsimdata

Matrix of simulated external regressor-in-mean data. If the fit object contains external regressors in the mean equation, this must be provided.

vexsimdata

Matrix of simulated external regressor-in-variance data. If the fit object contains external regressors in the variance equation, this must be provided.

solver

One of either “nlminb” or “solnp”.

solver.control

Control arguments list passed to optimizer.

fit.control

Control arguments passed to the fitting routine (as in the `ugarchfit`

method).

cluster

A cluster object created by calling `makeCluster`

from the parallel
package. If it is not NULL, then this will be used for parallel estimation
of the refits (remember to stop the cluster on completion).

...

.

A `'>uGARCHdistribution`

object containing details of the GARCH
simulated parameters distribution.

This method facilitates the simulation and evaluation of the uncertainty of
GARCH model parameters. The recursive option also allows the evaluation of the
simulation based consistency (in terms of sqrt(N) ) of the parameters as the
length (n.sim) of the data increases, in the sense of the root mean square error
(rmse) of the difference between the simulated and true (hypothesized)
parameters.
This is a very expensive function, particularly if using the `recursive`

option, both on memory and cpu resources, performing many re-fits of the
simulated data in order to generate the parameter distribution and it is
therefore suggested that, if available, the parallel functionality should be
used (in a system with ideally many cores and at least 4GB of RAM for the
recursion option...).

For specification `ugarchspec`

, fitting `ugarchfit`

,
filtering `ugarchfilter`

, forecasting `ugarchforecast`

,
simulation `ugarchsim`

, rolling forecast and estimation `ugarchroll`

,
bootstrap forecast `ugarchboot`

.