Logo
Reference manual - version qle_version
NumericLgmMultiLegOptionEngineBase Class Reference
Inheritance diagram for NumericLgmMultiLegOptionEngineBase:

Classes

struct  CashflowInfo

Public Member Functions

 NumericLgmMultiLegOptionEngineBase (const QuantLib::ext::shared_ptr< LgmBackwardSolver > &solver, const Handle< YieldTermStructure > &discountCurve=Handle< YieldTermStructure >(), const Size americanExerciseTimeStepsPerYear=24)

Static Public Member Functions

static bool instrumentIsHandled (const MultiLegOption &m, std::vector< std::string > &messages)
static CashflowInfo buildCashflowInfo (const QuantLib::ext::shared_ptr< QuantLib::CashFlow > &c, const QuantLib::Real payrec, const std::function< QuantLib::Real(const QuantLib::Date &)> &timeFromReference, const QuantLib::Exercise::Type exerciseType, const bool midCouponExercise, const QuantLib::Period &noticePeriod, const QuantLib::Calendar &noticeCalendar, const QuantLib::BusinessDayConvention noticeConvention, const std::string &cashflowDescription)

Protected Member Functions

void calculate () const

Static Protected Member Functions

static bool instrumentIsHandled (const std::vector< Leg > &legs, const std::vector< bool > &payer, const std::vector< Currency > &currency, const QuantLib::ext::shared_ptr< Exercise > &exercise, const Settlement::Type &settlementType, const Settlement::Method &settlementMethod, std::vector< std::string > &messages)

Protected Attributes

QuantLib::ext::shared_ptr< LgmBackwardSolversolver_
Handle< YieldTermStructure > discountCurve_
Size americanExerciseTimeStepsPerYear_
std::vector< Leg > legs_
std::vector< boolpayer_
std::vector< Currency > currency_
QuantLib::ext::shared_ptr< Exercise > exercise_
Settlement::Type settlementType_
Settlement::Method settlementMethod_
bool midCouponExercise_
Period noticePeriod_
Calendar noticeCalendar_
BusinessDayConvention noticeConvention_
Real npv_
Real underlyingNpv_
std::map< std::string, QuantLib::ext::any > additionalResults_