com.ftlabs.fisa
Class InterestAtMaturitySecurity

java.lang.Object
  extended by com.ftlabs.fisa.AbstractSecurity
      extended by com.ftlabs.fisa.MaturingSecurity
          extended by com.ftlabs.fisa.MaturingCallableSecurity
              extended by com.ftlabs.fisa.InterestAtMaturitySecurity
All Implemented Interfaces:
Security, java.io.Serializable

public class InterestAtMaturitySecurity
extends MaturingCallableSecurity

An interest at maturity implementation of Security.

See Also:
Serialized Form

Constructor Summary
InterestAtMaturitySecurity(Market market)
          Creates an InterestAtMaturitySecurity object of the given Market.
InterestAtMaturitySecurity(Market market, FISADate maturityDate, double interestRate, FISADate datedDate)
          Creates an InterestAtMaturitySecurity object of the given Market.
 
Method Summary
 Calculator getCalculator(FISADate settlementDate, Redemption redemption)
          Get a Calculator for this InterestAtMaturitySecurity and provided settlementDate to Redemption period using the overriding DayCountBasis.
 double getInterestRate()
          Get the interest rate.
 void setInterestRate(double interestRate)
          Set the interest rate.
 void validateData(FISADate settlementDate, FISADate redemptionDate)
           
 
Methods inherited from class com.ftlabs.fisa.MaturingCallableSecurity
createQuoteAnalytics, getCallSchedule, getRedemptions, setCallSchedule
 
Methods inherited from class com.ftlabs.fisa.MaturingSecurity
calculate, calculate, calculateAccruedInterest, calculatePrice, calculatePrice, calculateYield, calculateYield, getCalculator, getMaturity, getMaturityDate, setMaturity, setMaturity, setMaturity
 
Methods inherited from class com.ftlabs.fisa.AbstractSecurity
addSecurityInvalidationListener, getDatedDate, getDayCountBasis, getMarket, getParValue, invalidate, isEomAdjust, removeSecurityInvalidationListener, setDatedDate, setDayCountBasis, setEomAdjust, setParValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InterestAtMaturitySecurity

public InterestAtMaturitySecurity(Market market)
Creates an InterestAtMaturitySecurity object of the given Market.

Parameters:
market - required and immutable Market for this security. This constructor will throw a java.lang.NullPointerException if Market is null.

InterestAtMaturitySecurity

public InterestAtMaturitySecurity(Market market,
                                  FISADate maturityDate,
                                  double interestRate,
                                  FISADate datedDate)
Creates an InterestAtMaturitySecurity object of the given Market.

Parameters:
market - required and immutable Market for this security. This constructor will throw a java.lang.NullPointerException if Market is null.
maturityDate - the maturity date for this Security
interestRate - the interest rate for this Security
datedDate - the dated date or issue date
Method Detail

getInterestRate

public double getInterestRate()
Get the interest rate.

Returns:
The interest rate.

setInterestRate

public void setInterestRate(double interestRate)
Set the interest rate.

Parameters:
interestRate - The new interest rate.

getCalculator

public Calculator getCalculator(FISADate settlementDate,
                                Redemption redemption)
                         throws CalculationException
Get a Calculator for this InterestAtMaturitySecurity and provided settlementDate to Redemption period using the overriding DayCountBasis.

Parameters:
settlementDate - The binding settlementDate for which all calculations will be run.
redemption - The binding Redemption to which all calculations will be run.
Returns:
A Calculator for this Security and provided settlementDate to Redemption period.
Throws:
com.ftlabs.fis.calc.CalculationException
CalculationException

validateData

public void validateData(FISADate settlementDate,
                         FISADate redemptionDate)
                  throws CalculationException
Throws:
CalculationException