31 baseVol_(baseVol), spread_(
std::move(spread)) {
37 ext::shared_ptr<SmileSection>
39 const Period& swapT)
const {
40 ext::shared_ptr<SmileSection> baseSmile =
42 return ext::shared_ptr<SmileSection>(
new
46 ext::shared_ptr<SmileSection>
48 Time swapLength)
const {
49 ext::shared_ptr<SmileSection> baseSmile =
51 return ext::shared_ptr<SmileSection>(
new
Shared handle to an observable.
std::pair< iterator, bool > registerWith(const ext::shared_ptr< Observable > &)
const Handle< Quote > spread_
Volatility volatilityImpl(const Date &optionDate, const Period &swapTenor, Rate strike) const override
ext::shared_ptr< SmileSection > smileSectionImpl(const Date &optionDate, const Period &swapTenor) const override
const Handle< SwaptionVolatilityStructure > baseVol_
SpreadedSwaptionVolatility(const Handle< SwaptionVolatilityStructure > &, Handle< Quote > spread)
Swaption-volatility structure
Time swapLength(const Period &swapTenor) const
implements the conversion between swap tenor and swap (time) length
Real Time
continuous quantity with 1-year units
Real Volatility
volatility
purely virtual base class for market observables
Spreaded SmileSection class.
Spreaded swaption volatility.