Logo
Reference manual - version ored_version
FxStrikeResettableOption Class Reference
Inheritance diagram for FxStrikeResettableOption:

Additional Inherited Members

enum class  LegCashflowInclusion { IfNoEngineCashflows , Never , Always }
Public Member Functions inherited from StrikeResettableOption
 StrikeResettableOption (const string &tradeType="StrikeResettableOption")
 StrikeResettableOption (const Envelope &env, const string &longShort, const string &optionType, const string &currency, const string &quantity, const string &strike, const string &resetStrike, const string &triggerType, const string &triggerPrice, const QuantLib::ext::shared_ptr< Underlying > underlying, const ScheduleData &observationDates, const string &expiryDate, const string &settlementDate, const string &premium, const string &premiumDate)
void build (const QuantLib::ext::shared_ptr< EngineFactory > &) override
void setIsdaTaxonomyFields () override
void fromXML (XMLNode *node) override
XMLNode * toXML (XMLDocument &doc) const override
Public Member Functions inherited from ScriptedTrade
 ScriptedTrade (const std::string &tradeType="ScriptedTrade", const Envelope &env=Envelope())
 ScriptedTrade (const Envelope &env, const std::vector< ScriptedTradeEventData > &events, const std::vector< ScriptedTradeValueTypeData > &numbers, const std::vector< ScriptedTradeValueTypeData > &indices, const std::vector< ScriptedTradeValueTypeData > &currencies, const std::vector< ScriptedTradeValueTypeData > &daycounters, const std::map< std::string, ScriptedTradeScriptData > &script, const std::string &productTag, const std::string &tradeType="ScriptedTrade")
 ScriptedTrade (const Envelope &env, const std::vector< ScriptedTradeEventData > &events, const std::vector< ScriptedTradeValueTypeData > &numbers, const std::vector< ScriptedTradeValueTypeData > &indices, const std::vector< ScriptedTradeValueTypeData > &currencies, const std::vector< ScriptedTradeValueTypeData > &daycounters, const std::string &scriptName, const std::string &tradeType="ScriptedTrade")
void clear ()
QuantLib::Real notional () const override
 Return the current notional in npvCurrency. See individual sub-classes for the precise definition.
std::string notionalCurrency () const override
bool isExpired (const Date &d) const override
void build (const QuantLib::ext::shared_ptr< EngineFactory > &engineFactory, const PremiumData &premiumData, const Real premiumMultiplier)
std::map< ore::data::AssetClass, std::set< std::string > > underlyingIndices (const QuantLib::ext::shared_ptr< ReferenceDataManager > &referenceDataManager=nullptr) const override
const std::vector< ScriptedTradeEventData > & events () const
const std::vector< ScriptedTradeValueTypeData > & numbers () const
const std::vector< ScriptedTradeValueTypeData > & indices () const
const std::vector< ScriptedTradeValueTypeData > & currencies () const
const std::vector< ScriptedTradeValueTypeData > & daycounters () const
const std::map< std::string, ScriptedTradeScriptData > & script () const
const std::string & productTag () const
const std::string & scriptName () const
const std::string & simmProductClass () const
const std::string & scheduleProductClass () const
const ScriptedTradeScriptDatascript (const std::string &purpose, const bool fallBackOnEmptyPurpose=true) const
Public Member Functions inherited from Trade
 Trade ()
 Default constructor.
 Trade (const string &tradeType, const Envelope &env=Envelope(), const TradeActions &ta=TradeActions())
 Base class constructor.
virtual ~Trade ()
 Default destructor.
virtual std::map< std::string, RequiredFixings::FixingDatesfixings (const QuantLib::Date &settlementDate=QuantLib::Date()) const
const RequiredFixingsrequiredFixings () const
void reset ()
 Reset trade, clear all base class data. This does not reset accumulated timings for this trade.
void resetPricingStats (const std::size_t numberOfPricings=0, const boost::timer::nanosecond_type cumulativePricingTime=0)
 Reset accumulated timings to given values.
stringid ()
 Set the trade id.
void setId (const std::string &id)
void setEnvelope (const Envelope &envelope)
 Set the envelope with counterparty and portfolio info.
void setAdditionalData (const std::map< std::string, QuantLib::ext::any > &additionalData)
TradeActionstradeActions ()
 Set the trade actions.
const stringid () const
const stringtradeType () const
const Envelopeenvelope () const
const set< string > & portfolioIds () const
const TradeActionstradeActions () const
const QuantLib::ext::shared_ptr< InstrumentWrapper > & instrument () const
const std::vector< QuantLib::Leg > & legs () const
const std::vector< string > & legCurrencies () const
const std::vector< bool > & legPayers () const
const std::map< size_t, LegCashflowInclusion > & legCashflowInclusion () const
const stringnpvCurrency () const
const Date & maturity () const
const stringmaturityType () const
const stringissuer () const
template<typename T>
additionalDatum (const std::string &tag) const
 returns any additional datum.
virtual const std::map< std::string, QuantLib::ext::any > & additionalData () const
 returns all additional data returned by the trade once built
const std::string & sensitivityTemplate () const
const std::set< std::tuple< std::set< std::string >, std::string, std::string > > & productModelEngine () const
void validate () const
 Utility to validate that everything that needs to be set in this base class is actually set.
boost::timer::nanosecond_type getCumulativePricingTime () const
 Get cumulative timing spent on pricing.
std::size_t getNumberOfPricings () const
 Get number of pricings.
void addProductModelEngine (const EngineBuilder &builder)
void addProductModelEngine (const std::set< std::tuple< std::set< std::string >, std::string, std::string > > &productModelEngine)
void setSensitivityTemplate (const EngineBuilder &builder)
void setSensitivityTemplate (const std::string &id)
virtual std::vector< TradeCashflowReportDatacashflows (const std::string &baseCurrency, const QuantLib::ext::shared_ptr< ore::data::Market > &market, const std::string &configuration, const bool includePastCashflows) const
Public Member Functions inherited from XMLSerializable
void fromFile (const std::string &filename)
void toFile (const std::string &filename) const
void fromXMLString (const std::string &xml)
 Parse from XML string.
std::string toXMLString () const
 Parse from XML string.
std::string toXMLStringUnformatted () const
Date addPremiums (std::vector< QuantLib::ext::shared_ptr< Instrument > > &instruments, std::vector< Real > &multipliers, const Real tradeMultiplier, const PremiumData &premiumData, const Real premiumMultiplier, const Currency &tradeCurrency, const string &discountCurve, const QuantLib::ext::shared_ptr< EngineFactory > &factory, const string &configuration)
void setLegBasedAdditionalData (const Size legNo, Size resultLegId=Null< Size >()) const
void updateProductModelEngineAdditionalData ()
Protected Attributes inherited from ScriptedTrade
std::vector< ScriptedTradeEventDataevents_
std::vector< ScriptedTradeValueTypeDatanumbers_
std::vector< ScriptedTradeValueTypeDataindices_
std::vector< ScriptedTradeValueTypeDatacurrencies_
std::vector< ScriptedTradeValueTypeDatadaycounters_
std::map< std::string, ScriptedTradeScriptDatascript_
std::string productTag_
std::string scriptName_
bool isPfAnalyserRun_ = false
std::string simmProductClass_
std::string scheduleProductClass_
bool includePastCashflows_ = false
string tradeType_
QuantLib::ext::shared_ptr< InstrumentWrapperinstrument_
std::vector< QuantLib::Leg > legs_
std::vector< stringlegCurrencies_
std::vector< bool > legPayers_
std::map< std::size_t, LegCashflowInclusion > legCashflowInclusion_
string npvCurrency_
QuantLib::Real notional_
string notionalCurrency_
Date maturity_
string maturityType_
string issuer_
string sensitivityTemplate_
bool sensitivityTemplateSet_ = false
std::set< std::tuple< std::set< std::string >, std::string, std::string > > productModelEngine_
Date lastRelevantDate_ = Null<Date>()
std::size_t savedNumberOfPricings_ = 0
boost::timer::nanosecond_type savedCumulativePricingTime_ = 0
RequiredFixings requiredFixings_
std::map< std::string, QuantLib::ext::any > additionalData_