Wrapper class for building yield term structures. More...
#include <ored/marketdata/yieldcurve.hpp>
Public Types | |
enum class | InterpolationVariable { Zero , Discount , Forward } |
Supported interpolation variables. | |
enum class | InterpolationMethod { Linear , LogLinear , NaturalCubic , FinancialCubic , ConvexMonotone , Quadratic , LogQuadratic , Hermite , CubicSpline , ExponentialSplines , NelsonSiegel , Svensson } |
Supported interpolation methods. | |
Public Member Functions | |
YieldCurve (Date asof, YieldCurveSpec curveSpec, const CurveConfigurations &curveConfigs, const Loader &loader, const map< string, boost::shared_ptr< YieldCurve >> &requiredYieldCurves=map< string, boost::shared_ptr< YieldCurve >>(), const map< string, boost::shared_ptr< DefaultCurve >> &requiredDefaultCurves=map< string, boost::shared_ptr< DefaultCurve >>(), const FXTriangulation &fxTriangulation=FXTriangulation(), const boost::shared_ptr< ReferenceDataManager > &referenceData=nullptr, const IborFallbackConfig &iborfallbackConfig=IborFallbackConfig::defaultConfig(), const bool preserveQuoteLinkage=false, const bool buildCalibrationInfo=true, const Market *market=nullptr) | |
Constructor. More... | |
Inspectors | |
const Handle< YieldTermStructure > & | handle () const |
YieldCurveSpec | curveSpec () const |
const Date & | asofDate () const |
const Currency & | currency () const |
boost::shared_ptr< YieldCurveCalibrationInfo > | calibrationInfo () const |
Wrapper class for building yield term structures.
Given yield curve specification and its configuration this class will actually build a QuantLib yield termstructure.
YieldCurve | ( | Date | asof, |
YieldCurveSpec | curveSpec, | ||
const CurveConfigurations & | curveConfigs, | ||
const Loader & | loader, | ||
const map< string, boost::shared_ptr< YieldCurve >> & | requiredYieldCurves = map< string, boost::shared_ptr< YieldCurve >>() , |
||
const map< string, boost::shared_ptr< DefaultCurve >> & | requiredDefaultCurves = map< string, boost::shared_ptr< DefaultCurve >>() , |
||
const FXTriangulation & | fxTriangulation = FXTriangulation() , |
||
const boost::shared_ptr< ReferenceDataManager > & | referenceData = nullptr , |
||
const IborFallbackConfig & | iborfallbackConfig = IborFallbackConfig::defaultConfig() , |
||
const bool | preserveQuoteLinkage = false , |
||
const bool | buildCalibrationInfo = true , |
||
const Market * | market = nullptr |
||
) |
Constructor.
asof | Valuation date |
curveSpec | Yield curve specification |
curveConfigs | Repository of yield curve configurations |
loader | Market data loader |
requiredYieldCurves | Map of underlying yield curves if required |
requiredDefaultCurves | Map of underlying default curves if required |
fxTriangulation | FxTriangultion to get FX rate from cross if needed |
referenceData | optional pointer to reference data, needed to build fitted bond curves |
iborfallbackConfig | ibor fallback config |
preserveQuoteLinkage | if true keep qloader quotes linked to yield ts, otherwise detach them |
buildCalibrationInfo | build calibration info |
market | market object to look up external discount curves |