24#ifndef quantlib_instruments_floatfloatswaption_hpp
25#define quantlib_instruments_floatfloatswaption_hpp
45 const ext::shared_ptr<Exercise>&
exercise,
64 std::vector<ext::shared_ptr<BlackCalibrationHelper>>
66 const ext::shared_ptr<SwaptionVolatilityStructure>& swaptionVolatility,
72 ext::shared_ptr<FloatFloatSwap>
swap_;
82 ext::shared_ptr<FloatFloatSwap>
swap;
91 FloatFloatSwaption::results> {};
base class for pricing engines capable of generating a calibration basket
Calibration helper class.
@ MaturityStrikeByDeltaGamma
Arguments for float float swap calculation
Arguments for cms swaption calculation
ext::shared_ptr< FloatFloatSwap > swap
Settlement::Method settlementMethod
Settlement::Type settlementType
void validate() const override
base class for cms swaption engines
floatfloat swaption class
const ext::shared_ptr< FloatFloatSwap > & underlyingSwap() const
void setupArguments(PricingEngine::arguments *) const override
Settlement::Type settlementType() const
bool isExpired() const override
returns whether the instrument might have value greater than zero.
std::vector< ext::shared_ptr< BlackCalibrationHelper > > calibrationBasket(const ext::shared_ptr< SwapIndex > &standardSwapBase, const ext::shared_ptr< SwaptionVolatilityStructure > &swaptionVolatility, BasketGeneratingEngine::CalibrationBasketType basketType=BasketGeneratingEngine::MaturityStrikeByDeltaGamma) const
ext::shared_ptr< FloatFloatSwap > swap_
Settlement::Method settlementMethod_
Settlement::Method settlementMethod() const
Settlement::Type settlementType_
template base class for option pricing engines
ext::shared_ptr< Exercise > exercise() const
swap exchanging capped floored Libor or CMS coupons with quite general specification....
void swap(Array &v, Array &w) noexcept
Swaption volatility structure.
Interest-rate term structure.