34#include <ql/currency.hpp>
35#include <ql/quotes/simplequote.hpp>
36#include <ql/time/date.hpp>
37#include <ql/time/daycounter.hpp>
38#include <ql/types.hpp>
41#include <boost/make_shared.hpp>
42#include <boost/optional.hpp>
43#include <boost/serialization/base_object.hpp>
44#include <boost/serialization/export.hpp>
45#include <boost/serialization/optional.hpp>
46#include <boost/serialization/shared_ptr.hpp>
47#include <boost/serialization/variant.hpp>
52using QuantLib::DayCounter;
53using QuantLib::Handle;
55using QuantLib::Months;
56using QuantLib::Natural;
57using QuantLib::Period;
60using QuantLib::SimpleQuote;
153 virtual QuantLib::ext::shared_ptr<MarketDatum>
clone() {
175 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
181 bool operator()(
const QuantLib::ext::shared_ptr<MarketDatum>& a,
const QuantLib::ext::shared_ptr<MarketDatum>& b)
const {
208 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
227 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
249 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
265 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
288 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
304 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
322 Period
term, Period
tenor,
const std::string& indexName =
"")
332 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
361 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
373 QL_REQUIRE(
date_ != Date() ||
tenor != Period(),
"ZeroQuote: either date or period is required");
378 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
398 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
417 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
432 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
454 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
475 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
497 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
518 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
546 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
564 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
593 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
609 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
638 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
659 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
680 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
701 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
723 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
748 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
768 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
788 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
807 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
825 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
852 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
877 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
895 const std::string&
quoteTag = std::string())
902 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
918 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
943 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
959 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
985 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
999 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1026 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1053 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1072 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1087 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1112 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1126 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1155 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1163 const boost::variant<QuantLib::Period, FxFwdString>&
term()
const {
return term_; }
1169 boost::variant<QuantLib::Period, FxFwdString>
term_;
1173 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1201 "Unsupported FXOptionQuote strike (" <<
strike <<
")");
1205 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1223 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1242 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1254 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1275 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1291 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1312 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1319 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1338 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1350 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1372 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1378 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1393 const string&
month)
1397 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1412 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1434 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1448 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1472 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1488 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1512 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1528 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1552 string expiry,
const QuantLib::ext::shared_ptr<BaseStrike>&
strike,
bool isCall =
true);
1556 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1576 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1593 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1605 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1619 Period
term, Real detachmentPoint)
1625 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1641 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1664 const std::string&
indexName,
const QuantLib::ext::shared_ptr<Expiry>&
expiry,
1665 const std::string&
indexTerm =
"",
const QuantLib::ext::shared_ptr<BaseStrike>&
strike =
nullptr);
1669 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1689 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1708 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1723 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1741 const QuantLib::Period&
tenor, boost::optional<QuantLib::Period>
startTenor = boost::none);
1744 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1783 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1807 const QuantLib::ext::shared_ptr<Expiry>&
expiry,
const QuantLib::ext::shared_ptr<BaseStrike>&
strike,
1808 QuantLib::Option::Type
optionType = QuantLib::Option::Call);
1811 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1833 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1855 const std::string&
strike);
1858 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1877 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1894 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1906 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1923 QuantLib::ext::shared_ptr<MarketDatum>
clone()
override {
1935 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
1949 const string&
id()
const {
return id_; }
1959 template <
class Archive>
void serialize(Archive& ar,
const unsigned int version);
Real value() const override
const Period & term() const
const Period & maturity() const
BMASwapQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, Period term, string ccy="USD", Period maturity=3 *Months)
Constructor.
const string & ccy() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
void serialize(Archive &ar, const unsigned int version)
Real detachmentPoint() const
BaseCorrelationQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &cdsIndexName, Period term, Real detachmentPoint)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const string & cdsIndexName() const
const Period & flatTerm() const
const Period & term() const
const Period & maturity() const
const string & ccy() const
BasisSwapQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, Period flatTerm, Period term, string ccy="USD", Period maturity=3 *Months)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
const Period & expiry() const
const string & qualifier() const
BondOptionQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string qualifier, Period expiry, Period term)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Shift data class (for SLN bond option volatilities)
const Period & term() const
BondOptionShiftQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string qualifier, Period term)
Constructor.
const string & qualifier() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const string & securityID() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
BondPriceQuote(Real value, Date asofDate, const string &name, const string &securityId)
Constructor.
CPRQuote(Real value, Date asofDate, const string &name, const string &securityId)
Constructor.
const string & securityID() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
CapFloorQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period term, Period underlying, bool atm, bool relative, Real strike=0.0, const string &indexName=string(), bool isCap=true)
Constructor.
const Period & term() const
const string & ccy() const
const Period & underlying() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const string & indexName() const
void serialize(Archive &ar, const unsigned int version)
Shift data class (for SLN cap/floor volatilities)
const string & ccy() const
CapFloorShiftQuote(Real value, const Date &asofDate, const string &name, QuoteType quoteType, const string &ccy, const Period &indexTenor, const string &indexName=string())
const Period & indexTenor() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const string & indexName() const
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
const string & docClause() const
const string & underlyingName() const
const string & ccy() const
Real runningSpread() const
CdsQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &underlyingName, const string &seniority, const string &ccy, Period term, const string &docClause="", Real runningSpread=Null< Real >())
Constructor.
const string & seniority() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Commodity forward quote class.
std::string quoteCurrency_
const QuantLib::Date & expiryDate() const
The commodity forward's expiry if the quote is date based.
const std::string & commodityName() const
const boost::optional< QuantLib::Period > & startTenor() const
QuantLib::Date expiryDate_
const QuantLib::Period & tenor() const
The commodity forward's tenor if the quote is tenor based.
boost::optional< QuantLib::Period > startTenor_
bool tenorBased() const
Returns true if the forward is tenor based and false if forward is date based.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const std::string & quoteCurrency() const
void serialize(Archive &ar, const unsigned int version)
std::string commodityName_
Commodity option data class.
QuantLib::ext::shared_ptr< Expiry > expiry_
const QuantLib::ext::shared_ptr< Expiry > & expiry() const
std::string quoteCurrency_
QuantLib::Option::Type optionType() const
const std::string & commodityName() const
QuantLib::ext::shared_ptr< BaseStrike > strike_
const QuantLib::ext::shared_ptr< BaseStrike > & strike() const
QuantLib::Option::Type optionType_
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const std::string & quoteCurrency() const
CommodityOptionQuote(QuantLib::Real value, const QuantLib::Date &asof, const std::string &name, QuoteType quoteType, const std::string &commodityName, const std::string "eCurrency, const QuantLib::ext::shared_ptr< Expiry > &expiry, const QuantLib::ext::shared_ptr< BaseStrike > &strike, QuantLib::Option::Type optionType=QuantLib::Option::Call)
Constructor.
void serialize(Archive &ar, const unsigned int version)
std::string commodityName_
Commodity spot quote class.
std::string quoteCurrency_
CommoditySpotQuote(QuantLib::Real value, const QuantLib::Date &asofDate, const std::string &name, QuoteType quoteType, const std::string &commodityName, const std::string "eCurrency)
Constructor.
const std::string & commodityName() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const std::string & quoteCurrency() const
void serialize(Archive &ar, const unsigned int version)
std::string commodityName_
const std::string & expiry() const
const std::string & index2() const
const std::string & strike() const
CorrelationQuote(QuantLib::Real value, const QuantLib::Date &asof, const std::string &name, QuoteType quoteType, const std::string &index1, const std::string &index2, const std::string &expiry, const std::string &strike)
Constructor.
const std::string & index1() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Cross Currency Basis Swap data class.
const Period & flatTerm() const
const Period & term() const
const Period & maturity() const
const string & ccy() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const string & flatCcy() const
CrossCcyBasisSwapQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string flatCcy, Period flatTerm, string ccy, Period term, Period maturity=3 *Months)
Constructor.
void serialize(Archive &ar, const unsigned int version)
Cross Currency Fix Float Swap quote holder.
const QuantLib::Period & floatTenor() const
QuantLib::Period floatTenor_
CrossCcyFixFloatSwapQuote(QuantLib::Real value, const QuantLib::Date &asof, const std::string &name, QuoteType quoteType, const string &floatCurrency, const QuantLib::Period &floatTenor, const string &fixedCurrency, const QuantLib::Period &fixedTenor, const QuantLib::Period &maturity)
Constructor.
const QuantLib::Period & fixedTenor() const
QuantLib::Period maturity_
QuantLib::Period fixedTenor_
const string & fixedCurrency() const
const QuantLib::Period & maturity() const
const string & floatCurrency() const
CrossCcyFixFloatSwapQuote()
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Discount market data class.
const string & ccy() const
DiscountQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Date date, Period tenor)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Equity/Index Dividend yield data class.
const Date & tenorDate() const
const string & eqName() const
const string & ccy() const
EquityDividendYieldQuote()
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Equity forward data class.
const string & eqName() const
const string & ccy() const
const Date & expiryDate() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Equity/Index Option data class.
const string & eqName() const
const string & ccy() const
QuantLib::ext::shared_ptr< BaseStrike > strike_
const QuantLib::ext::shared_ptr< BaseStrike > & strike() const
const string & expiry() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Equity/Index spot price data class.
const string & eqName() const
const string & ccy() const
EquitySpotQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string equityName, string ccy)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
const string & ccy() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const Period & fwdStart() const
FRAQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period fwdStart, Period term)
Constructor.
void serialize(Archive &ar, const unsigned int version)
Foreign exchange rate data class.
const string & ccy() const
const boost::variant< QuantLib::Period, FxFwdString > & term() const
boost::variant< QuantLib::Period, FxFwdString > term_
FXForwardQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string unitCcy, string ccy, const boost::variant< QuantLib::Period, FxFwdString > &term, Real conversionFactor=1.0)
Constructor.
const string & unitCcy() const
Real conversionFactor() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const string & ccy() const
const string & strike() const
const Period & expiry() const
FXOptionQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string unitCcy, string ccy, Period expiry, string strike)
Constructor.
const string & unitCcy() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Foreign exchange rate data class.
FXSpotQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string unitCcy, string ccy)
Constructor.
const string & ccy() const
const string & unitCcy() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
const string & docClause() const
const string & underlyingName() const
const string & ccy() const
const string & seniority() const
HazardRateQuote(Real value, Date asofDate, const string &name, const string &underlyingName, const string &seniority, const string &ccy, Period term, const string &docClause="")
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
IMM FRA market data class.
const string & ccy() const
ImmFraQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Size imm1, Size imm2)
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const Size & imm1() const
void serialize(Archive &ar, const unsigned int version)
const Size & imm2() const
CDS Index Option data class.
IndexCDSOptionQuote()
Default constructor.
QuantLib::ext::shared_ptr< Expiry > expiry_
const QuantLib::ext::shared_ptr< Expiry > & expiry() const
const std::string & indexTerm() const
const std::string & indexName() const
QuantLib::ext::shared_ptr< BaseStrike > strike_
const QuantLib::ext::shared_ptr< BaseStrike > & strike() const
IndexCDSOptionQuote(QuantLib::Real value, const QuantLib::Date &asof, const std::string &name, const std::string &indexName, const QuantLib::ext::shared_ptr< Expiry > &expiry, const std::string &indexTerm="", const QuantLib::ext::shared_ptr< BaseStrike > &strike=nullptr)
Detailed constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Inflation Cap Floor data class.
InflationCapFloorQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &index, Period term, bool isCap, const string &strike, InstrumentType instrumentType)
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Money Market Future data class.
Month expiryMonth() const
const string & contract() const
const string & ccy() const
MMFutureQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, string expiry, string contract="", Period tenor=3 *Months)
Constructor.
Natural expiryYear() const
const string & expiry() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & tenor() const
InstrumentType instrumentType() const
MarketDatum(Real value, Date asofDate, const string &name, QuoteType quoteType, InstrumentType instrumentType)
Constructor.
const Handle< Quote > & quote() const
InstrumentType instrumentType_
virtual ~MarketDatum()
Default destructor.
InstrumentType
Supported market instrument types.
virtual QuantLib::ext::shared_ptr< MarketDatum > clone()
Make a copy of the market datum.
QuoteType
Supported market quote types.
friend class boost::serialization::access
Serialization.
const string & name() const
QuoteType quoteType() const
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
MoneyMarketQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period fwdStart, Period term, const std::string &indexName="")
Constructor.
const string & ccy() const
const std::string & indexName() const
Empty if the index name is not provided.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the datum.
friend class boost::serialization::access
Serialization.
const Period & fwdStart() const
void serialize(Archive &ar, const unsigned int version)
Overnight index future data class.
Month expiryMonth() const
const string & contract() const
const string & ccy() const
Natural expiryYear() const
OIFutureQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, string expiry, string contract="", Period tenor=3 *Months)
Constructor.
const string & expiry() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & tenor() const
Recovery rate data class.
const string & docClause() const
const string & underlyingName() const
const string & ccy() const
const string & seniority() const
RecoveryRateQuote(Real value, Date asofDate, const string &name, const string &underlyingName, const string &seniority, const string &ccy, const string &docClause="")
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Inflation seasonality data class.
QuantLib::Size applyMonth() const
SeasonalityQuote(Real value, Date asofDate, const string &name, const string &index, const string &type, const string &month)
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
SecuritySpreadQuote(Real value, Date asofDate, const string &name, const string &securityID)
Constructor.
const string & securityID() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
const Period & term() const
const std::string & indeName() const
const string & ccy() const
const Date & maturityDate() const
const Date & startDate() const
SwapQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Date startDate, Date maturityDate, Period tenor, const std::string &indexName="")
Constructor if startDate, maturityDate is given.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
const Period & fwdStart() const
SwapQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period fwdStart, Period term, Period tenor, const std::string &indexName="")
Constructor if fwdStart / tenor is given.
void serialize(Archive &ar, const unsigned int version)
const Period & tenor() const
const Period & term() const
const string & ccy() const
const Period & expiry() const
const string & dimension() const
SwaptionQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period expiry, Period term, string dimension, Real strike=0.0, const std::string "eTag=std::string(), bool isPayer=true)
Constructor.
const string & quoteTag() const
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Shift data class (for SLN swaption volatilities)
const Period & term() const
const string & ccy() const
const string & quoteTag() const
SwaptionShiftQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, string ccy, Period term, const std::string "eTag=std::string())
Constructor.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
Transition Probability data class.
const string & id() const
TransitionProbabilityQuote()
TransitionProbabilityQuote(Real value, Date asofDate, const string &name, const string &id, const string &fromRating, const string &toRating)
const string & toRating() const
friend class boost::serialization::access
Serialization.
const string & fromRating() const
void serialize(Archive &ar, const unsigned int version)
YoY Inflation swap data class.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
YoYInflationSwapQuote(Real value, Date asofDate, const string &name, const string &index, Period term)
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
YyInflationCapFloorQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &index, Period term, bool isCap, const string &strike)
YyInflationCapFloorQuote()
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
ZcInflationCapFloorQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &index, Period term, bool isCap, const string &strike)
ZcInflationCapFloorQuote()
void serialize(Archive &ar, const unsigned int version)
ZC Inflation swap data class.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
friend class boost::serialization::access
Serialization.
void serialize(Archive &ar, const unsigned int version)
ZcInflationSwapQuote(Real value, Date asofDate, const string &name, const string &index, Period term)
const string & ccy() const
Inspectors.
QuantLib::ext::shared_ptr< MarketDatum > clone() override
Make a copy of the market datum.
ZeroQuote(Real value, Date asofDate, const string &name, QuoteType quoteType, const string &ccy, Date date, DayCounter dayCounter, Period tenor=Period())
Constructor.
friend class boost::serialization::access
Serialization.
DayCounter dayCounter() const
void serialize(Archive &ar, const unsigned int version)
const Period & tenor() const
SafeStack< ValueType > value
Classes for representing an expiry for use in market quotes.
Strike parseStrike(const std::string &s)
Convert text to Strike.
Classes for representing a strike using various conventions.
BOOST_CLASS_EXPORT_KEY(ore::data::MoneyMarketQuote)
bool operator<(const Dividend &d1, const Dividend &d2)
std::ostream & operator<<(std::ostream &out, EquityReturnType t)
Serializable Credit Default Swap.
Map text representations to QuantLib/QuantExt types.
support for QuantLib::Date serialization
support for QuantLib::DayCounter serialization
support for QuantLib::Period serialization
bool operator()(const QuantLib::ext::shared_ptr< MarketDatum > &a, const QuantLib::ext::shared_ptr< MarketDatum > &b) const