|
From: Ferdinando M. A. <na...@am...> - 2014-11-17 11:07:05
|
Hi Peter SABR implementation on the current trunk has a regression compared with QuantLib 1.2.1 While trying to calibrate problematic smiles as: strike1.00%1.13%1.25%1.38%1.50%vol123.20%20.25%31.21%39.02%50.45%vol216.67% 20.20%27.85%32.79%37.27% 1.2.1 was able to offer these (non-optimal but decent) solutions: max errorrms errorend criteriaalphabetanurho1.79%0.94% StationaryPoint0.58% 25.00%346.03%34.19%0.65%0.43% StationaryPoint0.62%25.00%193.97%63.66% the current trunk instead fails for the second smile with error "qlSABRInterpolationAlpha - nu must be non negative: -124.897 not allowed". If one tries to just use the four leftmost volatilities to simplify the problem, both calibrations fail with the same error. This leads me to believe the problem is about the solver looking for a solution in the negative nu region. If this is the case it could be solved having a positive constraint for nu. Do you agree? Could you please look into it? Please find attached a spreadsheet reproducing the error. We might even want to add a non regression test to the test suite. thank you for your help regards F |