#include <orea/engine/mporcalculator.hpp>
Public Member Functions | |
MPORCalculator (const boost::shared_ptr< NPVCalculator > &npvCalc, Size defaultIndex=0, Size closeOutIndex=1) | |
base ccy and index to write to | |
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) override |
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) override |
void | init (const boost::shared_ptr< Portfolio > &portfolio, const boost::shared_ptr< SimMarket > &simMarket) override |
void | initScenario () override |
Calculate NPV for default and close-out time grids Implicit assumption that MPOR-style date grid is being used Utilises NPVCalculator for actual NPV calculation