Class implements Builder that helps to construct vector of cash flows. More...

#include <CashFlowBuilder.hpp>

Public Member Functions

 CashFlowBuilder ()
 constructor More...
 
CashFlowBuilderusingCalendar (const Calendar &)
 provides calendar used in calculating dates More...
 
CashFlowBuilderwithTenor (const Tenor &)
 provides tenor of last date More...
 
CashFlowBuilderwithStartDate (const Date &)
 provides starting date More...
 
CashFlowBuilderwithEndDate (const Date &)
 payment of last CF More...
 
CashFlowBuilderwithNotional (const double)
 provide notional More...
 
CashFlowBuilderwithQuote (const double)
 provides quote More...
 
CashFlowBuilderwithFxRate (const double)
 provide Fx Spot More...
 
CashFlowBuilderwithAdditiveMargin (const double)
 adds margin to floating CFs More...
 
CashFlowBuilderwithMultiplicativeMargin (const double)
 adds multiplicative margin to floating CFs More...
 
CashFlowBuilderwithFixing (const std::map< Date, double > &)
 provides fixings, if fixing dates match CF dates, the value CF are set More...
 
CashFlowBuilderwithInterestRate (const InterestRate &)
 provides interest rate convention More...
 
CashFlowBuilderwithPaymentFrequency (Frequency)
 frequency of payments More...
 
CashFlowBuilderwithExchangeOfNotional (bool)
 If exchange of notional is set to true, notional is added to first and last CF. More...
 
CashFlowBuilderbuildFloatingCashFlows ()
 builds Floating CFs More...
 
CashFlowBuilderbuildFixedCashFlows ()
 builds Fixed CFs More...
 
 operator CashFlowVector ()
 Convert CashFlowBuilder to CashFlowVector. More...
 

Private Member Functions

void fixedCFWithExchangeOfNotional ()
 Constructs the CashFlowVector with fixed cash flows, the first and the last CF contain notional. More...
 
void fixedCFWithoutExchangeOfNotional ()
 Constructs the CashFlowVector with fixed cash flows,. More...
 

Private Attributes

CashFlowVector cfv_
 Cash flow vector. More...
 
double notional_
 Notional of the cash flows. More...
 
Tenor tenor_
 Tenor of the last CF. More...
 
Calendar calendar_
 Calendar used in construction of CF vector. More...
 
Frequency frequency_
 Frequency of CFs. More...
 
Date start_date_
 Start date of first CFs. More...
 
Date end_date_
 Payment of last CFs. More...
 
double quote_
 Quote used to calculate the fixed cashflow. More...
 
double additive_margin_
 Additive margin used by floating cashflows. More...
 
double multiplicative_margin_
 Multiplicative margin used by floating cashflows. More...
 
double fx_rate_
 FxRate. More...
 
std::map< Date, double > fixings_
 Fixing used to determined pasted floating cash flows. More...
 
bool exchange_of_notional_
 If exchange of notional is set to true the first and the last CFs contains notional. More...
 
InterestRate rate_
 Interest rate convention. More...
 

Detailed Description

Class implements Builder that helps to construct vector of cash flows.

Constructor & Destructor Documentation

julian::CashFlowBuilder::CashFlowBuilder ( )

constructor

Member Function Documentation

CashFlowBuilder & julian::CashFlowBuilder::buildFixedCashFlows ( )

builds Fixed CFs

CashFlowBuilder & julian::CashFlowBuilder::buildFloatingCashFlows ( )

builds Floating CFs

void julian::CashFlowBuilder::fixedCFWithExchangeOfNotional ( )
private

Constructs the CashFlowVector with fixed cash flows, the first and the last CF contain notional.

void julian::CashFlowBuilder::fixedCFWithoutExchangeOfNotional ( )
private

Constructs the CashFlowVector with fixed cash flows,.

julian::CashFlowBuilder::operator CashFlowVector ( )
CashFlowBuilder & julian::CashFlowBuilder::usingCalendar ( const Calendar input)

provides calendar used in calculating dates

CashFlowBuilder & julian::CashFlowBuilder::withAdditiveMargin ( const double  input)

adds margin to floating CFs

CashFlowBuilder & julian::CashFlowBuilder::withEndDate ( const Date input)

payment of last CF

If not provided end date calculated using tenor

CashFlowBuilder & julian::CashFlowBuilder::withExchangeOfNotional ( bool  input)

If exchange of notional is set to true, notional is added to first and last CF.

CashFlowBuilder & julian::CashFlowBuilder::withFixing ( const std::map< Date, double > &  input)

provides fixings, if fixing dates match CF dates, the value CF are set

CashFlowBuilder & julian::CashFlowBuilder::withFxRate ( const double  input)

provide Fx Spot

CashFlowBuilder & julian::CashFlowBuilder::withInterestRate ( const InterestRate input)

provides interest rate convention

CashFlowBuilder & julian::CashFlowBuilder::withMultiplicativeMargin ( const double  input)

adds multiplicative margin to floating CFs

CashFlowBuilder & julian::CashFlowBuilder::withNotional ( const double  input)

provide notional

CashFlowBuilder & julian::CashFlowBuilder::withPaymentFrequency ( Frequency  f)

frequency of payments

CashFlowBuilder & julian::CashFlowBuilder::withQuote ( const double  input)

provides quote

CashFlowBuilder & julian::CashFlowBuilder::withStartDate ( const Date input)

provides starting date

CashFlowBuilder & julian::CashFlowBuilder::withTenor ( const Tenor input)

provides tenor of last date

Used when end date is not provided

Member Data Documentation

double julian::CashFlowBuilder::additive_margin_
private

Additive margin used by floating cashflows.

Calendar julian::CashFlowBuilder::calendar_
private

Calendar used in construction of CF vector.

CashFlowVector julian::CashFlowBuilder::cfv_
private

Cash flow vector.

Date julian::CashFlowBuilder::end_date_
private

Payment of last CFs.

bool julian::CashFlowBuilder::exchange_of_notional_
private

If exchange of notional is set to true the first and the last CFs contains notional.

std::map<Date,double> julian::CashFlowBuilder::fixings_
private

Fixing used to determined pasted floating cash flows.

Frequency julian::CashFlowBuilder::frequency_
private

Frequency of CFs.

double julian::CashFlowBuilder::fx_rate_
private

FxRate.

double julian::CashFlowBuilder::multiplicative_margin_
private

Multiplicative margin used by floating cashflows.

double julian::CashFlowBuilder::notional_
private

Notional of the cash flows.

double julian::CashFlowBuilder::quote_
private

Quote used to calculate the fixed cashflow.

InterestRate julian::CashFlowBuilder::rate_
private

Interest rate convention.

Date julian::CashFlowBuilder::start_date_
private

Start date of first CFs.

Tenor julian::CashFlowBuilder::tenor_
private

Tenor of the last CF.


The documentation for this class was generated from the following files:
  • C:/Unix/home/OEM/jULIAN/src/instruments/CashFlowBuilder.hpp
  • C:/Unix/home/OEM/jULIAN/src/instruments/CashFlowBuilder.cpp