#include <ored/portfolio/scriptedtrade.hpp>
Public Member Functions | |
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 > ¤cies, 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 > ¤cies, const std::vector< ScriptedTradeValueTypeData > &daycounters, const std::string &scriptName, const std::string &tradeType="ScriptedTrade") | |
void | clear () |
void | build (const QuantLib::ext::shared_ptr< EngineFactory > &) override |
QuantLib::Real | notional () const override |
Return the current notional in npvCurrency. See individual sub-classes for the precise definition. More... | |
std::string | notionalCurrency () const override |
void | fromXML (XMLNode *node) override |
XMLNode * | toXML (ore::data::XMLDocument &doc) 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 |
virtual void | setIsdaTaxonomyFields () |
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 ScriptedTradeScriptData & | script (const std::string &purpose, const bool fallBackOnEmptyPurpose=true) const |
Public Member Functions inherited from Trade | |
Trade () | |
Default constructor. More... | |
Trade (const string &tradeType, const Envelope &env=Envelope(), const TradeActions &ta=TradeActions()) | |
Base class constructor. More... | |
virtual | ~Trade () |
Default destructor. More... | |
virtual void | build (const QuantLib::ext::shared_ptr< EngineFactory > &)=0 |
virtual std::map< std::string, RequiredFixings::FixingDates > | fixings (const QuantLib::Date &settlementDate=QuantLib::Date()) const |
const RequiredFixings & | requiredFixings () const |
virtual std::map< AssetClass, std::set< std::string > > | underlyingIndices (const QuantLib::ext::shared_ptr< ReferenceDataManager > &referenceDataManager=nullptr) const |
void | reset () |
Reset trade, clear all base class data. This does not reset accumulated timings for this trade. More... | |
void | resetPricingStats (const std::size_t numberOfPricings=0, const boost::timer::nanosecond_type cumulativePricingTime=0) |
Reset accumulated timings to given values. More... | |
string & | id () |
Set the trade id. More... | |
void | setEnvelope (const Envelope &envelope) |
Set the envelope with counterparty and portfolio info. More... | |
void | setAdditionalData (const std::map< std::string, boost::any > &additionalData) |
TradeActions & | tradeActions () |
Set the trade actions. More... | |
const string & | id () const |
const string & | tradeType () const |
const Envelope & | envelope () const |
const set< string > & | portfolioIds () const |
const TradeActions & | tradeActions () 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 string & | npvCurrency () const |
const Date & | maturity () const |
virtual bool | isExpired (const Date &d) |
const string & | issuer () const |
template<typename T > | |
T | additionalDatum (const std::string &tag) const |
returns any additional datum. More... | |
virtual const std::map< std::string, boost::any > & | additionalData () const |
returns all additional data returned by the trade once built More... | |
const std::string & | sensitivityTemplate () const |
void | validate () const |
Utility to validate that everything that needs to be set in this base class is actually set. More... | |
virtual bool | hasCashflows () const |
boost::timer::nanosecond_type | getCumulativePricingTime () const |
Get cumulative timing spent on pricing. More... | |
std::size_t | getNumberOfPricings () const |
Get number of pricings. More... | |
Public Member Functions inherited from XMLSerializable | |
virtual | ~XMLSerializable () |
virtual void | fromXML (XMLNode *node)=0 |
virtual XMLNode * | toXML (XMLDocument &doc) const =0 |
void | fromFile (const std::string &filename) |
void | toFile (const std::string &filename) const |
void | fromXMLString (const std::string &xml) |
Parse from XML string. More... | |
std::string | toXMLString () const |
Parse from XML string. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Trade | |
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 QuantLib::ext::shared_ptr< EngineFactory > &factory, const string &configuration) |
void | setLegBasedAdditionalData (const Size legNo, Size resultLegId=Null< Size >()) const |
void | setSensitivityTemplate (const EngineBuilder &builder) |
void | setSensitivityTemplate (const std::string &id) |
Definition at line 202 of file scriptedtrade.hpp.
ScriptedTrade | ( | const std::string & | tradeType = "ScriptedTrade" , |
const Envelope & | env = Envelope() |
||
) |
Definition at line 205 of file scriptedtrade.hpp.
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" |
||
) |
Definition at line 208 of file scriptedtrade.hpp.
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" |
||
) |
Definition at line 218 of file scriptedtrade.hpp.
void clear | ( | ) |
Definition at line 177 of file scriptedtrade.cpp.
|
overridevirtual |
Build QuantLib/QuantExt instrument, link pricing engine. If build() is called multiple times, reset() should be called between these calls.
Implements Trade.
Reimplemented in TaRF, WindowBarrierOption, and WorstOfBasketSwap.
Definition at line 97 of file scriptedtrade.cpp.
|
overridevirtual |
Return the current notional in npvCurrency. See individual sub-classes for the precise definition.
Reimplemented from Trade.
Definition at line 135 of file scriptedtrade.cpp.
|
overridevirtual |
Reimplemented from Trade.
Definition at line 156 of file scriptedtrade.cpp.
|
overridevirtual |
Reimplemented from Trade.
Reimplemented in TaRF, WindowBarrierOption, and WorstOfBasketSwap.
Definition at line 252 of file scriptedtrade.cpp.
|
overridevirtual |
Reimplemented from Trade.
Reimplemented in TaRF, WindowBarrierOption, and WorstOfBasketSwap.
Definition at line 374 of file scriptedtrade.cpp.
void build | ( | const QuantLib::ext::shared_ptr< EngineFactory > & | engineFactory, |
const PremiumData & | premiumData, | ||
const Real | premiumMultiplier | ||
) |
Definition at line 39 of file scriptedtrade.cpp.
|
overridevirtual |
Reimplemented from Trade.
Definition at line 226 of file scriptedtrade.cpp.
|
virtual |
Reimplemented in Accumulator, Autocallable_01, BasketOption, BasketVarianceSwap, BestEntryOption, PerformanceOption_01, RainbowOption, WindowBarrierOption, and WorstOfBasketSwap.
Definition at line 101 of file scriptedtrade.cpp.
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 |
Definition at line 257 of file scriptedtrade.hpp.
const std::string & scheduleProductClass | ( | ) | const |
Definition at line 258 of file scriptedtrade.hpp.
const ScriptedTradeScriptData & script | ( | const std::string & | purpose, |
const bool | fallBackOnEmptyPurpose = true |
||
) | const |
Definition at line 403 of file scriptedtrade.cpp.
|
protected |
Definition at line 265 of file scriptedtrade.hpp.
|
protected |
Definition at line 266 of file scriptedtrade.hpp.
|
protected |
Definition at line 267 of file scriptedtrade.hpp.
|
protected |
Definition at line 268 of file scriptedtrade.hpp.
|
protected |
Definition at line 269 of file scriptedtrade.hpp.
|
protected |
Definition at line 271 of file scriptedtrade.hpp.
|
protected |
Definition at line 272 of file scriptedtrade.hpp.
|
protected |
Definition at line 274 of file scriptedtrade.hpp.
|
protected |
Definition at line 277 of file scriptedtrade.hpp.
|
protected |
Definition at line 278 of file scriptedtrade.hpp.