I am using the predict and ugarchforecast functions in R. When I fit my models and try to forecast, I get either only increasing or decreasing values for sigma, does anyone know why?

Thank you


eGARCHfit2 = ugarchspec(variance.model=list(model="eGARCH", garchOrder=c(1,1)), mean.model=list(armaOrder=c(0,0), include.mean=TRUE), distribution.model="norm") eGARCH2 <- ugarchfit(brentlog2, spec=eGARCHfit2)

ugarchforecast(eGARCH2, data =brentlog2, n.ahead = 21)
* GARCH Model Forecast * ------------------------------------
* Model: eGARCH
* Horizon: 21 Roll Steps: 0 Out of Sample: 0 0-roll

forecast [T0=1976-06-26 01:00:00]:
Series Sigma
T+1 0.0002619 0.008350
T+2 0.0002619 0.008387
T+3 0.0002619 0.008423
T+4 0.0002619 0.008459
T+5 0.0002619 0.008496
T+6 0.0002619 0.008532
T+7 0.0002619 0.008569
T+8 0.0002619 0.008605
T+9 0.0002619 0.008642
T+10 0.0002619 0.008678

The first value is the mean which is always constant and the second one is sigma which is always increasing as you can see.

  • $\begingroup$ Mind to post a simple example? $\endgroup$
    – SmallChess
    Jun 4, 2015 at 8:47
  • $\begingroup$ Could you please put the comments into the question, the comments are not meant for this. $\endgroup$
    – Bob Jansen
    Jun 4, 2015 at 10:21
  • $\begingroup$ Do you ask something new in this question compare to this one? $\endgroup$ Jun 5, 2015 at 18:12
  • $\begingroup$ Hi muffin, no i didnt. Could you please look at this one if you have time: quant.stackexchange.com/questions/18190/… Its very similar. thanks!! $\endgroup$ Jun 5, 2015 at 18:38

1 Answer 1


This should follow from the properties of the forecast - for example the GARCH(1,1) forecast for $h$ steps is computing the conditional expectation of $\sigma^2_{t+h}$ based on the information set-up in $t$. This can be computed recursively by

$$ V(\varepsilon_{t+h}|F_t)=\omega+\alpha\varepsilon_{t+h-1|F_t}+\beta\sigma^2_{t+h-1|F_t}\\ =\omega\sum\limits_{i=0}^{h-2}(\alpha+\beta)^i+(\alpha+\beta)^{h-1}\sigma^2_{t+1} $$ something similar but more complicated should hold for the EGARCH model. Stationarity for $\varepsilon_t^2$ hold if $|\alpha+\beta|<1$. If we assume stationarity the second term of the formula above should decrease with $h$. The first term is an increasing function in $h$ for $\omega>0$ which is a standard assumption to ensure the positiveness of the conditional variance. Therefore it seems to me like there is no monotonicity in $h$ but one saddle point at which the forecast starts to increase.

  • $\begingroup$ You're right, thanks! But: 1) how can do I compare this forecasted volatility compared to the realised one if it is always increasing? 2) how do i extract the realised volatility from a time series? can i do average of day t+1 / average price of day t for say the volatility at day t+1? $\endgroup$ Jun 5, 2015 at 6:55
  • $\begingroup$ You're welcome. Basically, what exactly do you mean with 1)? Evaluating predictions does only incorporate your predicted value and the realized one (for example via Diebold-Mariano). I do not see a problem if your long-term predictions only move into one direction. 2)The realized volatility can be extracted for example via intraday data based on e.g. 5 minute intervals. There is a huge literature, I'll refer for example to the literature given in the wikipedia article for Realized variance. $\endgroup$ Jun 5, 2015 at 17:51
  • $\begingroup$ yh thanks. actually im calculating the realised variance using the first formula here: volx.us/VolFormula.htm. But when I fit an ARMA(1,1)-GARCH(1,1), I only get decreasing values for sigma, which is weird. That, i dont get. please refer to my question here: quant.stackexchange.com/questions/18190/… Thanks a lot! $\endgroup$ Jun 5, 2015 at 17:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.