# Suggestions for choosing an optimization algorithm for fitting custom GARCH models by QMLE in R?

I am trying to fit a custom GARCH model by QMLE in R. I have written out the log likelihood function and am now working on optimizing it. However, choosing an optimization algorithm has proven to be difficult. I have tried the optimizers in the optim package, but they seem unstable for this purpose. I have also tried to use the Rsolnp package, which is the default in rugarch, but since I would like to include an expression for the gradient in the function call, this is also unviable. Does anybody know which package I should look into? I need:

1. Ability to provide upper and lower bounds for the parameters.
2. Ability to provide a gradient function.

I recently came across a question on here where the asker tried to use the function fmincon from the package pracma. Perhaps somebody knows if this could be advisable?

h[t+1] = max( hmin, min(h[t+1], hmax) )