30#include <ql/termstructures/volatility/volatilitytype.hpp>
31#include <ql/time/calendar.hpp>
32#include <ql/time/daycounter.hpp>
33#include <ql/time/period.hpp>
34#include <ql/types.hpp>
66 const string& inputType =
"TermVolatilities",
Class for holding bootstrap configurations.
QuantLib::Period proxyTargetRateComputationPeriod_
MarketDatum::QuoteType quoteType() const
void populateRequiredCurveIds()
Populate required curve ids.
ReportConfig reportConfig_
std::string interpolationMethod_
const std::string & index() const
const string & currency() const
void configureVolatilityType(const std::string &type)
Set the value of volatilityType_ based on the value of type.
CapFloorVolatilityCurveConfig(const std::string &curveID, const std::string &curveDescription, const VolatilityType &volatilityType, bool extrapolate, bool flatExtrapolation, bool inlcudeAtm, const std::vector< std::string > &tenors, const std::vector< std::string > &strikes, const QuantLib::DayCounter &dayCounter, QuantLib::Natural settleDays, const QuantLib::Calendar &calendar, const QuantLib::BusinessDayConvention &businessDayConvention, const std::string &index, const QuantLib::Period &rateComputationPeriod, const QuantLib::Size onCapSettlementDays, const std::string &discountCurve, const std::string &interpolationMethod="BicubicSpline", const std::string &interpolateOn="TermVolatilities", const std::string &timeInterpolation="LinearFlat", const std::string &strikeInterpolation="LinearFlat", const std::vector< std::string > &atmTenors={}, const BootstrapConfig &bootstrapConfig=BootstrapConfig(), const string &inputType="TermVolatilities", const boost::optional< ParametricSmileConfiguration > ¶metricSmileConfiguration=boost::none)
Detailed constructor.
void populateQuotes()
Populate the quotes vector.
Type
The type of structure that has been configured.
@ OptionletSurfaceWithAtm
std::string proxySourceIndex_
QuantLib::Period rateComputationPeriod_
const std::string & proxySourceIndex() const
std::string proxyTargetIndex_
bool quoteIncludesIndexName_
const boost::optional< ParametricSmileConfiguration > parametricSmileConfiguration() const
std::vector< std::string > strikes_
QuantLib::Natural settleDays_
const QuantLib::Natural & settleDays() const
bool quoteIncludesIndexName() const
bool optionalQuotes() const
const std::string & interpolateOn() const
const std::string & timeInterpolation() const
const std::string & proxySourceCurveId() const
const std::vector< std::string > & tenors() const
const QuantLib::Period & proxyTargetRateComputationPeriod() const
void configureType()
Set the value of type_ i.e. the type of cap floor structure that is configured.
const QuantLib::BusinessDayConvention & businessDayConvention() const
std::vector< std::string > tenors_
void fromXML(XMLNode *node) override
const QuantLib::Calendar & calendar() const
BootstrapConfig bootstrapConfig_
bool flatExtrapolation() const
std::vector< std::string > atmTenors_
XMLNode * toXML(XMLDocument &doc) const override
const std::string & discountCurve() const
const std::string & proxyTargetIndex() const
const QuantLib::DayCounter & dayCounter() const
QuantLib::Size onCapSettlementDays() const
VolatilityType
The type of volatility quotes that have been configured.
const std::vector< std::string > & atmTenors() const
QuantLib::Calendar calendar_
std::string discountCurve_
std::string interpolateOn_
QuantLib::BusinessDayConvention businessDayConvention_
std::string timeInterpolation_
const BootstrapConfig & bootstrapConfig() const
std::string proxySourceCurveId_
void configureExtrapolation(const std::string &extrapolation)
void validate() const
Validate the configuration.
const QuantLib::Period & proxySourceRateComputationPeriod() const
const ReportConfig & reportConfig() const
string indexTenor() const
std::string extrapolation_
const VolatilityType & volatilityType() const
const QuantLib::Period & rateComputationPeriod() const
QuantExt::CapFloorTermVolSurfaceExact::InterpolationMethod interpolationMethod() const
CapFloorVolatilityCurveConfig()
Default constructor.
QuantLib::Period proxySourceRateComputationPeriod_
const std::vector< std::string > & strikes() const
QuantLib::DayCounter dayCounter_
const std::string & strikeInterpolation() const
QuantLib::Size onCapSettlementDays_
std::string strikeInterpolation_
boost::optional< ParametricSmileConfiguration > parametricSmileConfiguration_
std::string toString(VolatilityType type) const
Convert VolatilityType type to string.
VolatilityType volatilityType_
Base curve configuration.
const string & curveDescription() const
const string & curveID() const
QuoteType
Supported market quote types.
Small XML Document wrapper class.
Base curve configuration classes.
Market data representation.
VolatilityType volatilityType(CapFloorVolatilityCurveConfig::VolatilityType type)
Imply QuantLib::VolatilityType from CapFloorVolatilityCurveConfig::VolatilityType.
Serializable Credit Default Swap.
Class for holding parametric smile configurations.
md report and arbitrage check configuration