Logo
Reference manual - version ored_version
Public Types | Public Member Functions | Protected Member Functions | List of all members
LocalVolModelBuilder Class Reference
+ Inheritance diagram for LocalVolModelBuilder:

Public Types

enum class  Type { Dupire , DupireFloored , AndreasenHuge }
 

Public Member Functions

 LocalVolModelBuilder (const std::vector< Handle< YieldTermStructure >> &curves, const std::vector< ext::shared_ptr< GeneralizedBlackScholesProcess >> &processes, const std::set< Date > &simulationDates={}, const std::set< Date > &addDates={}, const Size timeStepsPerYear=1, const Type lvType=Type::Dupire, const std::vector< Real > &calibrationMoneyness={ -2.0, -1.0, 0.0, 1.0, 2.0 }, const bool dontCalibrate=false)
 
 LocalVolModelBuilder (const Handle< YieldTermStructure > &curve, const ext::shared_ptr< GeneralizedBlackScholesProcess > &process, const std::set< Date > &simulationDates={}, const std::set< Date > &addDates={}, const Size timeStepsPerYear=1, const Type lvType=Type::Dupire, const std::vector< Real > &calibrationMoneyness={ -2.0, -1.0, 0.0, 1.0, 2.0 }, const bool dontCalibrate=false)
 
std::vector< ext::shared_ptr< GeneralizedBlackScholesProcess > > getCalibratedProcesses () const override
 
- Public Member Functions inherited from BlackScholesModelBuilderBase
 BlackScholesModelBuilderBase (const std::vector< Handle< YieldTermStructure >> &curves, const std::vector< boost::shared_ptr< GeneralizedBlackScholesProcess >> &processes, const std::set< Date > &simulationDates, const std::set< Date > &addDates, const Size timeStepsPerYear)
 
 BlackScholesModelBuilderBase (const Handle< YieldTermStructure > &curve, const boost::shared_ptr< GeneralizedBlackScholesProcess > &process, const std::set< Date > &simulationDates, const std::set< Date > &addDates, const Size timeStepsPerYear)
 
Handle< BlackScholesModelWrappermodel () const
 
void forceRecalculate () override
 
bool requiresRecalibration () const override
 
- Public Member Functions inherited from ModelBuilder
void recalibrate () const
 

Protected Member Functions

std::vector< std::vector< Real > > getCurveTimes () const override
 
std::vector< std::vector< std::pair< Real, Real > > > getVolTimesStrikes () const override
 
- Protected Member Functions inherited from BlackScholesModelBuilderBase
 BlackScholesModelBuilderBase (const Handle< YieldTermStructure > &curve, const boost::shared_ptr< GeneralizedBlackScholesProcess > &process)
 
virtual void setupDatesAndTimes () const
 
void performCalculations () const override
 
bool calibrationPointsChanged (const bool updateCache) const
 

Additional Inherited Members

- Protected Attributes inherited from BlackScholesModelBuilderBase
const std::vector< Handle< YieldTermStructure > > curves_
 
const std::vector< boost::shared_ptr< GeneralizedBlackScholesProcess > > processes_
 
const std::set< Date > simulationDates_
 
const std::set< Date > addDates_
 
const Size timeStepsPerYear_
 
std::set< Date > effectiveSimulationDates_
 
TimeGrid discretisationTimeGrid_
 
RelinkableHandle< BlackScholesModelWrappermodel_
 
bool forceCalibration_ = false
 
boost::shared_ptr< MarketObservermarketObserver_
 
std::vector< Handle< BlackVolTermStructure > > vols_
 
std::vector< Handle< YieldTermStructure > > allCurves_
 
CalibrationPointCache cache_