Logo
Reference manual - version qle_version
Public Member Functions | List of all members
FdmDefaultableEquityJumpDiffusionOp Class Reference
+ Inheritance diagram for FdmDefaultableEquityJumpDiffusionOp:

Public Member Functions

 FdmDefaultableEquityJumpDiffusionOp (const boost::shared_ptr< QuantLib::FdmMesher > &mesher, const boost::shared_ptr< DefaultableEquityJumpDiffusionModel > &model, const Size direction=0, const std::function< Real(Real, Real, Real)> &recovery={}, const Handle< QuantLib::YieldTermStructure > &discountingCurve=Handle< QuantLib::YieldTermStructure >(), const Handle< QuantLib::Quote > &discountingSpread=Handle< QuantLib::Quote >(), const Handle< QuantLib::DefaultProbabilityTermStructure > &addCreditCurve=Handle< QuantLib::DefaultProbabilityTermStructure >(), const std::function< Real(Real, Real, Real)> &addRecovery={})
 
Size size () const override
 
void setTime (Time t1, Time t2) override
 
Array apply (const Array &r) const override
 
Array apply_mixed (const Array &r) const override
 
Array apply_direction (Size direction, const Array &r) const override
 
Array solve_splitting (Size direction, const Array &r, Real s) const override
 
Array preconditioner (const Array &r, Real s) const override
 
std::vector< QuantLib::SparseMatrix > toMatrixDecomp () const override
 
void setConversionRatio (const std::function< Real(Real)> &conversionRatio)
 

Constructor & Destructor Documentation

◆ FdmDefaultableEquityJumpDiffusionOp()

FdmDefaultableEquityJumpDiffusionOp ( const boost::shared_ptr< QuantLib::FdmMesher > &  mesher,
const boost::shared_ptr< DefaultableEquityJumpDiffusionModel > &  model,
const Size  direction = 0,
const std::function< Real(Real, Real, Real)> &  recovery = {},
const Handle< QuantLib::YieldTermStructure > &  discountingCurve = Handle< QuantLib::YieldTermStructure >(),
const Handle< QuantLib::Quote > &  discountingSpread = Handle< QuantLib::Quote >(),
const Handle< QuantLib::DefaultProbabilityTermStructure > &  addCreditCurve = Handle< QuantLib::DefaultProbabilityTermStructure >(),
const std::function< Real(Real, Real, Real)> &  addRecovery = {} 
)
  • The recovery is given as a function of (t, S, conversionRatio)
  • The model rate r can be overwritten with a discountingCurve, this is used in the discounting term of the operator then, but not the drift term. This can e.g. be bond discounting curve in convertible bond pricings.
  • An additional credit curve and associated recovery rate function can be specified, which will constitute an additional discounting term and recovery term. This can e.g. be the bond credit curve for exchangeable convertible bonds (in this context, the model credit curve will be the equity credit curve then).