Interest Rate Curve

Interest rate curve and all supporting classes (interpolators, estimators, modifiers). More...

Modules

 Interest Rate Curve Estimators
 Algorithms of interest rate curve estimation.
 
 Interest Rate Curve Interpolators
 Definitions of interpolators and extrapolators of interest rate curve.
 

Classes

class  julian::ir::BuildingBlock
 Building Block is a class that defines the interface for benchmark instruments used for estimating interest rate curve. More...
 
struct  julian::ir::CurveSettings
 Structure holding settings of ir::InterpolatedCurve. More...
 
class  julian::ir::FlatCurve
 The class defines the flat interest rate curve. More...
 
class  julian::ir::InterpolatedCurve
 The object models the interest rate curve. More...
 
class  julian::ir::Curve
 The class interfaces interest rate curves. More...
 
class  julian::ir::BuildCurve
 Class implements Builder design pattern that can be used to create interest rate curves. More...
 

Functions

DataFrame julian::ir::getCurves (SmartPointer< Curve > c, Tenor step, Tenor end, std::string id)
 Function saves curve in DataFrame. More...
 
std::vector< Deposit > julian::ir::readDeposit (DataFrame df, Date today, Calendar calendar)
 Function construct deposit using data stored in DataFrame. More...
 
std::vector< FRA > julian::ir::readFRA (DataFrame df, Date today, Calendar calendar)
 Function construct FRA using data stored in DataFrame. More...
 
std::vector< IRS > julian::ir::readIRS (DataFrame df, Date today, Calendar calendar)
 Function construct IRS using data stored in DataFrame. More...
 
DataFrame julian::ir::getCalibration (const SmartPointer< ir::Curve > &c, const std::vector< SmartPointer< ir::BuildingBlock > > &instruments, const std::string id)
 Function calculates the par rate and price of provided instruments, what allows assessing calibration. More...
 

Detailed Description

Interest rate curve and all supporting classes (interpolators, estimators, modifiers).

Function Documentation

DataFrame julian::ir::getCalibration ( const SmartPointer< ir::Curve > &  c,
const std::vector< SmartPointer< ir::BuildingBlock > > &  instruments,
const std::string  id 
)

Function calculates the par rate and price of provided instruments, what allows assessing calibration.

Parameters
cInterest rate curve
instrumentsBenchmark instruments used to assess calibration
idId copied to all rows of data frame
Returns
Returns data frame
Examples:
algebraicBootstrapperExample.cpp, constrainedBootstrapperExample.cpp, rootFindingBootstrapperExample.cpp, and unconstrainedBootstrapperExample.cpp.
DataFrame julian::ir::getCurves ( SmartPointer< Curve c,
Tenor  step,
Tenor  end,
std::string  id 
)

Function saves curve in DataFrame.

Function calculates and saves curve using following representation:

  • Discount Factors
  • Zero coupon rates
  • 1 day fwd rates approximating instantaneous rate
  • forward rates with basis: 1W, 2W, 1M, 2M, 3M, 6M
Parameters
cInterest rate curve
stepTime steps used to generate the dates grid
endTenor of last date
idId copied to all rows of data frame
Returns
Returns data frame
Examples:
algebraicBootstrapperExample.cpp, bootstrapperComparison.cpp, constrainedBootstrapperExample.cpp, rootFindingBootstrapperExample.cpp, and unconstrainedBootstrapperExample.cpp.
std::vector< Deposit > julian::ir::readDeposit ( DataFrame  df,
Date  today,
Calendar  calendar 
)

Function construct deposit using data stored in DataFrame.

Data Frame must contain column:

  • YF1: Year fraction for deposit rate
  • RateConvention: Compounding convention of deposit rate
  • Rate: Quoting
  • Tenor: Tenor of deposit
Parameters
dfDataFrame
todayStart day of deposits
calendarCalendar used to calculate dates of deposits
Returns
Vector of deposits
Examples:
algebraicBootstrapperExample.cpp, constrainedBootstrapperExample.cpp, rootFindingBootstrapperExample.cpp, and unconstrainedBootstrapperExample.cpp.
std::vector< FRA > julian::ir::readFRA ( DataFrame  df,
Date  today,
Calendar  calendar 
)

Function construct FRA using data stored in DataFrame.

Data Frame must contain column:

  • YF1: Year fraction for FRA rate
  • RateConvention: Compounding convention of FRA rate
  • Rate: Quoting
  • FRAstart: starting tenor of FRA
  • Tenor: Maturity of FRA
Parameters
dfDataFrame
todayStart day of FRAs
calendarCalendar used to calculate dates of FRAs
Returns
Vector of FRAs
Examples:
algebraicBootstrapperExample.cpp, constrainedBootstrapperExample.cpp, rootFindingBootstrapperExample.cpp, and unconstrainedBootstrapperExample.cpp.
std::vector< IRS > julian::ir::readIRS ( DataFrame  df,
Date  today,
Calendar  calendar 
)

Function construct IRS using data stored in DataFrame.

Data Frame must contain column:

  • YF1: Year fraction for fixed leg rate
  • YF2: Year fraction for floating leg rate
  • RateConvention: Compounding convention of swap rates
  • Rate: Quoting
  • FRAstart: starting tenor of FRA
  • FreqFix: Frequency of fixed leg
  • FreqFlo: Frequency of floating leg
  • Tenor: Maturity of FRA
Parameters
dfDataFrame
todayStart day of swaps
calendarCalendar used to calculate dates of swaps
Returns
Vector of swaps
Examples:
algebraicBootstrapperExample.cpp, constrainedBootstrapperExample.cpp, rootFindingBootstrapperExample.cpp, and unconstrainedBootstrapperExample.cpp.