com.ftlabs.fisa
Class DiscountSecurity

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

public class DiscountSecurity
extends MaturingSecurity

An implementation of a discount Security.

See Also:
Serialized Form

Constructor Summary
DiscountSecurity(Market market)
          Creates a DiscountSecurity object of the given Market.
DiscountSecurity(Market market, FISADate maturityDate, FISADate datedDate)
          Creates a DiscountSecurity object of the given Market.
 
Method Summary
 Calculator getCalculator(FISADate settlementDate, Redemption redemption)
          Get a Calculator for this DiscountSecurity and provided settlementDate to Redemption period using the overriding DayCountBasis.
 void validateData(FISADate settlementDate, FISADate redemptionDate)
           
 
Methods inherited from class com.ftlabs.fisa.MaturingSecurity
calculate, calculate, calculateAccruedInterest, calculatePrice, calculatePrice, calculateYield, calculateYield, createQuoteAnalytics, getCalculator, getMaturity, getMaturityDate, getRedemptions, 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

DiscountSecurity

public DiscountSecurity(Market market)
Creates a DiscountSecurity 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.

DiscountSecurity

public DiscountSecurity(Market market,
                        FISADate maturityDate,
                        FISADate datedDate)
Creates a DiscountSecurity 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
datedDate - the dated date or issue date
Method Detail

getCalculator

public Calculator getCalculator(FISADate settlementDate,
                                Redemption redemption)
                         throws CalculationException
Get a Calculator for this DiscountSecurity 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