28#ifndef quantlib_instruments_irregular_swaption_hpp
29#define quantlib_instruments_irregular_swaption_hpp
52 const ext::shared_ptr<Exercise>&
exercise,
72 Real accuracy = 1.0e-4,
78 ext::shared_ptr<IrregularSwap>
swap_;
87 ext::shared_ptr<IrregularSwap>
swap;
94 :
public GenericEngine<IrregularSwaption::arguments, IrregularSwaption::results> {};
template base class for option pricing engines
Shared handle to an observable.
Arguments for irregular-swap calculation
Arguments for irregular-swaption calculation
ext::shared_ptr< IrregularSwap > swap
IrregularSettlement::Type settlementType
void validate() const override
base class for irregular-swaption engines
Irregular Swaption class.
void setupArguments(PricingEngine::arguments *) const override
bool isExpired() const override
returns whether the instrument might have value greater than zero.
IrregularSettlement::Type settlementType_
ext::shared_ptr< IrregularSwap > swap_
const ext::shared_ptr< IrregularSwap > & underlyingSwap() const
IrregularSettlement::Type settlementType() const
Volatility impliedVolatility(Real price, const Handle< YieldTermStructure > &discountCurve, Volatility guess, Real accuracy=1.0e-4, Natural maxEvaluations=100, Volatility minVol=1.0e-7, Volatility maxVol=4.0) const
implied volatility
ext::shared_ptr< Exercise > exercise() const
unsigned QL_INTEGER Natural
positive integer
Real Volatility
volatility
Irregular fixed-rate vs Libor swap.
std::ostream & operator<<(std::ostream &out, GFunctionFactory::YieldCurveModel type)
void swap(Array &v, Array &w) noexcept
Interest-rate term structure.