I am trying to price a floating rate bond with a capped and floored interest rate. The strikes of the caps and floors vary, but are known in advance.
I am trying to do this with QuantLibXL, but I am having trouble at every step. I would appreciate if you could just comment on my general approach, then I will try to fill the gaps.
My current approach is to use
qlFloatingRateBond and pass it a range of strikes (one for each coupon) for both
Floors arguments. Then I imagine I have to use
qlBlackCapFloorEngine as pricing engine, is that right?
The latter needs then an
OptionletVolatilityStructure, which I strip from a swaption vol cube using
The issue I have here is that AFAIK Bloomberg’s VCUB returns only Cap volatilities for each option tenor relative to the ATM strike, while Update: The volatilities returned are in fact not relative to the ATM strike, but absolute.
qlOptionletStripper1 wants "absolute" ones. What do you suggest here?
Thank you very much.