I try to model currency rates volatility using GARCH models through the RUGARCH package in R.

Starting from the observed currency rate series, I compute the log-return through:

data <- diff(log(series)) # Log-return

Then (after some statistical analysis) I decide to use a GARCH(1,1) model with a skew-student distribution, hence I use

spec_final <- ugarchspec(mean.model=list(armaOrder=c(0,0),include.mean=FALSE),variance.model=list(model="sGARCH",garchOrder=c(1,1)),distribution.model="sstd")
fit_final <- ugarchfit(spec_final,data=data)

I then try to simulate future outcomes of this series with an horizon of 260 days with the code

horizon <- 260

If I perform this a great number of times (200,000) I can compute quantiles. More especially I see that the quantile at 0.5% is equal to 0.605 and the quantile at 99.5% is equal to 1.623. The distribution has a mean very close to 1 but is not symmetric.

I would like to understand why there is a lack of symmetry in the simulated distribution, even if the GARCH model is known to be symmetric. It does not happen only for one currency but for all those I tried to model. This is really an issue to me as I do not have any particular reason to explain why the model predicts larger upward shocks than downward shocks.



1 Answer 1


If log returns have a symmetric distribution, prices will have a positively skewed distribution, since exponentiating induces positive skew.

  • $\begingroup$ Thanks. But I do not understand why in most of the articles I have seen, people use this log-return transformation on their time series without any evidence of skewness. It's like an automatic trick. Anyway, in my case, this skewness is not really what I want. What alternative do I have to this transformation ? Thanks. $\endgroup$
    – Ludo
    Jan 13, 2015 at 7:33
  • $\begingroup$ @Ludo Check out this: symmys.com/node/85 $\endgroup$
    – John
    Jan 13, 2015 at 14:36
  • $\begingroup$ @Ludo Modelling the proportional changes x(t+1)/x(t)-1 as normal instead of the log changes log(x(t+1)/x(t)) as normal allows x(t+1) to be negative, which is often (for example with stock prices) not allowed. $\endgroup$
    – Fortranner
    Jan 13, 2015 at 17:32

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.