com::ftlabs::fisa::calc::MultipleCashFlowCalculator Class Reference

#include <MultipleCashFlowCalculator.h>

Inheritance diagram for com::ftlabs::fisa::calc::MultipleCashFlowCalculator:

com::ftlabs::fisa::calc::AbstractCalculator com::ftlabs::fisa::calc::Calculator com::ftlabs::fisa::calc::YieldConvergable com::ftlabs::fisa::calc::MultiplePeriodCalculator com::ftlabs::fisa::calc::CDFixedInterestRateCalculator com::ftlabs::fisa::calc::FixedInterestRateCalculator com::ftlabs::fisa::calc::JapaneseCalculator com::ftlabs::fisa::calc::SteppedCouponCalculator com::ftlabs::fisa::calc::FirstPeriodSimpleInterestCalculator com::ftlabs::fisa::calc::MSRBFixedInterestRateCalculator com::ftlabs::fisa::calc::SimpleYTRMultiplePeriodCalculator com::ftlabs::fisa::calc::CDSteppedCouponCalculator com::ftlabs::fisa::calc::SteppedCouponCompoundingCalculator com::ftlabs::fisa::calc::MSRBSteppedCouponCalculator List of all members.

Public Member Functions

virtual ~MultipleCashFlowCalculator (void)
double calculateMacaulayDuration (double periodicYield) const throw ( CalculationException )
 Calculate the actual Macaulay duration.
double calculateModifiedDuration (double periodicYield) const throw ( CalculationException )
 Calculate the actual modified duration. If Macaulay Duration has already been or will be calculated, then it is more efficient to use the overloaded calculateModifiedDuration method that accepts the Macaulay Duration.
double calculateModifiedDuration (double macaulayDuration, double periodicYield) const throw ( CalculationException )
 Calculate the actual modified duration using an already calculated Macaulay Duration.
double calculateConvexity (double periodicYield) const throw ( CalculationException )
 Calculate the actual convexity.
virtual double calculateTrueYield (double price) const throw ( CalculationException )
 Calculate a True Yield, using adjusting cashflows that fall on business days.
virtual double calculateAccruedIncome (void) const throw ( CalculationException )
 Calculates the accrued interest income to Redemption.

Protected Member Functions

 MultipleCashFlowCalculator (void)
 MultipleCashFlowCalculator (int interestFrequency)
 MultipleCashFlowCalculator (const MultipleCashFlowCalculator &calculator)
MultipleCashFlowCalculatoroperator= (const MultipleCashFlowCalculator &calculator)
void setInterestFrequency (int interestFrequency)

Protected Attributes

int interestFrequency

Constructor & Destructor Documentation

com::ftlabs::fisa::calc::MultipleCashFlowCalculator::MultipleCashFlowCalculator ( void   )  [protected]

com::ftlabs::fisa::calc::MultipleCashFlowCalculator::MultipleCashFlowCalculator ( int  interestFrequency  )  [protected]

com::ftlabs::fisa::calc::MultipleCashFlowCalculator::MultipleCashFlowCalculator ( const MultipleCashFlowCalculator calculator  )  [protected]

virtual com::ftlabs::fisa::calc::MultipleCashFlowCalculator::~MultipleCashFlowCalculator ( void   )  [virtual]


Member Function Documentation

MultipleCashFlowCalculator& com::ftlabs::fisa::calc::MultipleCashFlowCalculator::operator= ( const MultipleCashFlowCalculator calculator  )  [protected]

void com::ftlabs::fisa::calc::MultipleCashFlowCalculator::setInterestFrequency ( int  interestFrequency  )  [protected]

double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateMacaulayDuration ( double  periodicYield  )  const throw ( CalculationException ) [virtual]

Calculate the actual Macaulay duration.

Parameters:
periodicYield The periodicYield as returned from the calculatePeriodicYield method.

Returns:
the Macaulay duration.

Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.

double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateModifiedDuration ( double  periodicYield  )  const throw ( CalculationException ) [virtual]

Calculate the actual modified duration. If Macaulay Duration has already been or will be calculated, then it is more efficient to use the overloaded calculateModifiedDuration method that accepts the Macaulay Duration.

Parameters:
periodicYield The periodicYield as returned from the calculatePeriodicYield method.

Returns:
the modified duration.

Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.

double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateModifiedDuration ( double  macaulayDuration,
double  periodicYield 
) const throw ( CalculationException ) [virtual]

Calculate the actual modified duration using an already calculated Macaulay Duration.

Parameters:
macaulayDuration The Macaulay Duration as calculated by the calculateMacaulayDuration method.
periodicYield The periodicYield as returned from the calculatePeriodicYield method.

Returns:
the modified duration.

Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.

double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateConvexity ( double  periodicYield  )  const throw ( CalculationException ) [virtual]

Calculate the actual convexity.

Parameters:
periodicYield The periodicYield as returned from the calculatePeriodicYield method.

Returns:
the convexity.

Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.

virtual double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateTrueYield ( double  price  )  const throw ( CalculationException ) [virtual]

Calculate a True Yield, using adjusting cashflows that fall on business days.

Cashflow dates are adjusted according to a provided HolidaySchedule and/or weekend days.

Parameters:
price the clean price.
Returns:
The true yield using adjusted cashflows that fall on business days.
Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.

Reimplemented in com::ftlabs::fisa::calc::CDFixedInterestRateCalculator, com::ftlabs::fisa::calc::CDSteppedCouponCalculator, com::ftlabs::fisa::calc::FixedInterestRateCalculator, com::ftlabs::fisa::calc::JapaneseCalculator, and com::ftlabs::fisa::calc::SteppedCouponCompoundingCalculator.

virtual double com::ftlabs::fisa::calc::MultipleCashFlowCalculator::calculateAccruedIncome ( void   )  const throw ( CalculationException ) [virtual]

Calculates the accrued interest income to Redemption.

Returns:
The accrued interest income to redemption.
Exceptions:
com::ftlabs::fisa::calc::CalculationException CalculationException

Implements com::ftlabs::fisa::calc::Calculator.


Member Data Documentation

int com::ftlabs::fisa::calc::MultipleCashFlowCalculator::interestFrequency [protected]


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