Fx Black volatility surface. More...
#include <qle/termstructures/fxblackvolsurface.hpp>
Public Member Functions | |
| FxBlackVolatilitySurface (const Date &referenceDate, const std::vector< Date > &dates, const std::vector< Volatility > &atmVols, const std::vector< Volatility > &rr, const std::vector< Volatility > &bf, const DayCounter &dayCounter, const Calendar &cal, const Handle< Quote > &fxSpot, const Handle< YieldTermStructure > &domesticTS, const Handle< YieldTermStructure > &foreignTS, bool requireMonotoneVariance=true, const DeltaVolQuote::AtmType atmType=DeltaVolQuote::AtmType::AtmDeltaNeutral, const DeltaVolQuote::DeltaType deltaType=DeltaVolQuote::DeltaType::Spot, const Real delta=0.25, const Period &switchTenor=0 *Days, const DeltaVolQuote::AtmType longTermAtmType=DeltaVolQuote::AtmType::AtmDeltaNeutral, const DeltaVolQuote::DeltaType longTermDeltaType=DeltaVolQuote::DeltaType::Spot) | |
TermStructure interface | |
| DayCounter | dayCounter () const override |
| Date | maxDate () const override |
VolatilityTermStructure interface | |
| Real | minStrike () const override |
| Real | maxStrike () const override |
Visitability | |
| std::vector< Time > | times_ |
| DayCounter | dayCounter_ |
| Handle< Quote > | fxSpot_ |
| Handle< YieldTermStructure > | domesticTS_ |
| Handle< YieldTermStructure > | foreignTS_ |
| BlackVarianceCurve | atmCurve_ |
| std::vector< Volatility > | rr_ |
| std::vector< Volatility > | bf_ |
| DeltaVolQuote::AtmType | atmType_ |
| DeltaVolQuote::DeltaType | deltaType_ |
| Real | delta_ |
| Period | switchTenor_ |
| DeltaVolQuote::AtmType | longTermAtmType_ |
| DeltaVolQuote::DeltaType | longTermDeltaType_ |
| Interpolation | rrCurve_ |
| Interpolation | bfCurve_ |
| Date | maxDate_ |
| virtual void | accept (AcyclicVisitor &) override |
| QuantLib::ext::shared_ptr< FxSmileSection > | blackVolSmile (Time t) const |
| Return an FxSmile for the time t. | |
| virtual Volatility | blackVolImpl (Time t, Real strike) const override |
| virtual QuantLib::ext::shared_ptr< FxSmileSection > | blackVolSmileImpl (Real spot, Real rd, Real rf, Time t, Volatility atm, Volatility rr, Volatility bf) const =0 |
| this must be implemented. | |
Fx Black volatility surface.
This class calculates time/strike dependent Black volatilities
| QuantLib::ext::shared_ptr< FxSmileSection > blackVolSmile | ( | Time | t | ) | const |
Return an FxSmile for the time t.
Note the smile does not observe the spot or YTS handles, it will not update when they change
|
protectedpure virtual |
this must be implemented.
Implemented in FxBlackVannaVolgaVolatilitySurface.