23#ifndef quantext_index_cds_option_hpp
24#define quantext_index_cds_option_hpp
29#include <ql/instruments/swaption.hpp>
30#include <ql/option.hpp>
41 IndexCdsOption(
const QuantLib::ext::shared_ptr<IndexCreditDefaultSwap>& swap,
42 const QuantLib::ext::shared_ptr<QuantLib::Exercise>& exercise, QuantLib::Real strike,
44 Settlement::Type settlementType = Settlement::Cash,
45 QuantLib::Real tradeDateNtl = QuantLib::Null<QuantLib::Real>(),
46 QuantLib::Real realisedFep = QuantLib::Null<QuantLib::Real>(),
47 const QuantLib::Period& indexTerm = 5 * Years);
66 const QuantLib::Handle<QuantLib::YieldTermStructure>& termStructureSwapCurrency,
67 const QuantLib::Handle<QuantLib::YieldTermStructure>& termStructureTradeCollateral,
68 const QuantLib::Handle<QuantLib::DefaultProbabilityTermStructure>&, QuantLib::Real recoveryRate,
69 QuantLib::Real accuracy = 1.e-4, QuantLib::Size maxEvaluations = 100,
70 QuantLib::Volatility minVol = 1.0e-7, QuantLib::Volatility maxVol = 4.0)
const;
74 QuantLib::ext::shared_ptr<IndexCreditDefaultSwap>
swap_;
98 QuantLib::ext::shared_ptr<IndexCreditDefaultSwap>
swap;
114 void reset()
override;
CDS option, removed requirements (rec must knock out, no upfront amount), that should be taken care o...
Arguments for index CDS option calculation
QuantLib::Period indexTerm
QuantLib::Real realisedFep
CdsOption::StrikeType strikeType
Settlement::Type settlementType
void validate() const override
QuantLib::Real tradeDateNtl
QuantLib::ext::shared_ptr< IndexCreditDefaultSwap > swap
Base class for index CDS option engines.
Results from index CDS option calculation
QuantLib::Real riskyAnnuity
Index CDS option instrument.
void setupArguments(QuantLib::PricingEngine::arguments *args) const override
QuantLib::Real riskyAnnuity() const
bool isExpired() const override
const QuantLib::ext::shared_ptr< IndexCreditDefaultSwap > & underlyingSwap() const
QuantLib::Volatility impliedVolatility(QuantLib::Real price, const QuantLib::Handle< QuantLib::YieldTermStructure > &termStructureSwapCurrency, const QuantLib::Handle< QuantLib::YieldTermStructure > &termStructureTradeCollateral, const QuantLib::Handle< QuantLib::DefaultProbabilityTermStructure > &, QuantLib::Real recoveryRate, QuantLib::Real accuracy=1.e-4, QuantLib::Size maxEvaluations=100, QuantLib::Volatility minVol=1.0e-7, QuantLib::Volatility maxVol=4.0) const
void fetchResults(const QuantLib::PricingEngine::results *results) const override
CdsOption::StrikeType strikeType_
QuantLib::Rate atmRate() const
QuantLib::ext::shared_ptr< IndexCreditDefaultSwap > swap_
QuantLib::Real realisedFep_
void setupExpired() const override
QuantLib::Real riskyAnnuity_
Settlement::Type settlementType_
QuantLib::Real tradeDateNtl_
QuantLib::Period indexTerm_
Index Credit default swap.