QuantLib_CallableBond man page

CallableBond — Callable bond base class.  

Synopsis

#include <ql/experimental/callablebonds/callablebond.hpp>

Inherits Bond.

Inherited by CallableFixedRateBond.

Classes

class engine
base class for callable fixed rate bond engine
class results
results for a callable bond calculation

Public Member Functions

virtual void setupArguments (PricingEngine::arguments *) const

Inspectors

const CallabilitySchedule & callability () const
return the bond's put/call schedule

Calculations

Volatility impliedVolatility (Real targetValue, const Handle< YieldTermStructure > &discountCurve, Real accuracy, Size maxEvaluations, Volatility minVol, Volatility maxVol) const
returns the Black implied forward yield volatility
Spread OAS (Real cleanPrice, const Handle< YieldTermStructure > &engineTS, const DayCounter &dayCounter, Compounding compounding, Frequency frequency, Date settlementDate=Date(), Real accuracy=1.0e-10, Size maxIterations=100, Rate guess=0.0)
Calculate the Option Adjusted Spread (OAS)
Real cleanPriceOAS (Real oas, const Handle< YieldTermStructure > &engineTS, const DayCounter &dayCounter, Compounding compounding, Frequency frequency, Date settlementDate=Date())
Real effectiveDuration (Real oas, const Handle< YieldTermStructure > &engineTS, const DayCounter &dayCounter, Compounding compounding, Frequency frequency, Real bump=2e-4)
Real effectiveConvexity (Real oas, const Handle< YieldTermStructure > &engineTS, const DayCounter &dayCounter, Compounding compounding, Frequency frequency, Real bump=2e-4)

Protected Member Functions

CallableBond (Natural settlementDays, const Schedule &schedule, const DayCounter &paymentDayCounter, const Date &issueDate=Date(), const CallabilitySchedule &putCallSchedule=CallabilitySchedule())

Protected Attributes

DayCounter paymentDayCounter_
Frequency frequency_
CallabilitySchedule putCallSchedule_
boost::shared_ptr< PricingEngine > blackEngine_
must be set by derived classes for impliedVolatility() to work
RelinkableHandle< Quote > blackVolQuote_
Black fwd yield volatility quote handle to internal blackEngine_.
RelinkableHandle< YieldTermStructure > blackDiscountCurve_
Black fwd yield volatility quote handle to internal blackEngine_.

Friends

class ImpliedVolHelper
class NPVSpreadHelper

Additional Inherited Members

Detailed Description

Callable bond base class.

Base callable bond class for fixed and zero coupon bonds. Defines commonalities between fixed and zero coupon callable bonds. At present, only European and Bermudan put/call schedules supported (no American optionality), as defined by the Callability class.

Member Function Documentation

Volatility impliedVolatility (Real targetValue, const Handle< YieldTermStructure > & discountCurve, Real accuracy, Size maxEvaluations, Volatility minVol, Volatility maxVol) const

returns the Black implied forward yield volatility the forward yield volatility, see Hull, Fourth Edition, Chapter 20, pg 536). Relevant only to European put/call schedules

Spread OAS (Real cleanPrice, const Handle< YieldTermStructure > & engineTS, const DayCounter & dayCounter, Compounding compounding, Frequency frequency, Date settlementDate = Date(), Real accuracy = 1.0e-10, Size maxIterations = 100, Rate guess = 0.0)

Calculate the Option Adjusted Spread (OAS) Calculates the spread that needs to be added to the the reference curve so that the theoretical model value matches the marketPrice.

Real cleanPriceOAS (Real oas, const Handle< YieldTermStructure > & engineTS, const DayCounter & dayCounter, Compounding compounding, Frequency frequency, Date settlementDate = Date())

Calculate the clean price based on the given option-adjust-spread (oas) over the given yield term structure (engineTS)

Real effectiveDuration (Real oas, const Handle< YieldTermStructure > & engineTS, const DayCounter & dayCounter, Compounding compounding, Frequency frequency, Real bump = 2e-4)

Calculate the effective duration, i.e., the first differential of the dirty price w.r.t. a parallel shift of the yield term structure divided by current dirty price

Real effectiveConvexity (Real oas, const Handle< YieldTermStructure > & engineTS, const DayCounter & dayCounter, Compounding compounding, Frequency frequency, Real bump = 2e-4)

Calculate the effective convexity, i.e., the second differential of the dirty price w.r.t. a parallel shift of the yield term structure divided by current dirty price

virtual void setupArguments (PricingEngine::arguments *) const [virtual]

When a derived argument structure is defined for an instrument, this method should be overridden to fill it. This is mandatory in case a pricing engine is used.

Reimplemented from Instrument.

Reimplemented in CallableFixedRateBond.

Author

Generated automatically by Doxygen for QuantLib from the source code.

Referenced By

The man pages blackDiscountCurve_(3), blackEngine_(3), blackVolQuote_(3), callability(3), CallableBond(3), cleanPriceOAS(3), effectiveConvexity(3), effectiveDuration(3), ImpliedVolHelper(3), NPVSpreadHelper(3), OAS(3), paymentDayCounter_(3) and putCallSchedule_(3) are aliases of QuantLib_CallableBond(3).

Mon Apr 30 2018 Version 1.12.1 QuantLib