Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
List of all members
IborFallbackCurveSegment Class Reference

Ibor Fallback yield curve segment. More...

#include <ored/configuration/yieldcurveconfig.hpp>

+ Inheritance diagram for IborFallbackCurveSegment:
+ Collaboration diagram for IborFallbackCurveSegment:

Public Member Functions

Constructors/Destructors
 IborFallbackCurveSegment ()
 Default constructor. More...
 
 IborFallbackCurveSegment (const string &typeID, const string &iborIndex, const string &rfrCurve, const boost::optional< string > &rfrIndex, const boost::optional< Real > &spread)
 Detailed constructor. More...
 
Serialisation
virtual void fromXML (XMLNode *node) override
 
virtual XMLNodetoXML (XMLDocument &doc) const override
 
Inspectors
const string & iborIndex () const
 
const string & rfrCurve () const
 
const boost::optional< string > & rfrIndex () const
 
const boost::optional< Real > & spread () const
 
- Public Member Functions inherited from YieldCurveSegment
virtual ~YieldCurveSegment ()
 Default destructor. More...
 
Type type () const
 
const string & typeID () const
 
const string & conventionsID () const
 
const QuantLib::Pillar::Choice pillarChoice () const
 
Size priority () const
 
Size minDistance () const
 
const vector< pair< string, bool > > & quotes () const
 
- Public Member Functions inherited from XMLSerializable
virtual ~XMLSerializable ()
 
virtual void fromXML (XMLNode *node)=0
 
virtual XMLNodetoXML (XMLDocument &doc) const =0
 
void fromFile (const std::string &filename)
 
void toFile (const std::string &filename) const
 
void fromXMLString (const std::string &xml)
 Parse from XML string. More...
 
std::string toXMLString () const
 Parse from XML string. More...
 

Visitability

string iborIndex_
 
string rfrCurve_
 
boost::optional< string > rfrIndex_
 
boost::optional< Real > spread_
 
virtual void accept (AcyclicVisitor &) override
 

Additional Inherited Members

- Public Types inherited from YieldCurveSegment
enum class  Type {
  Zero , ZeroSpread , Discount , Deposit ,
  FRA , Future , OIS , Swap ,
  AverageOIS , TenorBasis , TenorBasisTwo , BMABasis ,
  FXForward , CrossCcyBasis , CrossCcyFixFloat , DiscountRatio ,
  FittedBond , WeightedAverage , YieldPlusDefault , IborFallback ,
  BondYieldShifted
}
 supported segment types More...
 
- Protected Member Functions inherited from YieldCurveSegment
 YieldCurveSegment ()
 Default constructor. More...
 
 YieldCurveSegment (const string &typeID, const string &conventionsID, const vector< string > &quotes)
 Detailed constructor - assumes all quotes are mandatory. More...
 
pair< string, boolquote (const string &name, bool opt=false)
 Utility to build a quote, optional flag defaults to false. More...
 
- Protected Attributes inherited from YieldCurveSegment
vector< pair< string, bool > > quotes_
 Quote and optional flag pair. More...
 

Detailed Description

Ibor Fallback yield curve segment.

A curve segment to build a Ibor forwarding curve from an OIS RFR index and a fallback spread

Definition at line 560 of file yieldcurveconfig.hpp.

Constructor & Destructor Documentation

◆ IborFallbackCurveSegment() [1/2]

Default constructor.

Definition at line 565 of file yieldcurveconfig.hpp.

565{}

◆ IborFallbackCurveSegment() [2/2]

IborFallbackCurveSegment ( const string &  typeID,
const string &  iborIndex,
const string &  rfrCurve,
const boost::optional< string > &  rfrIndex,
const boost::optional< Real > &  spread 
)

Detailed constructor.

Definition at line 838 of file yieldcurveconfig.cpp.

Member Function Documentation

◆ fromXML()

void fromXML ( XMLNode node)
overridevirtual

Reimplemented from YieldCurveSegment.

Definition at line 844 of file yieldcurveconfig.cpp.

844 {
845 XMLUtils::checkNode(node, "IborFallback");
847 iborIndex_ = XMLUtils::getChildValue(node, "IborIndex", true);
848 rfrCurve_ = XMLUtils::getChildValue(node, "RfrCurve", true);
849 rfrIndex_ = boost::none;
850 spread_ = boost::none;
851 if (auto n = XMLUtils::getChildNode(node, "RfrIndex"))
853 if (auto n = XMLUtils::getChildNode(node, "Spread"))
855}
static void checkNode(XMLNode *n, const string &expectedName)
Definition: xmlutils.cpp:175
static string getChildValue(XMLNode *node, const string &name, bool mandatory=false, const string &defaultValue=string())
Definition: xmlutils.cpp:277
static XMLNode * getChildNode(XMLNode *n, const string &name="")
Definition: xmlutils.cpp:387
static string getNodeValue(XMLNode *node)
Get a node's value.
Definition: xmlutils.cpp:489
virtual void fromXML(XMLNode *node) override
Real parseReal(const string &s)
Convert text to Real.
Definition: parsers.cpp:112
+ Here is the call graph for this function:

◆ toXML()

XMLNode * toXML ( XMLDocument doc) const
overridevirtual

Reimplemented from YieldCurveSegment.

Definition at line 857 of file yieldcurveconfig.cpp.

857 {
859 XMLUtils::setNodeName(doc, node, "IborFallback");
860 XMLUtils::addChild(doc, node, "IborIndex", iborIndex_);
861 XMLUtils::addChild(doc, node, "RfrCurve", rfrCurve_);
862 if (rfrIndex_)
863 XMLUtils::addChild(doc, node, "RfrIndex", *rfrIndex_);
864 if (spread_)
865 XMLUtils::addChild(doc, node, "Spread", *spread_);
866 return node;
867}
static void setNodeName(XMLDocument &doc, XMLNode *node, const string &name)
Definition: xmlutils.cpp:478
static XMLNode * addChild(XMLDocument &doc, XMLNode *n, const string &name)
Definition: xmlutils.cpp:181
virtual XMLNode * toXML(XMLDocument &doc) const override
rapidxml::xml_node< char > XMLNode
Definition: xmlutils.hpp:60
+ Here is the call graph for this function:

◆ iborIndex()

const string & iborIndex ( ) const

Definition at line 578 of file yieldcurveconfig.hpp.

578{ return iborIndex_; }

◆ rfrCurve()

const string & rfrCurve ( ) const

Definition at line 579 of file yieldcurveconfig.hpp.

579{ return rfrCurve_; }

◆ rfrIndex()

const boost::optional< string > & rfrIndex ( ) const

Definition at line 580 of file yieldcurveconfig.hpp.

580{ return rfrIndex_; }

◆ spread()

const boost::optional< Real > & spread ( ) const

Definition at line 581 of file yieldcurveconfig.hpp.

581{ return spread_; }

◆ accept()

void accept ( AcyclicVisitor &  v)
overridevirtual

Reimplemented from YieldCurveSegment.

Definition at line 869 of file yieldcurveconfig.cpp.

869 {
870 Visitor<IborFallbackCurveSegment>* v1 = dynamic_cast<Visitor<IborFallbackCurveSegment>*>(&v);
871 if (v1 != 0)
872 v1->visit(*this);
873 else
875}
virtual void accept(AcyclicVisitor &)
+ Here is the call graph for this function:

Member Data Documentation

◆ iborIndex_

string iborIndex_
private

Definition at line 590 of file yieldcurveconfig.hpp.

◆ rfrCurve_

string rfrCurve_
private

Definition at line 591 of file yieldcurveconfig.hpp.

◆ rfrIndex_

boost::optional<string> rfrIndex_
private

Definition at line 592 of file yieldcurveconfig.hpp.

◆ spread_

boost::optional<Real> spread_
private

Definition at line 593 of file yieldcurveconfig.hpp.