# Rugarch function ugarchdistribution fail to invert hessian for sGarch but it converges for gjrGarch

I have the following Garch model

ug_spec <- ugarchspec(mean.model = list(armaOrder = c(0,0), include.mean = FALSE),
variance.model = list(model = "sGARCH", garchOrder = c(2, 1), variance.targeting = FALSE), #
distribution.model = "ged", fixed.pars = list(omega=0))
ugfit <- ugarchfit(spec = ug_spec, data = EURUSD)


all goes fine no error or warning, but when I call this function ugarchdistribution

gd = ugarchdistribution(ugfit, n.sim = 1000, n.start = 1, recursive = TRUE, recursive.length = 3000, recursive.window = 250, m.sim = 100, solver = "hybrid")


I get a never ending list of errors such as:

Warning in .makefitmodel(garchmodel = "sGARCH", f = .sgarchLLH, T = T, m = m,  :

rugarch-->warning: failed to invert hessian


which goes on for like 5 minutes until the console stops. Now I checked around the web, some people say to change solver (I did it and not working), change the solver tolerance (I did it and not working). In the end I have changed the garch model from sGarch to gjrGarch and it works, but unfortunately using gjrGarch I get all the p values of the Standardized Squared Residuals < 0.05 and therefore they are not uncorrelated.

What do you suggest to solve such warning? should I keep the gjrGarch because ugarchdistribution converges or still stick to sGarch which gives me uncorrelated Standardized Squared Residuals (pvalue > 0.05) and just avoid using such ugarchdistribution function? Thanks. Luigi

• I was able to solve it by removing fixed.pars = list(omega=0) in the sGARCH. I do not know why that worked therefore I decided to not accept my own solution. – Luigi87 Sep 4 '20 at 6:45