I am working on a g2++ model in a dualcurve setup for both Euribor and EONIA. I have the model built, but have some issues in calibrating it - I get a perfect fit with a Nelder-Mead algorithm, but it seems like it is shifted downwards compared to the ZC curve (for both of the g2++ models).
Can anybody help me to as how to calibrate the G2++? I am trying currently with ATM Swaptions and R (ESG2 package, quantlib does not seem able to handle negative rates unfortunately), but willing to try other programs as well if it can help me solve this.
Thanks!