I'd be really interested to hear people's experiences of implementing global solvers for curve construction, especially with regard to how robust the approach is in practice, numerical performance, stability of the resulting Greeks and Jacobian. The topic is well laid out here, with some good examples. I'm interested in other practitioner's views on the approach, any pitfalls of this method and things to be careful of.
By way of background, as the book explains very clearly, the need for global curve construction arises when we build a series of curves that depend on each other and therefore cannot be constructed using a sequential bootstrap. A good example given in the above book is the AUD curve, whereby IR swaps are quarterly upto 3y and semiannual thereafter, with quarterly vs semi-annual basis swaps available across the entire maturity spectrum, thereby requiring 3M and 6M forward curves to be build simultaneously. Another example is in the upcoming demise of LIBOR, where for the case of USD market participants, some combination of LIBOR/SOFR, LIBOR/FF or FF/SOFR could be used to build the relevant curves.
For the global curve construction, the numerical algorithm that appears to be used is a multi-dimensional Newton solver. One query I had was whether people frequently encounter the case that as the number of instruments increases, it may not be possible to find a multi-dimensional root, i.e. to solve for the discount factors that exactly reprice the market quotes. If this occurs, what are the typical work-arounds? Any difference in performance depending on which interpolation scheme is used?
Also, for a bank which may have say 100 currency curves to build, what would be a sensible way of setting up the solver? I'm guessing that a global solver with 1000s of instruments to price across all currencies is not the way forward. Is it common to say calibrate individual currencies curves at a time, combining them with the cross-currency basis swaps if basis adjusted curves are required?