Logo
Reference manual - version ored_version
Public Types | Public Member Functions | List of all members
YieldCurve Class Reference

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< YieldCurveCalibrationInfocalibrationInfo () const
 

Detailed Description

Wrapper class for building yield term structures.

Given yield curve specification and its configuration this class will actually build a QuantLib yield termstructure.

Constructor & Destructor Documentation

◆ YieldCurve()

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.

Parameters
asofValuation date
curveSpecYield curve specification
curveConfigsRepository of yield curve configurations
loaderMarket data loader
requiredYieldCurvesMap of underlying yield curves if required
requiredDefaultCurvesMap of underlying default curves if required
fxTriangulationFxTriangultion to get FX rate from cross if needed
referenceDataoptional pointer to reference data, needed to build fitted bond curves
iborfallbackConfigibor fallback config
preserveQuoteLinkageif true keep qloader quotes linked to yield ts, otherwise detach them
buildCalibrationInfobuild calibration info
marketmarket object to look up external discount curves