QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
#include <optionletstripper2.hpp>
Classes | |
class | ObjectiveFunction |
Public Member Functions | |
OptionletStripper2 (const ext::shared_ptr< OptionletStripper1 > &optionletStripper1, const Handle< CapFloorTermVolCurve > &atmCapFloorTermVolCurve) | |
std::vector< Rate > | atmCapFloorStrikes () const |
std::vector< Real > | atmCapFloorPrices () const |
std::vector< Volatility > | spreadsVol () const |
Public Member Functions inherited from OptionletStripper | |
const std::vector< Rate > & | optionletStrikes (Size i) const override |
const std::vector< Volatility > & | optionletVolatilities (Size i) const override |
const std::vector< Date > & | optionletFixingDates () const override |
const std::vector< Time > & | optionletFixingTimes () const override |
Size | optionletMaturities () const override |
const std::vector< Rate > & | atmOptionletRates () const override |
DayCounter | dayCounter () const override |
Calendar | calendar () const override |
Natural | settlementDays () const override |
BusinessDayConvention | businessDayConvention () const override |
const std::vector< Period > & | optionletFixingTenors () const |
const std::vector< Date > & | optionletPaymentDates () const |
const std::vector< Time > & | optionletAccrualPeriods () const |
ext::shared_ptr< CapFloorTermVolSurface > | termVolSurface () const |
ext::shared_ptr< IborIndex > | iborIndex () const |
Real | displacement () const override |
VolatilityType | volatilityType () const override |
virtual const std::vector< Rate > & | optionletStrikes (Size i) const =0 |
virtual const std::vector< Volatility > & | optionletVolatilities (Size i) const =0 |
virtual const std::vector< Date > & | optionletFixingDates () const =0 |
virtual const std::vector< Time > & | optionletFixingTimes () const =0 |
virtual Size | optionletMaturities () const =0 |
virtual const std::vector< Rate > & | atmOptionletRates () const =0 |
virtual DayCounter | dayCounter () const =0 |
virtual Calendar | calendar () const =0 |
virtual Natural | settlementDays () const =0 |
virtual BusinessDayConvention | businessDayConvention () const =0 |
virtual VolatilityType | volatilityType () const =0 |
virtual Real | displacement () const =0 |
Public Member Functions inherited from LazyObject | |
LazyObject () | |
~LazyObject () override=default | |
void | update () override |
bool | isCalculated () const |
void | forwardFirstNotificationOnly () |
void | alwaysForwardNotifications () |
void | recalculate () |
void | freeze () |
void | unfreeze () |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from Observer | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~Observer () |
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
void | registerWithObservables (const ext::shared_ptr< Observer > &) |
Size | unregisterWith (const ext::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | update ()=0 |
virtual void | deepUpdate () |
LazyObject interface | |
const ext::shared_ptr< OptionletStripper1 > | stripper1_ |
const Handle< CapFloorTermVolCurve > | atmCapFloorTermVolCurve_ |
DayCounter | dc_ |
Size | nOptionExpiries_ |
std::vector< Rate > | atmCapFloorStrikes_ |
std::vector< Real > | atmCapFloorPrices_ |
std::vector< Volatility > | spreadsVolImplied_ |
std::vector< ext::shared_ptr< CapFloor > > | caps_ |
Size | maxEvaluations_ = 10000 |
Real | accuracy_ = 1.e-6 |
void | performCalculations () const override |
std::vector< Volatility > | spreadsVolImplied () const |
Helper class to extend an OptionletStripper1 object stripping additional optionlet (i.e. caplet/floorlet) volatilities (a.k.a. forward-forward volatilities) from the (cap/floor) At-The-Money term volatilities of a CapFloorTermVolCurve.
Definition at line 42 of file optionletstripper2.hpp.
OptionletStripper2 | ( | const ext::shared_ptr< OptionletStripper1 > & | optionletStripper1, |
const Handle< CapFloorTermVolCurve > & | atmCapFloorTermVolCurve | ||
) |
std::vector< Rate > atmCapFloorStrikes | ( | ) | const |
std::vector< Real > atmCapFloorPrices | ( | ) | const |
std::vector< Volatility > spreadsVol | ( | ) | const |
|
overridevirtual |
This method must implement any calculations which must be (re)done in order to calculate the desired results.
Implements LazyObject.
Definition at line 56 of file optionletstripper2.cpp.
|
private |
Definition at line 122 of file optionletstripper2.cpp.
|
private |
Definition at line 73 of file optionletstripper2.hpp.
|
private |
Definition at line 74 of file optionletstripper2.hpp.
|
private |
Definition at line 75 of file optionletstripper2.hpp.
|
private |
Definition at line 76 of file optionletstripper2.hpp.
|
mutableprivate |
Definition at line 77 of file optionletstripper2.hpp.
|
mutableprivate |
Definition at line 78 of file optionletstripper2.hpp.
|
mutableprivate |
Definition at line 79 of file optionletstripper2.hpp.
|
mutableprivate |
Definition at line 80 of file optionletstripper2.hpp.
|
private |
Definition at line 81 of file optionletstripper2.hpp.
|
private |
Definition at line 82 of file optionletstripper2.hpp.