Hi All:
In the documentation, I see that the class for swaption volatility cube is not finalised yet. However I need to price this produce now, can someone let me know if the calculation logic are ok for use already? Also, for the strikeSpreads input, what do I input? the relative value or the absolute spread value?
Thanks ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
SwaptionVolCube2 works fine for me, and I believe it is doing linear interpolation between points inside the cube. I can also get SwaptionVolCube1 to build an object correctly, but just be aware that there is no logic to exclude strikes that are negative within the SwaptionVolCube1 function (this needs to be built in at some point). So if you are looking at USD and your input array has strikes such as [-1.0%, -0.5%, 0.0%, +0.5%, +1.0%], the SwaptionVolCube1 object will return an error (since spot 2Y swap rate in USD is < 1%). Strike spreads should look like what is printed above (so relative spread to the forward swap ATM rate in bps).
The problem with negative strikes arises from the requirement to pass a symmetric matrix of spreaded volatilities to the cube. Therefore if I pass the strikes listed above as the five points per expiry [-1.0%, -0.5%, 0.0%, +0.5%, +1.0%], the cube requires that I pass a -1.0% volatility for an expiry/tenor combination whose ATM is < 1.0% (ie 1Mx2Y). However, longer tenors, such as 30Y in USD, have ATM rates > 4%, so ideally a user would like to have +/- 2% or even +/-3% strikes as an input in the long end of the grid. I think SwaptionVolCube1 should be allowed to take inputs for negative strikes (so as not to break the cube), but simply not calibrate SABR to those negative strike volatilites (which are meaningless anyways). At the same time, the cube could restrict output values to only positive strikes. Another solution would be to allow the user to pass asymmetric matrices to the cube, but that sounds way too complicated to implement. -Mike On Wed, Nov 17, 2010 at 4:44 PM, Leon Sit <[hidden email]> wrote: Hi All: ------------------------------------------------------------------------------ Beautiful is writing same markup. Internet Explorer 9 supports standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3. Spend less time writing and rewriting code and more time creating great experiences on the web. Be a part of the beta today http://p.sf.net/sfu/msIE9-sfdev2dev _______________________________________________ QuantLib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users |
Free forum by Nabble | Edit this page |