QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Protected Types | Protected Member Functions | Protected Attributes | List of all members
FDMultiPeriodEngine< Scheme > Class Template Referenceabstract

#include <fdmultiperiodengine.hpp>

+ Inheritance diagram for FDMultiPeriodEngine< Scheme >:
+ Collaboration diagram for FDMultiPeriodEngine< Scheme >:

Protected Types

typedef FiniteDifferenceModel< Scheme< TridiagonalOperator > > model_type
 

Protected Member Functions

 FDMultiPeriodEngine (const ext::shared_ptr< GeneralizedBlackScholesProcess > &process, Size timeSteps=100, Size gridPoints=100, bool timeDependent=false)
 
virtual QL_DEPRECATED_ENABLE_WARNING void setupArguments (const PricingEngine::arguments *args, const std::vector< ext::shared_ptr< Event > > &schedule) const
 
void setupArguments (const PricingEngine::arguments *a) const override
 
virtual void calculate (PricingEngine::results *) const
 
virtual void executeIntermediateStep (Size step) const =0
 
virtual void initializeStepCondition () const
 
virtual void initializeModel () const
 
Time getDividendTime (Size i) const
 
- Protected Member Functions inherited from FDVanillaEngine
virtual void setupArguments (const PricingEngine::arguments *) const
 
virtual void setGridLimits () const
 
virtual void setGridLimits (Real, Time) const
 
virtual void initializeInitialCondition () const
 
virtual void initializeBoundaryConditions () const
 
virtual void initializeOperator () const
 
virtual Time getResidualTime () const
 
void ensureStrikeInGrid () const
 

Protected Attributes

std::vector< ext::shared_ptr< Event > > events_
 
std::vector< TimestoppingTimes_
 
Size timeStepPerPeriod_
 
QL_DEPRECATED_DISABLE_WARNING SampledCurve prices_
 
QL_DEPRECATED_DISABLE_WARNING ext::shared_ptr< StandardStepConditionstepCondition_
 
QL_DEPRECATED_ENABLE_WARNING ext::shared_ptr< model_typemodel_
 
- Protected Attributes inherited from FDVanillaEngine
QL_DEPRECATED_ENABLE_WARNING typedef BoundaryCondition< TridiagonalOperatorbc_type
 
ext::shared_ptr< GeneralizedBlackScholesProcessprocess_
 
Size timeSteps_
 
Size gridPoints_
 
bool timeDependent_
 
Date exerciseDate_
 
ext::shared_ptr< Payoffpayoff_
 
TridiagonalOperator finiteDifferenceOperator_
 
QL_DEPRECATED_DISABLE_WARNING SampledCurve intrinsicValues_
 
std::vector< ext::shared_ptr< bc_type > > BCs_
 
Real sMin_
 
Real center_
 
Real sMax_
 

Additional Inherited Members

- Public Member Functions inherited from FDVanillaEngine
QL_DEPRECATED_DISABLE_WARNING FDVanillaEngine (ext::shared_ptr< GeneralizedBlackScholesProcess > process, Size timeSteps, Size gridPoints, bool timeDependent=false)
 
virtual ~FDVanillaEngine ()=default
 
const Arraygrid () const
 

Detailed Description

template<template< class > class Scheme = CrankNicolson>
class QuantLib::FDMultiPeriodEngine< Scheme >
Deprecated:
Use the new finite-differences framework instead. Deprecated in version 1.32.

Definition at line 42 of file fdmultiperiodengine.hpp.

Member Typedef Documentation

◆ model_type

Definition at line 46 of file fdmultiperiodengine.hpp.

Constructor & Destructor Documentation

◆ FDMultiPeriodEngine()

QL_DEPRECATED_DISABLE_WARNING FDMultiPeriodEngine ( const ext::shared_ptr< GeneralizedBlackScholesProcess > &  process,
Size  timeSteps = 100,
Size  gridPoints = 100,
bool  timeDependent = false 
)
protected

Definition at line 107 of file fdmultiperiodengine.hpp.

Member Function Documentation

◆ setupArguments() [1/2]

virtual QL_DEPRECATED_ENABLE_WARNING void setupArguments ( const PricingEngine::arguments args,
const std::vector< ext::shared_ptr< Event > > &  schedule 
) const
protectedvirtual

Definition at line 59 of file fdmultiperiodengine.hpp.

◆ setupArguments() [2/2]

void setupArguments ( const PricingEngine::arguments a) const
overrideprotectedvirtual

Reimplemented from FDVanillaEngine.

Definition at line 73 of file fdmultiperiodengine.hpp.

◆ calculate()

void calculate ( PricingEngine::results r) const
protectedvirtual

Definition at line 114 of file fdmultiperiodengine.hpp.

◆ executeIntermediateStep()

virtual void executeIntermediateStep ( Size  step) const
protectedpure virtual

◆ initializeStepCondition()

void initializeStepCondition
protectedvirtual

Definition at line 206 of file fdmultiperiodengine.hpp.

◆ initializeModel()

void initializeModel
protectedvirtual

Definition at line 212 of file fdmultiperiodengine.hpp.

◆ getDividendTime()

Time getDividendTime ( Size  i) const
protected

Definition at line 96 of file fdmultiperiodengine.hpp.

Member Data Documentation

◆ events_

std::vector<ext::shared_ptr<Event> > events_
mutableprotected

Definition at line 52 of file fdmultiperiodengine.hpp.

◆ stoppingTimes_

std::vector<Time> stoppingTimes_
mutableprotected

Definition at line 53 of file fdmultiperiodengine.hpp.

◆ timeStepPerPeriod_

Size timeStepPerPeriod_
protected

Definition at line 54 of file fdmultiperiodengine.hpp.

◆ prices_

QL_DEPRECATED_DISABLE_WARNING SampledCurve prices_
mutableprotected

Definition at line 56 of file fdmultiperiodengine.hpp.

◆ stepCondition_

QL_DEPRECATED_DISABLE_WARNING ext::shared_ptr<StandardStepCondition > stepCondition_
mutableprotected

Definition at line 90 of file fdmultiperiodengine.hpp.

◆ model_

QL_DEPRECATED_ENABLE_WARNING ext::shared_ptr<model_type> model_
mutableprotected

Definition at line 92 of file fdmultiperiodengine.hpp.