Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ProxySwaptionVolatility Class Reference

#include <qle/termstructures/proxyswaptionvolatility.hpp>

+ Inheritance diagram for ProxySwaptionVolatility:
+ Collaboration diagram for ProxySwaptionVolatility:

Public Member Functions

 ProxySwaptionVolatility (const QuantLib::Handle< SwaptionVolatilityStructure > &baseVol, QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseSwapIndexBase, QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseShortSwapIndexBase, QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetSwapIndexBase, QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetShortSwapIndexBase)
 
QuantLib::Rate minStrike () const override
 
QuantLib::Rate maxStrike () const override
 
QuantLib::Date maxDate () const override
 
const QuantLib::Date & referenceDate () const override
 
QuantLib::VolatilityType volatilityType () const override
 
QuantLib::Calendar calendar () const override
 
const QuantLib::Period & maxSwapTenor () const override
 

Private Member Functions

QuantLib::ext::shared_ptr< QuantLib::SmileSection > smileSectionImpl (const QuantLib::Date &optionDate, const QuantLib::Period &swapTenor) const override
 
QuantLib::ext::shared_ptr< QuantLib::SmileSection > smileSectionImpl (QuantLib::Time optionTime, QuantLib::Time swapLength) const override
 
QuantLib::Volatility volatilityImpl (QuantLib::Time optionTime, QuantLib::Time swapLength, QuantLib::Rate strike) const override
 

Private Attributes

QuantLib::Handle< QuantLib::SwaptionVolatilityStructure > baseVol_
 
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseSwapIndexBase_
 
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseShortSwapIndexBase_
 
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetSwapIndexBase_
 
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetShortSwapIndexBase_
 

Detailed Description

Definition at line 31 of file proxyswaptionvolatility.hpp.

Constructor & Destructor Documentation

◆ ProxySwaptionVolatility()

ProxySwaptionVolatility ( const QuantLib::Handle< SwaptionVolatilityStructure > &  baseVol,
QuantLib::ext::shared_ptr< QuantLib::SwapIndex >  baseSwapIndexBase,
QuantLib::ext::shared_ptr< QuantLib::SwapIndex >  baseShortSwapIndexBase,
QuantLib::ext::shared_ptr< QuantLib::SwapIndex >  targetSwapIndexBase,
QuantLib::ext::shared_ptr< QuantLib::SwapIndex >  targetShortSwapIndexBase 
)

Definition at line 27 of file proxyswaptionvolatility.cpp.

32 : SwaptionVolatilityStructure(baseVol->businessDayConvention(), baseVol->dayCounter()), baseVol_(baseVol),
33 baseSwapIndexBase_(baseSwapIndexBase), baseShortSwapIndexBase_(baseShortSwapIndexBase),
34 targetSwapIndexBase_(targetSwapIndexBase), targetShortSwapIndexBase_(targetShortSwapIndexBase) {
35 enableExtrapolation(baseVol->allowsExtrapolation());
36}
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseSwapIndexBase_
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > baseShortSwapIndexBase_
QuantLib::Handle< QuantLib::SwaptionVolatilityStructure > baseVol_
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetSwapIndexBase_
QuantLib::ext::shared_ptr< QuantLib::SwapIndex > targetShortSwapIndexBase_

Member Function Documentation

◆ minStrike()

QuantLib::Rate minStrike ( ) const
override

Definition at line 39 of file proxyswaptionvolatility.hpp.

39{ return baseVol_->minStrike(); }

◆ maxStrike()

QuantLib::Rate maxStrike ( ) const
override

Definition at line 40 of file proxyswaptionvolatility.hpp.

40{ return baseVol_->maxStrike(); }

◆ maxDate()

QuantLib::Date maxDate ( ) const
override

Definition at line 41 of file proxyswaptionvolatility.hpp.

41{ return baseVol_->maxDate(); }

◆ referenceDate()

const QuantLib::Date & referenceDate ( ) const
override

Definition at line 42 of file proxyswaptionvolatility.hpp.

42{ return baseVol_->referenceDate(); }

◆ volatilityType()

QuantLib::VolatilityType volatilityType ( ) const
override

Definition at line 43 of file proxyswaptionvolatility.hpp.

43{ return baseVol_->volatilityType(); }

◆ calendar()

QuantLib::Calendar calendar ( ) const
override

Definition at line 44 of file proxyswaptionvolatility.hpp.

44{ return baseVol_->calendar(); }

◆ maxSwapTenor()

const QuantLib::Period & maxSwapTenor ( ) const
override

Definition at line 46 of file proxyswaptionvolatility.hpp.

46{ return baseVol_->maxSwapTenor(); }

◆ smileSectionImpl() [1/2]

QuantLib::ext::shared_ptr< QuantLib::SmileSection > smileSectionImpl ( const QuantLib::Date &  optionDate,
const QuantLib::Period &  swapTenor 
) const
overrideprivate

◆ smileSectionImpl() [2/2]

QuantLib::ext::shared_ptr< QuantLib::SmileSection > smileSectionImpl ( QuantLib::Time  optionTime,
QuantLib::Time  swapLength 
) const
overrideprivate

◆ volatilityImpl()

Volatility volatilityImpl ( QuantLib::Time  optionTime,
QuantLib::Time  swapLength,
QuantLib::Rate  strike 
) const
overrideprivate

Definition at line 62 of file proxyswaptionvolatility.cpp.

62 {
63 return smileSection(optionTime, swapLength)->volatility(strike);
64}

Member Data Documentation

◆ baseVol_

QuantLib::Handle<QuantLib::SwaptionVolatilityStructure> baseVol_
private

Definition at line 56 of file proxyswaptionvolatility.hpp.

◆ baseSwapIndexBase_

QuantLib::ext::shared_ptr<QuantLib::SwapIndex> baseSwapIndexBase_
private

Definition at line 57 of file proxyswaptionvolatility.hpp.

◆ baseShortSwapIndexBase_

QuantLib::ext::shared_ptr<QuantLib::SwapIndex> baseShortSwapIndexBase_
private

Definition at line 58 of file proxyswaptionvolatility.hpp.

◆ targetSwapIndexBase_

QuantLib::ext::shared_ptr<QuantLib::SwapIndex> targetSwapIndexBase_
private

Definition at line 59 of file proxyswaptionvolatility.hpp.

◆ targetShortSwapIndexBase_

QuantLib::ext::shared_ptr<QuantLib::SwapIndex> targetShortSwapIndexBase_
private

Definition at line 60 of file proxyswaptionvolatility.hpp.