24#ifndef quantext_swaptionvolatilityconverter_hpp
25#define quantext_swaptionvolatilityconverter_hpp
27#include <ql/indexes/iborindex.hpp>
28#include <ql/indexes/swapindex.hpp>
29#include <ql/termstructures/volatility/swaption/swaptionvolmatrix.hpp>
31#include <ql/shared_ptr.hpp>
44 const QuantLib::ext::shared_ptr<IborIndex>&
floatIndex)
78 const Handle<YieldTermStructure>& discount,
79 const Handle<YieldTermStructure>& shortDiscount,
80 const QuantLib::ext::shared_ptr<SwapConventions>& conventions,
81 const QuantLib::ext::shared_ptr<SwapConventions>& shortConventions,
82 const Period& conventionsTenor,
const Period& shortConventionsTenor,
83 const VolatilityType targetType,
const Matrix& targetShifts = Matrix());
86 const QuantLib::ext::shared_ptr<SwapIndex>& swapIndex,
87 const QuantLib::ext::shared_ptr<SwapIndex>& shortSwapIndex,
const VolatilityType targetType,
88 const Matrix& targetShifts = Matrix());
91 QuantLib::ext::shared_ptr<SwaptionVolatilityStructure>
convert()
const;
94 Real
convert(
const Date& expiry,
const Period& swapTenor, Real strikeSpread,
const DayCounter& volDayCounter,
95 VolatilityType outType, Real outShift = 0.0)
const;
107 QuantLib::ext::shared_ptr<SwaptionVolatilityStructure>
108 convert(
const QuantLib::ext::shared_ptr<SwaptionVolatilityMatrix>& svMatrix)
const;
111 const QuantLib::ext::shared_ptr<SwaptionVolatilityStructure>
svsIn_;
BusinessDayConvention fixedConvention_
QuantLib::ext::shared_ptr< IborIndex > floatIndex_
DayCounter fixedDayCounter_
Natural settlementDays() const
const QuantLib::ext::shared_ptr< IborIndex > floatIndex() const
const Period & fixedTenor() const
const DayCounter & fixedDayCounter() const
SwapConventions(Natural settlementDays, const Period &fixedTenor, const Calendar &fixedCalendar, BusinessDayConvention fixedConvention, const DayCounter &fixedDayCounter, const QuantLib::ext::shared_ptr< IborIndex > &floatIndex)
Constructor.
BusinessDayConvention fixedConvention() const
const Calendar & fixedCalendar() const
Class that converts a supplied SwaptionVolatilityStructure to one of another type with possibly diffe...
Handle< YieldTermStructure > shortDiscount_
Handle< YieldTermStructure > discount_
Real & accuracy()
Set implied volatility solver accuracy.
const Matrix targetShifts_
const Period shortConventionsTenor_
QuantLib::ext::shared_ptr< SwaptionVolatilityStructure > convert(const QuantLib::ext::shared_ptr< SwaptionVolatilityMatrix > &svMatrix) const
const QuantLib::ext::shared_ptr< SwapConventions > conventions_
static const Volatility maxVol_
static const Real minVega_
QuantLib::ext::shared_ptr< SwaptionVolatilityStructure > convert() const
Method that returns the converted SwaptionVolatilityStructure
Natural & maxEvaluations()
Set implied volatility solver max evaluations.
const Period conventionsTenor_
const QuantLib::ext::shared_ptr< SwaptionVolatilityStructure > svsIn_
static const Volatility minVol_
const QuantLib::ext::shared_ptr< SwapConventions > shortConventions_
const VolatilityType targetType_