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

Public Member Functions

 NumericLgmCallableBondEngine (const Handle< LGM > &model, const Real sy, const Size ny, const Real sx, const Size nx, const Size americanExerciseTimeStepsPerYear=24, const Handle< QuantLib::YieldTermStructure > &referenceCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &discountingSpread=Handle< QuantLib::Quote >(), const Handle< QuantLib::DefaultProbabilityTermStructure > &creditCurve=Handle< QuantLib::DefaultProbabilityTermStructure >(), const Handle< QuantLib::YieldTermStructure > &incomeCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &recoveryRate=Handle< QuantLib::Quote >(), const bool spreadOnIncome=true, const bool generateAdditionalResults=true)
 NumericLgmCallableBondEngine (const Handle< LGM > &model, const Real maxTime=50.0, const QuantLib::FdmSchemeDesc scheme=QuantLib::FdmSchemeDesc::Douglas(), const Size stateGridPoints=64, const Size timeStepsPerYear=24, const Real mesherEpsilon=1E-4, const Size americanExerciseTimeStepsPerYear=24, const Handle< QuantLib::YieldTermStructure > &referenceCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &discountingSpread=Handle< QuantLib::Quote >(), const Handle< QuantLib::DefaultProbabilityTermStructure > &creditCurve=Handle< QuantLib::DefaultProbabilityTermStructure >(), const Handle< QuantLib::YieldTermStructure > &incomeCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &recoveryRate=Handle< QuantLib::Quote >(), const bool spreadOnIncome=true, const bool generateAdditionalResults=true)
std::pair< Real, Real > forwardPrice (const QuantLib::Date &forwardNpvDate, const QuantLib::Date &settlementDate, const bool conditionalOnSurvival=true, std::vector< CashFlowResults > *const cfResults=nullptr, QuantLib::Leg *const expectedCashflows=nullptr) const override
 ForwardEnabledBondEngine interface.
Public Member Functions inherited from NumericLgmCallableBondEngineBase
 NumericLgmCallableBondEngineBase (const QuantLib::ext::shared_ptr< LgmBackwardSolver > &solver, const Size americanExerciseTimeStepsPerYear=24, const Handle< QuantLib::YieldTermStructure > &referenceCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &discountingSpread=Handle< QuantLib::Quote >(), const Handle< QuantLib::DefaultProbabilityTermStructure > &creditCurve=Handle< QuantLib::DefaultProbabilityTermStructure >(), const Handle< QuantLib::YieldTermStructure > &incomeCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &recoveryRate=Handle< QuantLib::Quote >(), const bool spreadOnIncome=true)

Additional Inherited Members

Protected Member Functions inherited from NumericLgmCallableBondEngineBase
void calculate () const
Protected Attributes inherited from NumericLgmCallableBondEngineBase
QuantLib::ext::shared_ptr< LgmBackwardSolversolver_
Size americanExerciseTimeStepsPerYear_
Handle< QuantLib::YieldTermStructure > referenceCurve_
Handle< QuantLib::Quote > discountingSpread_
Handle< QuantLib::DefaultProbabilityTermStructure > creditCurve_
Handle< QuantLib::YieldTermStructure > incomeCurve_
Handle< QuantLib::Quote > recoveryRate_
bool spreadOnIncome_
Date npvDate_
Date settlementDate_
bool conditionalOnSurvival_ = true
std::vector< CashFlowResults > * cfResults_ = nullptr
Leg * expectedCashflows_ = nullptr
CallableBond::argumentsinstrArgs_ = nullptr
bool generateAdditionalResults_ = false
Real npv_
Real settlementValue_
std::map< std::string, QuantLib::ext::any > additionalResults_

Member Function Documentation

◆ forwardPrice()

std::pair< Real, Real > forwardPrice ( const QuantLib::Date & forwardNpvDate,
const QuantLib::Date & settlementDate,
const bool conditionalOnSurvival = true,
std::vector< CashFlowResults > *const cfResults = nullptr,
QuantLib::Leg *const expectedCashflows = nullptr ) const
overridevirtual