Logo
Fully annotated reference manual - version 1.8.12
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
CliquetOptionEngineBuilder Class Reference

Engine builder for Cliquet Options. More...

#include <ored/portfolio/builders/cliquetoption.hpp>

+ Inheritance diagram for CliquetOptionEngineBuilder:
+ Collaboration diagram for CliquetOptionEngineBuilder:

Public Member Functions

 CliquetOptionEngineBuilder (const std::string &model, const std::string &engine, const std::set< std::string > &tradeTypes, const ore::data::AssetClass &assetClass)
 
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engine (const std::string &assetName, const QuantLib::Currency &ccy)
 
QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engine (const QuantLib::Currency &ccy1, const QuantLib::Currency &ccy2)
 
- Public Member Functions inherited from CachingOptionEngineBuilder< std::string, const std::string &, const QuantLib::Currency &, const ore::data::AssetClass & >
 CachingOptionEngineBuilder (const string &model, const string &engine, const set< string > &tradeTypes, const AssetClass &assetClass)
 
- Public Member Functions inherited from CachingEngineBuilder< T, U, Args >
 CachingEngineBuilder (const string &model, const string &engine, const set< string > &tradeTypes)
 
QuantLib::ext::shared_ptr< U > engine (Args... params)
 Return a PricingEngine or a FloatingRateCouponPricer. More...
 
void reset () override
 reset the builder (e.g. clear cache) More...
 
- Public Member Functions inherited from EngineBuilder
 EngineBuilder (const string &model, const string &engine, const set< string > &tradeTypes)
 
virtual ~EngineBuilder ()
 Virtual destructor. More...
 
const string & model () const
 Return the model name. More...
 
const string & engine () const
 Return the engine name. More...
 
const set< string > & tradeTypes () const
 Return the possible trade types. More...
 
const string & configuration (const MarketContext &key)
 Return a configuration (or the default one if key not found) More...
 
virtual void reset ()
 reset the builder (e.g. clear cache) More...
 
void init (const QuantLib::ext::shared_ptr< Market > market, const map< MarketContext, string > &configurations, const map< string, string > &modelParameters, const map< string, string > &engineParameters, const std::map< std::string, std::string > &globalParameters={})
 Initialise this Builder with the market and parameters to use. More...
 
const set< std::pair< string, QuantLib::ext::shared_ptr< QuantExt::ModelBuilder > > > & modelBuilders () const
 return model builders More...
 
std::string engineParameter (const std::string &p, const std::vector< std::string > &qualifiers={}, const bool mandatory=true, const std::string &defaultValue="") const
 
std::string modelParameter (const std::string &p, const std::vector< std::string > &qualifiers={}, const bool mandatory=true, const std::string &defaultValue="") const
 

Protected Member Functions

virtual std::string keyImpl (const std::string &assetName, const QuantLib::Currency &ccy, const ore::data::AssetClass &assetClass) override
 
- Protected Member Functions inherited from CachingOptionEngineBuilder< std::string, const std::string &, const QuantLib::Currency &, const ore::data::AssetClass & >
QuantLib::ext::shared_ptr< QuantLib::GeneralizedBlackScholesProcess > getBlackScholesProcess (const string &assetName, const Currency &ccy, const AssetClass &assetClassUnderlying, const std::vector< Time > &timePoints={}, const bool useFxSpot=true)
 
- Protected Member Functions inherited from CachingEngineBuilder< T, U, Args >
virtual T keyImpl (Args...)=0
 
virtual QuantLib::ext::shared_ptr< U > engineImpl (Args...)=0
 

Additional Inherited Members

- Protected Attributes inherited from CachingOptionEngineBuilder< std::string, const std::string &, const QuantLib::Currency &, const ore::data::AssetClass & >
AssetClass assetClass_
 
- Protected Attributes inherited from CachingEngineBuilder< T, U, Args >
map< T, QuantLib::ext::shared_ptr< U > > engines_
 
- Protected Attributes inherited from EngineBuilder
string model_
 
string engine_
 
set< string > tradeTypes_
 
QuantLib::ext::shared_ptr< Marketmarket_
 
map< MarketContext, string > configurations_
 
map< string, string > modelParameters_
 
map< string, string > engineParameters_
 
std::map< std::string, std::string > globalParameters_
 
set< std::pair< string, QuantLib::ext::shared_ptr< QuantExt::ModelBuilder > > > modelBuilders_
 

Detailed Description

Engine builder for Cliquet Options.

Pricing engines are cached by currency

Definition at line 38 of file cliquetoption.hpp.

Constructor & Destructor Documentation

◆ CliquetOptionEngineBuilder()

CliquetOptionEngineBuilder ( const std::string &  model,
const std::string &  engine,
const std::set< std::string > &  tradeTypes,
const ore::data::AssetClass assetClass 
)

Definition at line 42 of file cliquetoption.hpp.

CachingOptionEngineBuilder(const string &model, const string &engine, const set< string > &tradeTypes, const AssetClass &assetClass)
const string & engine() const
Return the engine name.
const set< string > & tradeTypes() const
Return the possible trade types.
const string & model() const
Return the model name.

Member Function Documentation

◆ engine() [1/2]

QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engine ( const std::string &  assetName,
const QuantLib::Currency &  ccy 
)

Definition at line 46 of file cliquetoption.hpp.

+ Here is the call graph for this function:

◆ engine() [2/2]

QuantLib::ext::shared_ptr< QuantLib::PricingEngine > engine ( const QuantLib::Currency &  ccy1,
const QuantLib::Currency &  ccy2 
)

Definition at line 51 of file cliquetoption.hpp.

51 {
52 return ore::data::CachingOptionEngineBuilder<std::string, const std::string&, const QuantLib::Currency&,
53 const ore::data::AssetClass&>::engine(ccy1.code(), ccy2,
55 }
+ Here is the call graph for this function:

◆ keyImpl()

virtual std::string keyImpl ( const std::string &  assetName,
const QuantLib::Currency &  ccy,
const ore::data::AssetClass assetClass 
)
overrideprotectedvirtual

Definition at line 58 of file cliquetoption.hpp.

59 {
60 return assetName + "/" + ccy.code();
61 }