Callable-bond volatility structure. More...
#include <ql/experimental/callablebonds/callablebondvolstructure.hpp>
Inheritance diagram for CallableBondVolatilityStructure:Public Member Functions | |
| virtual std::pair< Time, Time > | convertDates (const Date &optionDate, const Period &bondTenor) const |
| implements the conversion between dates and times | |
| virtual BusinessDayConvention | businessDayConvention () const |
| the business day convention used for option date calculation | |
| Date | optionDateFromTenor (const Period &optionTenor) const |
| implements the conversion between optionTenors and optionDates | |
Constructors | |
See the TermStructure documentation for issues regarding constructors. | |
| CallableBondVolatilityStructure (const DayCounter &dc=DayCounter(), BusinessDayConvention bdc=Following) | |
| default constructor More... | |
| CallableBondVolatilityStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter(), BusinessDayConvention bdc=Following) | |
| initialize with a fixed reference date | |
| CallableBondVolatilityStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=DayCounter(), BusinessDayConvention bdc=Following) | |
| calculate the reference date based on the global evaluation date | |
Volatility, variance and smile | |
| Volatility | volatility (Time optionTime, Time bondLength, Rate strike, bool extrapolate=false) const |
| returns the volatility for a given option time and bondLength | |
| Real | blackVariance (Time optionTime, Time bondLength, Rate strike, bool extrapolate=false) const |
| returns the Black variance for a given option time and bondLength | |
| Volatility | volatility (const Date &optionDate, const Period &bondTenor, Rate strike, bool extrapolate=false) const |
| returns the volatility for a given option date and bond tenor | |
| Real | blackVariance (const Date &optionDate, const Period &bondTenor, Rate strike, bool extrapolate=false) const |
| returns the Black variance for a given option date and bond tenor | |
| virtual boost::shared_ptr< SmileSection > | smileSection (const Date &optionDate, const Period &bondTenor) const |
| Volatility | volatility (const Period &optionTenor, const Period &bondTenor, Rate strike, bool extrapolate=false) const |
| returns the volatility for a given option tenor and bond tenor | |
| Real | blackVariance (const Period &optionTenor, const Period &bondTenor, Rate strike, bool extrapolate=false) const |
| returns the Black variance for a given option tenor and bond tenor | |
| boost::shared_ptr< SmileSection > | smileSection (const Period &optionTenor, const Period &bondTenor) const |
Limits | |
| virtual const Period & | maxBondTenor () const =0 |
| the largest length for which the term structure can return vols | |
| virtual Time | maxBondLength () const |
| the largest bondLength for which the term structure can return vols | |
| virtual Rate | minStrike () const =0 |
| the minimum strike for which the term structure can return vols | |
| virtual Rate | maxStrike () const =0 |
| the maximum strike for which the term structure can return vols | |
Public Member Functions inherited from TermStructure | |
| TermStructure (const DayCounter &dc=DayCounter()) | |
| default constructor More... | |
| TermStructure (const Date &referenceDate, const Calendar &calendar=Calendar(), const DayCounter &dc=DayCounter()) | |
| initialize with a fixed reference date | |
| TermStructure (Natural settlementDays, const Calendar &, const DayCounter &dc=DayCounter()) | |
| calculate the reference date based on the global evaluation date | |
| virtual DayCounter | dayCounter () const |
| the day counter used for date/time conversion | |
| Time | timeFromReference (const Date &date) const |
| date/time conversion | |
| virtual Date | maxDate () const =0 |
| the latest date for which the curve can return values | |
| virtual Time | maxTime () const |
| the latest time for which the curve can return values | |
| virtual const Date & | referenceDate () const |
| the date at which discount = 1.0 and/or variance = 0.0 | |
| virtual Calendar | calendar () const |
| the calendar used for reference and/or option date calculation | |
| virtual Natural | settlementDays () const |
| the settlementDays used for reference date calculation | |
| void | update () |
Public Member Functions inherited from Observer | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) |
| std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) |
| void | registerWithObservables (const boost::shared_ptr< Observer > &) |
| Size | unregisterWith (const boost::shared_ptr< Observable > &) |
| void | unregisterWithAll () |
Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| void | notifyObservers () |
Public Member Functions inherited from Extrapolator | |
| void | enableExtrapolation (bool b=true) |
| enable extrapolation in subsequent calls | |
| void | disableExtrapolation (bool b=true) |
| disable extrapolation in subsequent calls | |
| bool | allowsExtrapolation () const |
| tells whether extrapolation is enabled | |
Protected Member Functions | |
| virtual boost::shared_ptr< SmileSection > | smileSectionImpl (Time optionTime, Time bondLength) const =0 |
| return smile section | |
| virtual Volatility | volatilityImpl (Time optionTime, Time bondLength, Rate strike) const =0 |
| implements the actual volatility calculation in derived classes | |
| virtual Volatility | volatilityImpl (const Date &optionDate, const Period &bondTenor, Rate strike) const |
| void | checkRange (Time, Time, Rate strike, bool extrapolate) const |
| void | checkRange (const Date &optionDate, const Period &bondTenor, Rate strike, bool extrapolate) const |
Protected Member Functions inherited from TermStructure | |
| void | checkRange (const Date &d, bool extrapolate) const |
| date-range check | |
| void | checkRange (Time t, bool extrapolate) const |
| time-range check | |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef std::set< boost::shared_ptr< Observable > > | set_type |
| typedef set_type::iterator | iterator |
Protected Attributes inherited from TermStructure | |
| bool | moving_ |
| bool | updated_ |
| Calendar | calendar_ |
Callable-bond volatility structure.
This class is purely abstract and defines the interface of concrete callable-bond volatility structures which will be derived from this one.
| CallableBondVolatilityStructure | ( | const DayCounter & | dc = DayCounter(), |
| BusinessDayConvention | bdc = Following |
||
| ) |
default constructor