24#ifndef quantext_crossassetmodel_implied_fx_volatility_termstructure_hpp
25#define quantext_crossassetmodel_implied_fx_volatility_termstructure_hpp
29#include <ql/termstructures/volatility/equityfx/blackvoltermstructure.hpp>
37class AnalyticCcLgmFxOptionEngine;
52 const Size foreignCurrencyIndex, BusinessDayConvention bdc = Following,
53 const DayCounter& dc = DayCounter(),
const bool purelyTimeBased =
false);
57 void state(
const Real domesticIr,
const Real foreignIr,
const Real logFx);
58 void move(
const Date& d,
const Real domesticIr,
const Real foreignIr,
const Real logFx);
59 void move(
const Time t,
const Real domesticIr,
const Real foreignIr,
const Real logFx);
76 Volatility
blackVolImpl(Time t, Real strike)
const override;
79 const QuantLib::ext::shared_ptr<CrossAssetModel>
model_;
82 const QuantLib::ext::shared_ptr<AnalyticCcLgmFxOptionEngine>
engine_;
Cross Asset Model Implied FX Term Structure.
const Date & referenceDate() const override
Real minStrike() const override
Date maxDate() const override
const QuantLib::ext::shared_ptr< CrossAssetModel > model_
void state(const Real domesticIr, const Real foreignIr, const Real logFx)
Real blackVarianceImpl(Time t, Real strike) const override
const QuantLib::ext::shared_ptr< AnalyticCcLgmFxOptionEngine > engine_
void referenceTime(const Time t)
void move(const Date &d, const Real domesticIr, const Real foreignIr, const Real logFx)
Volatility blackVolImpl(Time t, Real strike) const override
Real maxStrike() const override
const bool purelyTimeBased_
Time maxTime() const override