com::ftlabs::fisa::Security Class Reference

This is the base class for all Security types. This class defines methods for creating a Calculator for the implemented Security. More...

#include <Security.h>

Inheritance diagram for com::ftlabs::fisa::Security:

com::ftlabs::fisa::AbstractSecurity com::ftlabs::fisa::MaturingSecurity com::ftlabs::fisa::DiscountSecurity com::ftlabs::fisa::MaturingCallableSecurity com::ftlabs::fisa::InterestAtMaturitySecurity com::ftlabs::fisa::PeriodicInterestPaymentSecurity com::ftlabs::fisa::ZeroCouponSecurity com::ftlabs::fisa::FixedInterestRateSecurity com::ftlabs::fisa::SteppedCouponSecurity com::ftlabs::fisa::IndexLinkedSecurity com::ftlabs::fisa::InflationIndexedSecurity List of all members.

Public Member Functions

virtual ~Security (void)
virtual const MarketgetMarket (void) const =0
 Return the Market for this Security.
std::auto_ptr< const com::ftlabs::fisa::calc::CalculatorcreateCalculator (const FISADate &settlementDate, const HolidaySchedule *holidaySchedule=0) const throw ( com::ftlabs::fisa::calc::CalculationException )
 Create a Calculator object to use for this Security and for the period from the provided settlementDate to the default Redemption. It is up to the implementation to determine which Redemption to use if any, although this will usually be to maturity.
std::auto_ptr< const com::ftlabs::fisa::calc::CalculatorcreateCalculator (const FISADate &settlementDate, const Redemption &redemption, const HolidaySchedule *holidaySchedule=0) const throw ( com::ftlabs::fisa::calc::CalculationException )
 Create a Calculator for this Security and provided settlementDate to Redemption period.
virtual std::auto_ptr< com::ftlabs::fisa::calc::QuoteAnalyticscreateQuoteAnalytics (const com::ftlabs::fisa::calc::Quote &quote, const FISADate &settlementDate, const HolidaySchedule *holidaySchedule=0) const =0 throw ( com::ftlabs::fisa::calc::CalculationException )
 Create a QuoteAnalytics object for this Security and provided settlementDate and Quote.
virtual int getRedemptionCount (void)=0
 Get the number of Redemptions set for this Security, including any calls and maturity.
virtual const RedemptiongetRedemption (int index)=0
 Get a pointer to the Redemption at the specified index.

Protected Member Functions

 Security (void)
virtual const Security::ClassIDgetClassID (void) const =0
virtual const com::ftlabs::fisa::calc::CalculatorcreateCalculatorImpl (const FISADate &settlementDate, const HolidaySchedule *holidaySchedule=0) const =0 throw ( com::ftlabs::fisa::calc::CalculationException )
virtual const com::ftlabs::fisa::calc::CalculatorcreateCalculatorImpl (const FISADate &settlementDate, const Redemption &redemption, const HolidaySchedule *holidaySchedule=0) const =0 throw ( com::ftlabs::fisa::calc::CalculationException )

Classes

class  ClassID

Detailed Description

This is the base class for all Security types. This class defines methods for creating a Calculator for the implemented Security.


Constructor & Destructor Documentation

com::ftlabs::fisa::Security::Security ( void   )  [inline, protected]

virtual com::ftlabs::fisa::Security::~Security ( void   )  [inline, virtual]


Member Function Documentation

virtual const Market& com::ftlabs::fisa::Security::getMarket ( void   )  const [pure virtual]

Return the Market for this Security.

Returns:
the Market for this Security.

Implemented in com::ftlabs::fisa::AbstractSecurity.

std::auto_ptr<const com::ftlabs::fisa::calc::Calculator> com::ftlabs::fisa::Security::createCalculator ( const FISADate settlementDate,
const HolidaySchedule holidaySchedule = 0 
) const throw ( com::ftlabs::fisa::calc::CalculationException )

Create a Calculator object to use for this Security and for the period from the provided settlementDate to the default Redemption. It is up to the implementation to determine which Redemption to use if any, although this will usually be to maturity.

Parameters:
settlementDate The binding settlementDate for which all calculations will be run.
holidaySchedule A pointer to a HolidaySchedule to be used for calculating True Yield. If 0, only weekend days will be used for cash flow date adjustments.

Returns:
An auto_ptr to a Calculator object to use for this Security and for the period from the provided settlementDate to the default Redemption. CalculationException

Reimplemented in com::ftlabs::fisa::DiscountSecurity, and com::ftlabs::fisa::InflationIndexedSecurity.

std::auto_ptr<const com::ftlabs::fisa::calc::Calculator> com::ftlabs::fisa::Security::createCalculator ( const FISADate settlementDate,
const Redemption redemption,
const HolidaySchedule holidaySchedule = 0 
) const throw ( com::ftlabs::fisa::calc::CalculationException )

Create a Calculator for this Security and provided settlementDate to Redemption period.

Parameters:
settlementDate the binding settlementDate for which all calculations will be run.
redemption the binding Redemption to which all calculations will be run. A pointer to a HolidaySchedule to be used for calculating True Yield. If 0, only weekend days will be used for cash flow date adjustments. an auto_ptr to a Calculator for this Security and provided settlementDate to Redemption period. CalculationException

Reimplemented in com::ftlabs::fisa::DiscountSecurity, and com::ftlabs::fisa::InflationIndexedSecurity.

virtual std::auto_ptr<com::ftlabs::fisa::calc::QuoteAnalytics> com::ftlabs::fisa::Security::createQuoteAnalytics ( const com::ftlabs::fisa::calc::Quote quote,
const FISADate settlementDate,
const HolidaySchedule holidaySchedule = 0 
) const throw ( com::ftlabs::fisa::calc::CalculationException ) [pure virtual]

Create a QuoteAnalytics object for this Security and provided settlementDate and Quote.

This class can be used to calculate from a given Quote to each redemption available in this security.

Parameters:
quote a Quote for which all calculations will be run. the settlementDate for which all calculations will be run. A pointer to a HolidaySchedule to be used for calculating True Yield. If 0, only weekend days will be used for cash flow date adjustments. an auto_ptr to a QuoteAnalytics object. CalculationException

Implemented in com::ftlabs::fisa::MaturingCallableSecurity, and com::ftlabs::fisa::MaturingSecurity.

virtual int com::ftlabs::fisa::Security::getRedemptionCount ( void   )  [pure virtual]

Get the number of Redemptions set for this Security, including any calls and maturity.

Returns:
The number of redemptions set for this Security.

Implemented in com::ftlabs::fisa::MaturingCallableSecurity, and com::ftlabs::fisa::MaturingSecurity.

virtual const Redemption* com::ftlabs::fisa::Security::getRedemption ( int  index  )  [pure virtual]

Get a pointer to the Redemption at the specified index.

Parameters:
index The index of the Redemption to return. A valid index would be from 0 through getRedemptionCount() - 1.
Returns:
A pointer to the Redemption at the specified index.

Implemented in com::ftlabs::fisa::MaturingCallableSecurity, and com::ftlabs::fisa::MaturingSecurity.

virtual const Security::ClassID& com::ftlabs::fisa::Security::getClassID ( void   )  const [protected, pure virtual]

Implemented in com::ftlabs::fisa::DiscountSecurity, com::ftlabs::fisa::FixedInterestRateSecurity, com::ftlabs::fisa::IndexLinkedSecurity, com::ftlabs::fisa::InflationIndexedSecurity, com::ftlabs::fisa::InterestAtMaturitySecurity, com::ftlabs::fisa::SteppedCouponSecurity, and com::ftlabs::fisa::ZeroCouponSecurity.

virtual const com::ftlabs::fisa::calc::Calculator* com::ftlabs::fisa::Security::createCalculatorImpl ( const FISADate settlementDate,
const HolidaySchedule holidaySchedule = 0 
) const throw ( com::ftlabs::fisa::calc::CalculationException ) [protected, pure virtual]

Implemented in com::ftlabs::fisa::DiscountSecurity, com::ftlabs::fisa::InflationIndexedSecurity, and com::ftlabs::fisa::MaturingSecurity.

virtual const com::ftlabs::fisa::calc::Calculator* com::ftlabs::fisa::Security::createCalculatorImpl ( const FISADate settlementDate,
const Redemption redemption,
const HolidaySchedule holidaySchedule = 0 
) const throw ( com::ftlabs::fisa::calc::CalculationException ) [protected, pure virtual]

Implemented in com::ftlabs::fisa::DiscountSecurity, com::ftlabs::fisa::FixedInterestRateSecurity, com::ftlabs::fisa::InflationIndexedSecurity, com::ftlabs::fisa::InterestAtMaturitySecurity, com::ftlabs::fisa::SteppedCouponSecurity, and com::ftlabs::fisa::ZeroCouponSecurity.


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