# Forecasting using GARCH in R

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

Example:

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.

• Mind to post a simple example? – SmallChess Jun 4 '15 at 8:47
• Could you please put the comments into the question, the comments are not meant for this. – Bob Jansen Jun 4 '15 at 10:21
• Do you ask something new in this question compare to this one? – muffin1974 Jun 5 '15 at 18:12
• 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!! – user3384794 Jun 5 '15 at 18:38

## 1 Answer

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.

• 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? – user3384794 Jun 5 '15 at 6:55
• 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. – muffin1974 Jun 5 '15 at 17:51
• 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! – user3384794 Jun 5 '15 at 17:54