arch.univariate.FIGARCH¶
-
class arch.univariate.FIGARCH(p: int =
1, q: int =1, power: float =2.0, truncation: int =1000)[source]¶ FIGARCH model.
- Parameters:¶
- p: int =
1¶ Order of the symmetric innovation.
- q: int =
1¶ Order of the lagged (transformed) conditional variance.
- power: float =
2.0¶ Power to use with the innovations, abs(e) ** power. Default is 2.0, which produces FIGARCH and related models. Using 1.0 produces FIAVARCH and related models. Other powers can be specified, although these should be strictly positive, and usually larger than 0.25.
- truncation: int =
1000¶ Truncation point to use in ARCH(\(\infty\)) representation. Default is 1000. Must be positive.
- p: int =
- Raises:¶
TypeError – If
p,qortruncationis not an integer, orpoweris not a real number.ValueError – If
porqis not 0 or 1,truncationis smaller than 1, orpoweris not finite and strictly positive.
Notes
In this class of processes, the variance dynamics are
\[h_t = \omega + [1-\beta L - (1-\phi L) (1-L)^d] \epsilon_t^2 + \beta h_{t-1}\]where
Lis the lag operator anddis the fractional differencing parameter. The model is estimated using the ARCH(\(\infty\)) representation,\[h_t = (1-\beta)^{-1} \omega + \sum_{i=1}^\infty \lambda_i \epsilon_{t-i}^2\]The weights are constructed using
\[\begin{split}\delta_1 = d \\ \lambda_1 = d - \beta + \phi\end{split}\]and the recursive equations
\[\begin{split}\delta_j = \frac{j - 1 - d}{j} \delta_{j-1} \\ \lambda_j = \beta \lambda_{j-1} + \delta_j - \phi \delta_{j-1}.\end{split}\]When power is not 2, the ARCH(\(\infty\)) representation is still used where \(\epsilon_t^2\) is replaced by \(|\epsilon_t|^p\) and
pis the power.Examples
>>> from arch.univariate import FIGARCHStandard FIGARCH
>>> figarch = FIGARCH()FIARCH
>>> fiarch = FIGARCH(p=0)FIAVGARCH process
>>> fiavarch = FIGARCH(power=1.0)Methods
backcast(resids)Construct values for backcasting to start the recursion.
backcast_transform(backcast)Transform user-provided backcast values.
bounds(resids)Return bounds for parameters.
compute_variance(parameters, resids, sigma2, ...)Compute the variance for the ARCH model.
Construct parameter constraints arrays for parameter estimation.
forecast(parameters, resids, backcast, ...)Forecast volatility from the model.
Return the names of the model parameters.
simulate(parameters, nobs, rng[, burn, ...])Simulate data from the model.
starting_values(resids)Return starting values for the ARCH model.
update(index, parameters, resids, sigma2, ...)Compute the variance for a single observation.
variance_bounds(resids[, power])Construct loose bounds for conditional variances.
Properties
The name of the volatility process.
The number of parameters in the model.
Index to use to start variance subarray selection.
Index to use to stop variance subarray selection.
Truncation lag for the ARCH-infinity approximation.
Flag indicating that the volatility process supports update.
Get the volatility updater associated with the volatility process.