26#include <boost/optional.hpp>
29#include <ql/time/calendar.hpp>
30#include <ql/time/date.hpp>
31#include <ql/time/daycounter.hpp>
32#include <ql/time/period.hpp>
33#include <ql/types.hpp>
38using QuantLib::BusinessDayConvention;
40using QuantLib::DayCounter;
41using QuantLib::Period;
59 const std::vector<string>&
pillars = std::vector<string>(),
const Calendar&
calendar = Calendar(),
63 const QuantLib::Period&
indexTerm = 0 * QuantLib::Days,
171 const std::map<int, Config>&
configs);
192 const std::string& sourceCurveID,
193 const std::vector<std::string>& multiSectionSourceCurveIds);
Class for holding bootstrap configurations.
Base curve configuration.
const string & curveDescription() const
const string & curveID() const
string recoveryRateQuote_
const Real runningSpread() const
const Type & type() const
std::vector< string > pillars()
Type
Supported default curve types.
const QuantLib::Period & indexTerm() const
string & recoveryRateQuote()
const string & discountCurveID() const
const QuantLib::Date & startDate() const
vector< string > multiSectionSourceCurveIds_
const vector< string > & multiSectionSwitchDates() const
const boost::optional< bool > & implyDefaultFromMarket() const
const DayCounter & dayCounter() const
const Calendar & calendar() const
vector< string > pillars_
DayCounter & dayCounter()
boost::optional< bool > & implyDefaultFromMarket()
const Size & spotLag() const
string & benchmarkCurveID()
string & discountCurveID()
void fromXML(XMLNode *node) override
const string & benchmarkCurveID() const
BootstrapConfig bootstrapConfig_
const bool allowNegativeRates() const
vector< string > multiSectionSwitchDates_
bool extrapolation() const
XMLNode * toXML(XMLDocument &doc) const override
void setBootstrapConfig(const BootstrapConfig &bootstrapConfig)
const std::vector< string > & pillars() const
const vector< string > & states() const
const string & conventionID() const
const std::vector< std::pair< std::string, bool > > & cdsQuotes() const
Config(const Type &type, const string &discountCurveID, const string &recoveryRateQuote, const DayCounter &dayCounter, const string &conventionID, const std::vector< std::pair< std::string, bool > > &cdsQuotes={}, bool extrapolation=true, const string &benchmarkCurveID="", const string &sourceCurveID="", const std::vector< string > &pillars=std::vector< string >(), const Calendar &calendar=Calendar(), const Size spotLag=0, const QuantLib::Date &startDate=QuantLib::Date(), const BootstrapConfig &bootstrapConfig=BootstrapConfig(), QuantLib::Real runningSpread=QuantLib::Null< Real >(), const QuantLib::Period &indexTerm=0 *QuantLib::Days, const boost::optional< bool > &implyDefaultFromMarket=boost::none, const bool allowNegativeRates=false, const int priority=0)
const vector< string > & multiSectionSourceCurveIds() const
boost::optional< bool > implyDefaultFromMarket_
const BootstrapConfig & bootstrapConfig() const
std::vector< std::pair< std::string, bool > > cdsQuotes_
Quote and optional flag pair.
bool & allowNegativeRates()
const string & initialState() const
const string & sourceCurveID() const
const int priority() const
QuantLib::Date & startDate()
QuantLib::Date startDate_
QuantLib::Period & indexTerm()
QuantLib::Period indexTerm_
const string & recoveryRateQuote() const
Default curve configuration.
void populateRequiredCurveIds()
const string & currency() const
DefaultCurveConfig()
default ctor
DefaultCurveConfig(const string &curveID, const string &curveDescription, const string ¤cy, const Config &config)
single config ctor
void fromXML(XMLNode *node) override
XMLNode * toXML(XMLDocument &doc) const override
const std::map< int, Config > & configs() const
std::map< int, Config > configs_
Small XML Document wrapper class.
Base class for all serializable classes.
Base curve configuration classes.
Serializable Credit Default Swap.