com.ftlabs.fisa
Class PerpetualPreferredSecurity

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

public class PerpetualPreferredSecurity
extends AbstractPreferredSecurity

See Also:
Serialized Form

Field Summary
 
Fields inherited from class com.ftlabs.fisa.AbstractPreferredSecurity
dividendPaymentDate, exDividendDate, interestFrequency, interestRate
 
Constructor Summary
PerpetualPreferredSecurity(Market market)
          Creates an PerpetualPreferredSecurity object of the given Market.
 
Method Summary
 QuoteAnalytics createQuoteAnalytics(Quote quote, FISADate settlementDate)
           
 Calculator getCalculator(FISADate settlementDate)
          Get a Calculator for this Security and provided settlementDate.
 Calculator getCalculator(FISADate tradeDate, FISADate settlementDate)
          Get a Calculator for this Security and provided tradeDate and settlementDate.
 Calculator getCalculator(FISADate tradeDate, FISADate settlementDate, Redemption redemption)
          Get a Calculator for this PerpetualPreferredSecurity and provided settlementDate to Redemption period using the overriding DayCountBasis.
 java.util.Collection getRedemptions()
          Get a Collection of all Redemptions.
 
Methods inherited from class com.ftlabs.fisa.AbstractPreferredSecurity
calculate, calculate, calculateAccruedInterest, calculatePrice, calculatePrice, calculateYield, calculateYield, getCalculator, getCallSchedule, getDividendPaymentDate, getExDividendDate, getInterestFrequency, getInterestRate, setCallSchedule, setDividendPaymentDate, setExDividendDate, setInterestFrequency, setInterestRate
 
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

PerpetualPreferredSecurity

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

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

getCalculator

public Calculator getCalculator(FISADate settlementDate)
                         throws CalculationException
Get a Calculator for this Security and provided settlementDate. The settlementDate will be used as tradeDate.

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

getCalculator

public Calculator getCalculator(FISADate tradeDate,
                                FISADate settlementDate)
                         throws CalculationException
Get a Calculator for this Security and provided tradeDate and settlementDate.

Parameters:
tradeDate - The binding tradeDate for which all calculations will be run.
settlementDate - The binding settlementDate for which all calculations will be run.
Returns:
A Calculator for this Security and provided trade date and settlement date
Throws:
com.ftlabs.fis.calc.CalculationException
CalculationException

getCalculator

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

Parameters:
tradeDate - The binding tradeDate for which all calculations will be run.
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

createQuoteAnalytics

public QuoteAnalytics createQuoteAnalytics(Quote quote,
                                           FISADate settlementDate)
                                    throws CalculationException
Throws:
CalculationException

getRedemptions

public java.util.Collection getRedemptions()
Get a Collection of all Redemptions.

Specified by:
getRedemptions in interface Security
Overrides:
getRedemptions in class AbstractPreferredSecurity
Returns:
a Collection of all Redemptions.