com.ftlabs.fisa.calc
Class MultiplePeriodCalculator

java.lang.Object
  extended by com.ftlabs.fisa.calc.AbstractCalculator
      extended by com.ftlabs.fisa.calc.MultipleCashFlowCalculator
          extended by com.ftlabs.fisa.calc.MultiplePeriodCalculator
All Implemented Interfaces:
Calculator, YieldConvergable, java.io.Serializable
Direct Known Subclasses:
CDFixedInterestRateCalculator, FixedInterestRateCalculator, SteppedCouponCalculator

public abstract class MultiplePeriodCalculator
extends MultipleCashFlowCalculator

See Also:
Serialized Form

Field Summary
protected  double act_df
           
protected  double act_ldf
           
protected  double aif
           
protected  double df
           
protected  double fcf
           
protected  double lcf
           
protected  double ldf
           
 
Fields inherited from class com.ftlabs.fisa.calc.MultipleCashFlowCalculator
eomAdjust, interestFrequency, nextCouponDate, parValue, redemption, settlementDate
 
Constructor Summary
protected MultiplePeriodCalculator()
           
protected MultiplePeriodCalculator(FISADate settlementDate, Redemption redemption, double parValue, DayCountBasis dayCountBasis, int interestFrequency, boolean eomAdjust, FISADate datedDate, FISADate firstInterestDate)
           
 
Method Summary
 double getPeriodicTimeToFlow(int cashFlowIndex)
          Get the periodic time to flow as calculated with an actual day count method for a particular cashflow, as specified by cashFlowIndex.
 double getTimeToFlow(int cashFlowIndex)
          Get the time to flow for a particular cashflow, as specified by cashFlowIndex.
protected  void setValues(FISADate settlementDate, Redemption redemption, double parValue, DayCountBasis dayCountBasis, int interestFrequency, boolean eomAdjust, FISADate datedDate, FISADate firstInterestDate)
           
 
Methods inherited from class com.ftlabs.fisa.calc.MultipleCashFlowCalculator
calculateConvexity, calculateEstimatedMacaulayDuration, calculateEstimatedModifiedDuration, calculateEstimatedModifiedDuration, calculateInterestOnInterest, calculateMacaulayDuration, calculateModifiedDuration, calculateModifiedDuration, calculateYieldValue1_32, getCashFlowDate, getCashFlowDate, getPrincipal, getRedemption, getSettlementDate, getTotalCashFlow, setValues
 
Methods inherited from class com.ftlabs.fisa.calc.AbstractCalculator
calculateApproximateYield, calculateMPCIPrice, calculateSPSIPrice, calculateSPSIYield, calculateTotalInterestFlows
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ftlabs.fisa.calc.Calculator
calculate, calculateAccruedInterest, calculateCurrentYield, calculateEstimatedConvexity, calculatePeriodicYield, calculatePrice, calculatePriceValue1BP, calculateYield, getCashFlowCount, getInterest
 

Field Detail

aif

protected double aif

fcf

protected double fcf

df

protected double df

lcf

protected double lcf

ldf

protected double ldf

act_df

protected double act_df

act_ldf

protected double act_ldf
Constructor Detail

MultiplePeriodCalculator

protected MultiplePeriodCalculator()

MultiplePeriodCalculator

protected MultiplePeriodCalculator(FISADate settlementDate,
                                   Redemption redemption,
                                   double parValue,
                                   DayCountBasis dayCountBasis,
                                   int interestFrequency,
                                   boolean eomAdjust,
                                   FISADate datedDate,
                                   FISADate firstInterestDate)
                            throws CalculationException
Throws:
CalculationException
Method Detail

setValues

protected void setValues(FISADate settlementDate,
                         Redemption redemption,
                         double parValue,
                         DayCountBasis dayCountBasis,
                         int interestFrequency,
                         boolean eomAdjust,
                         FISADate datedDate,
                         FISADate firstInterestDate)
                  throws CalculationException
Throws:
CalculationException

getTimeToFlow

public double getTimeToFlow(int cashFlowIndex)
Description copied from interface: Calculator
Get the time to flow for a particular cashflow, as specified by cashFlowIndex.

Parameters:
cashFlowIndex - The cashflow index. cashFlowIndex is zero based and must be a number from 0 to getCashFlowCount() - 1.
Returns:
The time to flow for the specified cashflow.

getPeriodicTimeToFlow

public double getPeriodicTimeToFlow(int cashFlowIndex)
Description copied from interface: Calculator
Get the periodic time to flow as calculated with an actual day count method for a particular cashflow, as specified by cashFlowIndex. This value is generally used in actual convexity and duration methods.

Parameters:
cashFlowIndex - The cashflow index. cashFlowIndex is zero based and must be a number from 0 to getCashFlowCount() - 1.
Returns:
The periodic time to flow as calculated with an actual day count method for the specified cashflow.