julian::ir::BuildingBlock Class Referenceabstract

Building Block is a class that defines the interface for benchmark instruments used for estimating interest rate curve. More...

#include <curveBuildingBlock.hpp>

Inheritance diagram for julian::ir::BuildingBlock:
julian::Deposit julian::FRA julian::IRS

Public Member Functions

virtual Date getDate () const =0
 returns maturity. More...
 
virtual double calibrate (const SmartPointer< ir::Curve > &calibrated)=0
 Method calibrate is used by root finding estimator. More...
 
virtual double calibrate (const SmartPointer< Curve > &discounting, const SmartPointer< Curve > &projection, const SmartPointer< Curve > &calibrated)=0
 Method calibrate is used by root finding estimator. More...
 
virtual double getParRate (const SmartPointer< Curve > &discounting, const SmartPointer< Curve > &projection, const SmartPointer< Curve > &projection2)=0
 Implies quoting of benchmark instrument from interest rate curves provided. More...
 
virtual double getQuoting ()=0
 Returns quoting of the instrument. More...
 
virtual void changeQuoting (double)=0
 changes quoting of the instrument More...
 
virtual std::pair< CashFlowVector, CashFlowVectorgetCFs () const =0
 Returns the sets of cashflows associated with the benchmark instruments. More...
 
virtual InterestRate getInterestRate () const =0
 Returns interest rates convention of the benchmark instruments. More...
 
virtual std::string info () const =0
 Returns a name of instrument. More...
 
virtual BuildingBlockclone () const =0
 Virtual copy constructor. More...
 
virtual ~BuildingBlock ()
 destructor More...
 

Detailed Description

Building Block is a class that defines the interface for benchmark instruments used for estimating interest rate curve.

Building Blocks defines the interface used by interest rate curve estimators.

  • Method calibrate is used by Newton Raphson Estimator. The estimator calibrates curve by finding the root of this method.
  • Method parRate, giveQuoting and changeQuoting are used by smoothing optimization algorithms that find the curve which minimizes the difference between market rate and quoting implied from the curve.
  • Method getCFs are used by standard boots-trappers which are based on defining linear system of equation [CFij] [DFi] = [PRIZEj]

Constructor & Destructor Documentation

virtual julian::ir::BuildingBlock::~BuildingBlock ( )
inlinevirtual

destructor

Member Function Documentation

virtual double julian::ir::BuildingBlock::calibrate ( const SmartPointer< ir::Curve > &  calibrated)
pure virtual

Method calibrate is used by root finding estimator.

The estimator calibrates curve by finding the root of this method.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual double julian::ir::BuildingBlock::calibrate ( const SmartPointer< Curve > &  discounting,
const SmartPointer< Curve > &  projection,
const SmartPointer< Curve > &  calibrated 
)
pure virtual

Method calibrate is used by root finding estimator.

The estimator calibrates curve by finding the root of this method. This method is used when multi-curve environment is used.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual void julian::ir::BuildingBlock::changeQuoting ( double  )
pure virtual

changes quoting of the instrument

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual BuildingBlock* julian::ir::BuildingBlock::clone ( ) const
pure virtual

Virtual copy constructor.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual std::pair<CashFlowVector, CashFlowVector> julian::ir::BuildingBlock::getCFs ( ) const
pure virtual

Returns the sets of cashflows associated with the benchmark instruments.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual Date julian::ir::BuildingBlock::getDate ( ) const
pure virtual

returns maturity.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual InterestRate julian::ir::BuildingBlock::getInterestRate ( ) const
pure virtual

Returns interest rates convention of the benchmark instruments.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual double julian::ir::BuildingBlock::getParRate ( const SmartPointer< Curve > &  discounting,
const SmartPointer< Curve > &  projection,
const SmartPointer< Curve > &  projection2 
)
pure virtual

Implies quoting of benchmark instrument from interest rate curves provided.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual double julian::ir::BuildingBlock::getQuoting ( )
pure virtual

Returns quoting of the instrument.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.

virtual std::string julian::ir::BuildingBlock::info ( ) const
pure virtual

Returns a name of instrument.

Implemented in julian::IRS, julian::FRA, and julian::Deposit.


The documentation for this class was generated from the following file: