com::ftlabs::fisa::IndexLinkedInterestRateSchedule Class Reference

#include <IndexLinkedInterestRateSchedule.h>

Inheritance diagram for com::ftlabs::fisa::IndexLinkedInterestRateSchedule:

com::ftlabs::fisa::InterestRateSchedule List of all members.

Public Member Functions

 IndexLinkedInterestRateSchedule (const FISADate &settlementDate, const Redemption &redemption, const double interestRate, const int interestFrequency, const bool eomAdjust, const FISADate &datedDate, const PriceIndexFactory *priceIndices)
 Create an IndexLinkedInterestRateSchedule.
 IndexLinkedInterestRateSchedule (const FISADate &settlementDate, const Redemption &redemption, const double interestRate, const int interestFrequency, const bool eomAdjust, const FISADate &datedDate, const PriceIndexFactory *priceIndices, const double inflationRate)
 Create an IndexLinkedInterestRateSchedule.
virtual ~IndexLinkedInterestRateSchedule (void)
int getIndex (const FISADate &date) const
 Get the index of the given date.
double getInterestRate (const FISADate &date) const
 Get the interest rate that would be applicable for the given date.
int getCount () const
 Get the total number of interest rates in this schedule.
const FISADate getDate (int index) const
 Get the conversionDate for the specified index.
void getDate (int index, FISADate &date) const
 Get the conversionDate for the specified index.
double getInterestRate (int index) const
 Get the interest reate for the specified index.
double getAdjustedValue (int index, double value) const

Protected Member Functions

void init (const FISADate &settlementDate, const Redemption &redemption, const double interestRate, const FISADate &datedDate, const double inflationRate)

Private Attributes

const PriceIndexFactorypriceIndices
const double interestRate
com::ftlabs::fisa::calc::CouponDateGenerator
*const 
couponDates
int count
FISADate dated
FISADate first
FISADate last
FISADate redemption
double baseIndex
double currentIndex
FISADate currentDate
double inflationRate

Constructor & Destructor Documentation

com::ftlabs::fisa::IndexLinkedInterestRateSchedule::IndexLinkedInterestRateSchedule ( const FISADate settlementDate,
const Redemption redemption,
const double  interestRate,
const int  interestFrequency,
const bool  eomAdjust,
const FISADate datedDate,
const PriceIndexFactory priceIndices 
)

Create an IndexLinkedInterestRateSchedule.

The inflation rate will be calculated based on the current RPI, and the RPI 12 months prior.

com::ftlabs::fisa::IndexLinkedInterestRateSchedule::IndexLinkedInterestRateSchedule ( const FISADate settlementDate,
const Redemption redemption,
const double  interestRate,
const int  interestFrequency,
const bool  eomAdjust,
const FISADate datedDate,
const PriceIndexFactory priceIndices,
const double  inflationRate 
)

Create an IndexLinkedInterestRateSchedule.

virtual com::ftlabs::fisa::IndexLinkedInterestRateSchedule::~IndexLinkedInterestRateSchedule ( void   )  [virtual]


Member Function Documentation

int com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getIndex ( const FISADate date  )  const [virtual]

Get the index of the given date.

Parameters:
date a date
Returns:
The index of the given date, or -1 if the date isn't found within this schedule.

Implements com::ftlabs::fisa::InterestRateSchedule.

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getInterestRate ( const FISADate date  )  const [virtual]

Get the interest rate that would be applicable for the given date.

Parameters:
date a date
Returns:
the interest rate that is applicable for the given date.

Implements com::ftlabs::fisa::InterestRateSchedule.

int com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getCount (  )  const [virtual]

Get the total number of interest rates in this schedule.

Returns:
the totla number of interest rates in this schedule.

Implements com::ftlabs::fisa::InterestRateSchedule.

const FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getDate ( int  index  )  const [virtual]

Get the conversionDate for the specified index.

Parameters:
index the interest rate index
Returns:
the conversionDate for the specified index.

Implements com::ftlabs::fisa::InterestRateSchedule.

void com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getDate ( int  index,
FISADate date 
) const [virtual]

Get the conversionDate for the specified index.

Parameters:
index the interest rate index
Returns:
the conversionDate for the specified index.

Implements com::ftlabs::fisa::InterestRateSchedule.

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getInterestRate ( int  index  )  const [virtual]

Get the interest reate for the specified index.

Parameters:
index the interest rate index
Returns:
the interest rate for the specified index.

Implements com::ftlabs::fisa::InterestRateSchedule.

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::getAdjustedValue ( int  index,
double  value 
) const

void com::ftlabs::fisa::IndexLinkedInterestRateSchedule::init ( const FISADate settlementDate,
const Redemption redemption,
const double  interestRate,
const FISADate datedDate,
const double  inflationRate 
) [protected]


Member Data Documentation

const PriceIndexFactory* com::ftlabs::fisa::IndexLinkedInterestRateSchedule::priceIndices [private]

const double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::interestRate [private]

com::ftlabs::fisa::calc::CouponDateGenerator* const com::ftlabs::fisa::IndexLinkedInterestRateSchedule::couponDates [private]

int com::ftlabs::fisa::IndexLinkedInterestRateSchedule::count [private]

FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::dated [private]

FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::first [private]

FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::last [private]

FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::redemption [private]

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::baseIndex [private]

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::currentIndex [private]

FISADate com::ftlabs::fisa::IndexLinkedInterestRateSchedule::currentDate [private]

double com::ftlabs::fisa::IndexLinkedInterestRateSchedule::inflationRate [private]


The documentation for this class was generated from the following file:
Generated on Tue Feb 5 03:50:27 2008 for FTLabs FISA (c++) by  doxygen 1.5.2