Logo
Reference manual - version orea_version
Public Member Functions | List of all members
ValuationCalculator Class Referenceabstract

ValuationCalculator interface. More...

#include <orea/engine/valuationcalculator.hpp>

+ Inheritance diagram for ValuationCalculator:

Public Member Functions

virtual void calculate (const boost::shared_ptr< Trade > &trade, Size tradeIndex, const boost::shared_ptr< SimMarket > &simMarket, boost::shared_ptr< NPVCube > &outputCube, boost::shared_ptr< NPVCube > &outputCubeNettingSet, const Date &date, Size dateIndex, Size sample, bool isCloseOut=false)=0
 
virtual void calculateT0 (const boost::shared_ptr< Trade > &trade, Size tradeIndex, const boost::shared_ptr< SimMarket > &simMarket, boost::shared_ptr< NPVCube > &outputCube, boost::shared_ptr< NPVCube > &outputCubeNettingSet)=0
 
virtual void init (const boost::shared_ptr< Portfolio > &portfolio, const boost::shared_ptr< SimMarket > &simMarket)=0
 
virtual void initScenario ()=0
 

Detailed Description

ValuationCalculator interface.

Member Function Documentation

◆ calculate()

virtual void calculate ( const boost::shared_ptr< Trade > &  trade,
Size  tradeIndex,
const boost::shared_ptr< SimMarket > &  simMarket,
boost::shared_ptr< NPVCube > &  outputCube,
boost::shared_ptr< NPVCube > &  outputCubeNettingSet,
const Date &  date,
Size  dateIndex,
Size  sample,
bool  isCloseOut = false 
)
pure virtual
Parameters
tradeThe trade
tradeIndexTrade index for writing to the cube
simMarketThe market
outputCubeThe cube for data on trade level
outputCubeNettingSetThe cube for data on netting set level
dateThe date
dateIndexDate index
sampleSample
isCloseOutisCloseOut

◆ calculateT0()

virtual void calculateT0 ( const boost::shared_ptr< Trade > &  trade,
Size  tradeIndex,
const boost::shared_ptr< SimMarket > &  simMarket,
boost::shared_ptr< NPVCube > &  outputCube,
boost::shared_ptr< NPVCube > &  outputCubeNettingSet 
)
pure virtual
Parameters
tradeThe trade
tradeIndexTrade index for writing to the cube
simMarketThe market
outputCubeThe cube
outputCubeNettingSetThe cube