Exposure Aggregation and XVA Calculation. More...
#include <orea/aggregation/postprocess.hpp>
Public Member Functions | |
PostProcess (const QuantLib::ext::shared_ptr< Portfolio > &portfolio, const QuantLib::ext::shared_ptr< NettingSetManager > &nettingSetManager, const QuantLib::ext::shared_ptr< CollateralBalances > &collateralBalances, const QuantLib::ext::shared_ptr< Market > &market, const std::string &configuration, const QuantLib::ext::shared_ptr< NPVCube > &cube, const QuantLib::ext::shared_ptr< AggregationScenarioData > &scenarioData, const map< string, bool > &analytics, const string &baseCurrency, const string &allocationMethod, Real cvaMarginalAllocationLimit, Real quantile=0.95, const string &calculationType="Symmetric", const string &dvaName="", const string &fvaBorrowingCurve="", const string &fvaLendingCurve="", const QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator > &dimCalculator=QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator >(), const QuantLib::ext::shared_ptr< CubeInterpretation > &cubeInterpretation=QuantLib::ext::shared_ptr< CubeInterpretation >(), bool fullInitialCollateralisation=false, vector< Period > cvaSpreadSensiGrid={6 *Months, 1 *Years, 3 *Years, 5 *Years, 10 *Years}, Real cvaSpreadSensiShiftSize=0.0001, Real kvaCapitalDiscountRate=0.10, Real kvaAlpha=1.4, Real kvaRegAdjustment=12.5, Real kvaCapitalHurdle=0.012, Real kvaOurPdFloor=0.03, Real kvaTheirPdFloor=0.03, Real kvaOurCvaRiskWeight=0.05, Real kvaTheirCvaRiskWeight=0.05, const QuantLib::ext::shared_ptr< NPVCube > &cptyCube_=nullptr, const string &flipViewBorrowingCurvePostfix="_BORROW", const string &flipViewLendingCurvePostfix="_LEND", const QuantLib::ext::shared_ptr< CreditSimulationParameters > &creditSimulationParameters=nullptr, const std::vector< Real > &creditMigrationDistributionGrid={}, const std::vector< Size > &creditMigrationTimeSteps={}, const Matrix &creditStateCorrelationMatrix=Matrix(), bool withMporStickyDate=false, const MporCashFlowMode mporCashFlowMode=MporCashFlowMode::Unspecified) | |
Constructor. More... | |
void | setDimCalculator (QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator > dimCalculator) |
const vector< Real > & | spreadSensitivityTimes () |
const vector< Period > & | spreadSensitivityGrid () |
const std::map< string, Size > | tradeIds () |
Return list of Trade IDs in the portfolio. More... | |
const std::map< string, Size > | nettingSetIds () |
Return list of netting set IDs in the portfolio. More... | |
const map< string, string > & | counterpartyId () |
Return the map of counterparty Ids. More... | |
const vector< Real > & | tradeEPE (const string &tradeId) |
Return trade level Expected Positive Exposure evolution. More... | |
const vector< Real > & | tradeENE (const string &tradeId) |
Return trade level Expected Negative Exposure evolution. More... | |
const vector< Real > & | tradeEE_B (const string &tradeId) |
Return trade level Basel Expected Exposure evolution. More... | |
const Real & | tradeEPE_B (const string &tradeId) |
Return trade level Basel Expected Positive Exposure evolution. More... | |
const vector< Real > & | tradeEEE_B (const string &tradeId) |
Return trade level Effective Expected Exposure evolution. More... | |
const Real & | tradeEEPE_B (const string &tradeId) |
Return trade level Effective Expected Positive Exposure evolution. More... | |
const vector< Real > & | tradePFE (const string &tradeId) |
Return trade level Potential Future Exposure evolution. More... | |
const vector< Real > & | netEPE (const string &nettingSetId) |
Return Netting Set Expected Positive Exposure evolution. More... | |
const vector< Real > & | netENE (const string &nettingSetId) |
Return Netting Set Expected Negative Exposure evolution. More... | |
const vector< Real > & | netEE_B (const string &nettingSetId) |
Return Netting Set Basel Expected Exposure evolution. More... | |
const Real & | netEPE_B (const string &nettingSetId) |
Return Netting Set Basel Expected Positive Exposure evolution. More... | |
const vector< Real > & | netEEE_B (const string &nettingSetId) |
Return Netting Set Effective Expected Exposure evolution. More... | |
const Real & | netEEPE_B (const string &nettingSetId) |
Return Netting Set Effective Expected Positive Exposure evolution. More... | |
const vector< Real > & | netPFE (const string &nettingSetId) |
Return Netting Set Potential Future Exposure evolution. More... | |
const vector< Real > & | expectedCollateral (const string &nettingSetId) |
Return the netting set's expected collateral evolution. More... | |
const vector< Real > & | colvaIncrements (const string &nettingSetId) |
Return the netting set's expected COLVA increments through time. More... | |
const vector< Real > & | collateralFloorIncrements (const string &nettingSetId) |
Return the netting set's expected Collateral Floor increments through time. More... | |
const vector< Real > & | allocatedTradeEPE (const string &tradeId) |
Return the trade EPE, allocated down from the netting set level. More... | |
const vector< Real > & | allocatedTradeENE (const string &tradeId) |
Return trade ENE, allocated down from the netting set level. More... | |
vector< Real > | netCvaHazardRateSensitivity (const string &nettingSetId) |
Return Netting Set CVA Hazard Rate Sensitivity vector. More... | |
vector< Real > | netCvaSpreadSensitivity (const string &nettingSetId) |
Return Netting Set CVA Spread Sensitivity vector. More... | |
const std::map< std::string, std::vector< QuantLib::Real > > & | netCvaSpreadSensitivity () const |
Return Netting Set CVA Spread Sensitivity vector. More... | |
Real | tradeCVA (const string &tradeId) |
Return trade (stand-alone) CVA. More... | |
Real | tradeDVA (const string &tradeId) |
Return trade (stand-alone) DVA. More... | |
Real | tradeMVA (const string &tradeId) |
Return trade (stand-alone) MVA. More... | |
Real | tradeFBA (const string &tradeId) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment) More... | |
Real | tradeFCA (const string &tradeId) |
Return trade (stand-alone) FCA (Funding Cost Adjustment) More... | |
Real | tradeFBA_exOwnSP (const string &tradeId) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment) excluding own survival probability. More... | |
Real | tradeFCA_exOwnSP (const string &tradeId) |
Return trade (stand-alone) FCA (Funding Cost Adjustment) excluding own survival probability. More... | |
Real | tradeFBA_exAllSP (const string &tradeId) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment) excluding both survival probabilities. More... | |
Real | tradeFCA_exAllSP (const string &tradeId) |
Return trade (stand-alone) FCA (Funding Cost Adjustment) excluding both survival probabilities. More... | |
Real | allocatedTradeCVA (const string &tradeId) |
Return allocated trade CVA (trade CVAs add up to netting set CVA) More... | |
Real | allocatedTradeDVA (const string &tradeId) |
Return allocated trade DVA (trade DVAs add up to netting set DVA) More... | |
Real | nettingSetCVA (const string &nettingSetId) |
Return netting set CVA. More... | |
Real | nettingSetDVA (const string &nettingSetId) |
Return netting set DVA. More... | |
Real | nettingSetMVA (const string &nettingSetId) |
Return netting set MVA. More... | |
Real | nettingSetFBA (const string &nettingSetId) |
Return netting set FBA. More... | |
Real | nettingSetFCA (const string &nettingSetId) |
Return netting set FCA. More... | |
Real | nettingSetOurKVACCR (const string &nettingSetId) |
Return netting set KVA-CCR. More... | |
Real | nettingSetTheirKVACCR (const string &nettingSetId) |
Return netting set KVA-CCR from counterparty perspective. More... | |
Real | nettingSetOurKVACVA (const string &nettingSetId) |
Return netting set KVA-CVA. More... | |
Real | nettingSetTheirKVACVA (const string &nettingSetId) |
Return netting set KVA-CVA from counterparty perspective. More... | |
Real | nettingSetFBA_exOwnSP (const string &nettingSetId) |
Return netting set FBA excluding own survival probability. More... | |
Real | nettingSetFCA_exOwnSP (const string &nettingSetId) |
Return netting set FCA excluding own survival probability. More... | |
Real | nettingSetFBA_exAllSP (const string &nettingSetId) |
Return netting set FBA excluding both survival probabilities. More... | |
Real | nettingSetFCA_exAllSP (const string &nettingSetId) |
Return netting set FCA excluding both survival probabilities. More... | |
Real | nettingSetCOLVA (const string &nettingSetId) |
Return netting set COLVA. More... | |
Real | nettingSetCollateralFloor (const string &nettingSetId) |
Return netting set Collateral Floor value. More... | |
const QuantLib::ext::shared_ptr< NPVCube > & | cube () |
Inspector for the input NPV cube (by trade, time, scenario) More... | |
const QuantLib::ext::shared_ptr< NPVCube > & | cptyCube () |
Inspector for the input Cpty cube (by name, time, scenario) More... | |
const QuantLib::ext::shared_ptr< NPVCube > & | netCube () |
Return the for the input NPV cube after netting and collateral (by netting set, time, scenario) More... | |
void | exportDimEvolution (ore::data::Report &dimEvolutionReport) |
Return the dynamic initial margin cube (regression approach) More... | |
void | exportDimRegression (const std::string &nettingSet, const std::vector< Size > &timeSteps, const std::vector< QuantLib::ext::shared_ptr< ore::data::Report > > &dimRegReports) |
Write DIM as a function of sample netting set NPV for a given time step. More... | |
QuantLib::Real | cvaSpreadSensiShiftSize () |
get the cvaSpreadSensiShiftSize More... | |
const std::vector< Real > & | creditMigrationUpperBucketBounds () const |
get the credit migration pnl distributions for each time step More... | |
const std::vector< std::vector< Real > > & | creditMigrationCdf () const |
const std::vector< std::vector< Real > > & | creditMigrationPdf () const |
Protected Member Functions | |
QuantLib::ext::shared_ptr< vector< QuantLib::ext::shared_ptr< CollateralAccount > > > | collateralPaths (const string &nettingSetId, const QuantLib::ext::shared_ptr< NettingSetManager > &nettingSetManager, const QuantLib::ext::shared_ptr< Market > &market, const std::string &configuration, const QuantLib::ext::shared_ptr< AggregationScenarioData > &scenarioData, Size dates, Size samples, const vector< vector< Real > > &nettingSetValue, Real nettingSetValueToday, const Date &nettingSetMaturity) |
Helper function to return the collateral account evolution for a given netting set. More... | |
void | updateNettingSetKVA () |
void | updateNettingSetCvaSensitivity () |
Exposure Aggregation and XVA Calculation.
This class aggregates NPV cube data, computes exposure statistics and various XVAs, all at trade and netting set level:
1) Exposures
2) Dynamic Initial Margin via regression
3) XVAs:
4) Allocation from netting set to trade level such that allocated contributions add up to the netting set
All analytics are precomputed when the class constructor is called. A number of inspectors described below then return the individual analytics results.
Note:
Definition at line 93 of file postprocess.hpp.
PostProcess | ( | const QuantLib::ext::shared_ptr< Portfolio > & | portfolio, |
const QuantLib::ext::shared_ptr< NettingSetManager > & | nettingSetManager, | ||
const QuantLib::ext::shared_ptr< CollateralBalances > & | collateralBalances, | ||
const QuantLib::ext::shared_ptr< Market > & | market, | ||
const std::string & | configuration, | ||
const QuantLib::ext::shared_ptr< NPVCube > & | cube, | ||
const QuantLib::ext::shared_ptr< AggregationScenarioData > & | scenarioData, | ||
const map< string, bool > & | analytics, | ||
const string & | baseCurrency, | ||
const string & | allocationMethod, | ||
Real | cvaMarginalAllocationLimit, | ||
Real | quantile = 0.95 , |
||
const string & | calculationType = "Symmetric" , |
||
const string & | dvaName = "" , |
||
const string & | fvaBorrowingCurve = "" , |
||
const string & | fvaLendingCurve = "" , |
||
const QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator > & | dimCalculator = QuantLib::ext::shared_ptr<DynamicInitialMarginCalculator>() , |
||
const QuantLib::ext::shared_ptr< CubeInterpretation > & | cubeInterpretation = QuantLib::ext::shared_ptr<CubeInterpretation>() , |
||
bool | fullInitialCollateralisation = false , |
||
vector< Period > | cvaSpreadSensiGrid = {6 * Months, 1 * Years, 3 * Years, 5 * Years, 10 * Years} , |
||
Real | cvaSpreadSensiShiftSize = 0.0001 , |
||
Real | kvaCapitalDiscountRate = 0.10 , |
||
Real | kvaAlpha = 1.4 , |
||
Real | kvaRegAdjustment = 12.5 , |
||
Real | kvaCapitalHurdle = 0.012 , |
||
Real | kvaOurPdFloor = 0.03 , |
||
Real | kvaTheirPdFloor = 0.03 , |
||
Real | kvaOurCvaRiskWeight = 0.05 , |
||
Real | kvaTheirCvaRiskWeight = 0.05 , |
||
const QuantLib::ext::shared_ptr< NPVCube > & | cptyCube_ = nullptr , |
||
const string & | flipViewBorrowingCurvePostfix = "_BORROW" , |
||
const string & | flipViewLendingCurvePostfix = "_LEND" , |
||
const QuantLib::ext::shared_ptr< CreditSimulationParameters > & | creditSimulationParameters = nullptr , |
||
const std::vector< Real > & | creditMigrationDistributionGrid = {} , |
||
const std::vector< Size > & | creditMigrationTimeSteps = {} , |
||
const Matrix & | creditStateCorrelationMatrix = Matrix() , |
||
bool | withMporStickyDate = false , |
||
const MporCashFlowMode | mporCashFlowMode = MporCashFlowMode::Unspecified |
||
) |
Constructor.
portfolio | Trade portfolio to identify e.g. netting set, maturity, break dates for each trade |
nettingSetManager | Netting set manager to access CSA details for each netting set |
collateralBalances | Collateral balances (VM, IM, IA) |
market | Market data object to access e.g. discounting and funding curves |
configuration | Market configuration to use |
cube | Input NPV Cube |
scenarioData | Subset of simulated market data, index fixings and FX spot rates, associated with the NPV cube |
analytics | Selection of analytics to be produced |
baseCurrency | Expression currency for all results |
allocationMethod | Method to be used for Exposure/XVA allocation down to trade level |
cvaMarginalAllocationLimit | Cutoff parameter for the marginal allocation method below which we switch to equal distribution |
quantile | Quantile for Potential Future Exposure output |
calculationType | Collateral calculation type to be used, see class CollateralExposureHelper |
dvaName | Credit curve name to be used for "our" credit risk in DVA calculations |
fvaBorrowingCurve | Borrowing curve name to be used in FVA calculations |
fvaLendingCurve | Lending curve name to be used in FVA calculations |
dimCalculator | Dynamic Initial Margin Calculator |
cubeInterpretation | Interpreter for cube storage (where to find which data items) |
fullInitialCollateralisation | Assume t=0 collateral balance equals NPV (set to 0 if false) |
cvaSpreadSensiGrid | CVA spread sensitivity grid |
cvaSpreadSensiShiftSize | CVA spread sensitivity shift size |
kvaCapitalDiscountRate | own capital discounting rate for discounting expected capital for KVA |
kvaAlpha | alpha to adjust EEPE to give EAD for risk capital |
kvaRegAdjustment | regulatory adjustment, 1/min cap requirement |
kvaCapitalHurdle | Cost of Capital for KVA = regulatory adjustment x capital hurdle |
kvaOurPdFloor | Our KVA PD floor |
kvaTheirPdFloor | Their KVA PD floor |
kvaOurCvaRiskWeight | Our KVA CVA Risk Weight |
kvaTheirCvaRiskWeight | Their KVA CVA Risk Weight, |
cptyCube_ | Input Counterparty Cube |
flipViewBorrowingCurvePostfix | Postfix for flipView borrowing curve for fva |
flipViewLendingCurvePostfix | Postfix for flipView lending curve for fva |
creditSimulationParameters | Credit simulation parameters |
creditMigrationDistributionGrid | Credit simulation distribution grid |
creditMigrationTimeSteps | Credit simulation time steps |
creditStateCorrelationMatrix | Credit State correlation matrix |
withMporStickyDate | If set to true, cash flows in the margin period of risk are ignored in the collateral modelling |
mporCashFlowMode | Treatment of cash flows over the margin period of risk |
Definition at line 55 of file postprocess.cpp.
void setDimCalculator | ( | QuantLib::ext::shared_ptr< DynamicInitialMarginCalculator > | dimCalculator | ) |
Definition at line 174 of file postprocess.hpp.
const vector< Real > & spreadSensitivityTimes | ( | ) |
Definition at line 178 of file postprocess.hpp.
const vector< Period > & spreadSensitivityGrid | ( | ) |
Definition at line 179 of file postprocess.hpp.
const std::map< string, Size > tradeIds | ( | ) |
Return list of Trade IDs in the portfolio.
Definition at line 182 of file postprocess.hpp.
const std::map< string, Size > nettingSetIds | ( | ) |
Return list of netting set IDs in the portfolio.
Definition at line 186 of file postprocess.hpp.
const map< string, string > & counterpartyId | ( | ) |
Return the map of counterparty Ids.
Definition at line 190 of file postprocess.hpp.
const vector< Real > & tradeEPE | ( | const string & | tradeId | ) |
Return trade level Expected Positive Exposure evolution.
Definition at line 594 of file postprocess.cpp.
const vector< Real > & tradeENE | ( | const string & | tradeId | ) |
Return trade level Expected Negative Exposure evolution.
Definition at line 599 of file postprocess.cpp.
const vector< Real > & tradeEE_B | ( | const string & | tradeId | ) |
Return trade level Basel Expected Exposure evolution.
Definition at line 604 of file postprocess.cpp.
const Real & tradeEPE_B | ( | const string & | tradeId | ) |
Return trade level Basel Expected Positive Exposure evolution.
Definition at line 608 of file postprocess.cpp.
const vector< Real > & tradeEEE_B | ( | const string & | tradeId | ) |
Return trade level Effective Expected Exposure evolution.
Definition at line 612 of file postprocess.cpp.
const Real & tradeEEPE_B | ( | const string & | tradeId | ) |
Return trade level Effective Expected Positive Exposure evolution.
Definition at line 616 of file postprocess.cpp.
const vector< Real > & tradePFE | ( | const string & | tradeId | ) |
Return trade level Potential Future Exposure evolution.
Definition at line 620 of file postprocess.cpp.
const vector< Real > & netEPE | ( | const string & | nettingSetId | ) |
Return Netting Set Expected Positive Exposure evolution.
Definition at line 624 of file postprocess.cpp.
const vector< Real > & netENE | ( | const string & | nettingSetId | ) |
Return Netting Set Expected Negative Exposure evolution.
Definition at line 630 of file postprocess.cpp.
const vector< Real > & netEE_B | ( | const string & | nettingSetId | ) |
Return Netting Set Basel Expected Exposure evolution.
Definition at line 650 of file postprocess.cpp.
const Real & netEPE_B | ( | const string & | nettingSetId | ) |
Return Netting Set Basel Expected Positive Exposure evolution.
Definition at line 654 of file postprocess.cpp.
const vector< Real > & netEEE_B | ( | const string & | nettingSetId | ) |
Return Netting Set Effective Expected Exposure evolution.
Definition at line 658 of file postprocess.cpp.
const Real & netEEPE_B | ( | const string & | nettingSetId | ) |
Return Netting Set Effective Expected Positive Exposure evolution.
Definition at line 662 of file postprocess.cpp.
const vector< Real > & netPFE | ( | const string & | nettingSetId | ) |
Return Netting Set Potential Future Exposure evolution.
Definition at line 666 of file postprocess.cpp.
const vector< Real > & expectedCollateral | ( | const string & | nettingSetId | ) |
Return the netting set's expected collateral evolution.
Definition at line 670 of file postprocess.cpp.
const vector< Real > & colvaIncrements | ( | const string & | nettingSetId | ) |
Return the netting set's expected COLVA increments through time.
Definition at line 674 of file postprocess.cpp.
const vector< Real > & collateralFloorIncrements | ( | const string & | nettingSetId | ) |
Return the netting set's expected Collateral Floor increments through time.
Definition at line 678 of file postprocess.cpp.
const vector< Real > & allocatedTradeEPE | ( | const string & | tradeId | ) |
Return the trade EPE, allocated down from the netting set level.
Definition at line 682 of file postprocess.cpp.
const vector< Real > & allocatedTradeENE | ( | const string & | tradeId | ) |
Return trade ENE, allocated down from the netting set level.
Definition at line 688 of file postprocess.cpp.
vector< Real > netCvaHazardRateSensitivity | ( | const string & | nettingSetId | ) |
Return Netting Set CVA Hazard Rate Sensitivity vector.
Definition at line 636 of file postprocess.cpp.
vector< Real > netCvaSpreadSensitivity | ( | const string & | nettingSetId | ) |
Return Netting Set CVA Spread Sensitivity vector.
Definition at line 643 of file postprocess.cpp.
const std::map< std::string, std::vector< QuantLib::Real > > & netCvaSpreadSensitivity | ( | ) | const |
Real tradeCVA | ( | const string & | tradeId | ) |
Return trade (stand-alone) CVA.
Definition at line 694 of file postprocess.cpp.
Real tradeDVA | ( | const string & | tradeId | ) |
Return trade (stand-alone) DVA.
Definition at line 698 of file postprocess.cpp.
Real tradeMVA | ( | const string & | tradeId | ) |
Return trade (stand-alone) MVA.
Definition at line 702 of file postprocess.cpp.
Real tradeFBA | ( | const string & | tradeId | ) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment)
Definition at line 706 of file postprocess.cpp.
Real tradeFCA | ( | const string & | tradeId | ) |
Return trade (stand-alone) FCA (Funding Cost Adjustment)
Definition at line 710 of file postprocess.cpp.
Real tradeFBA_exOwnSP | ( | const string & | tradeId | ) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment) excluding own survival probability.
Definition at line 714 of file postprocess.cpp.
Real tradeFCA_exOwnSP | ( | const string & | tradeId | ) |
Return trade (stand-alone) FCA (Funding Cost Adjustment) excluding own survival probability.
Definition at line 718 of file postprocess.cpp.
Real tradeFBA_exAllSP | ( | const string & | tradeId | ) |
Return trade (stand-alone) FBA (Funding Benefit Adjustment) excluding both survival probabilities.
Definition at line 722 of file postprocess.cpp.
Real tradeFCA_exAllSP | ( | const string & | tradeId | ) |
Return trade (stand-alone) FCA (Funding Cost Adjustment) excluding both survival probabilities.
Definition at line 726 of file postprocess.cpp.
Real allocatedTradeCVA | ( | const string & | tradeId | ) |
Return allocated trade CVA (trade CVAs add up to netting set CVA)
Definition at line 793 of file postprocess.cpp.
Real allocatedTradeDVA | ( | const string & | tradeId | ) |
Return allocated trade DVA (trade DVAs add up to netting set DVA)
Definition at line 797 of file postprocess.cpp.
Real nettingSetCVA | ( | const string & | nettingSetId | ) |
Return netting set CVA.
Definition at line 730 of file postprocess.cpp.
Real nettingSetDVA | ( | const string & | nettingSetId | ) |
Return netting set DVA.
Definition at line 734 of file postprocess.cpp.
Real nettingSetMVA | ( | const string & | nettingSetId | ) |
Return netting set MVA.
Definition at line 738 of file postprocess.cpp.
Real nettingSetFBA | ( | const string & | nettingSetId | ) |
Return netting set FBA.
Definition at line 743 of file postprocess.cpp.
Real nettingSetFCA | ( | const string & | nettingSetId | ) |
Return netting set FCA.
Definition at line 748 of file postprocess.cpp.
Real nettingSetOurKVACCR | ( | const string & | nettingSetId | ) |
Return netting set KVA-CCR.
Definition at line 753 of file postprocess.cpp.
Real nettingSetTheirKVACCR | ( | const string & | nettingSetId | ) |
Return netting set KVA-CCR from counterparty perspective.
Definition at line 759 of file postprocess.cpp.
Real nettingSetOurKVACVA | ( | const string & | nettingSetId | ) |
Return netting set KVA-CVA.
Definition at line 765 of file postprocess.cpp.
Real nettingSetTheirKVACVA | ( | const string & | nettingSetId | ) |
Return netting set KVA-CVA from counterparty perspective.
Definition at line 771 of file postprocess.cpp.
Real nettingSetFBA_exOwnSP | ( | const string & | nettingSetId | ) |
Return netting set FBA excluding own survival probability.
Definition at line 777 of file postprocess.cpp.
Real nettingSetFCA_exOwnSP | ( | const string & | nettingSetId | ) |
Return netting set FCA excluding own survival probability.
Definition at line 781 of file postprocess.cpp.
Real nettingSetFBA_exAllSP | ( | const string & | nettingSetId | ) |
Return netting set FBA excluding both survival probabilities.
Definition at line 785 of file postprocess.cpp.
Real nettingSetFCA_exAllSP | ( | const string & | nettingSetId | ) |
Return netting set FCA excluding both survival probabilities.
Definition at line 789 of file postprocess.cpp.
Real nettingSetCOLVA | ( | const string & | nettingSetId | ) |
Return netting set COLVA.
Definition at line 801 of file postprocess.cpp.
Real nettingSetCollateralFloor | ( | const string & | nettingSetId | ) |
Return netting set Collateral Floor value.
Definition at line 805 of file postprocess.cpp.
const QuantLib::ext::shared_ptr< NPVCube > & cube | ( | ) |
Inspector for the input NPV cube (by trade, time, scenario)
Definition at line 297 of file postprocess.hpp.
const QuantLib::ext::shared_ptr< NPVCube > & cptyCube | ( | ) |
Inspector for the input Cpty cube (by name, time, scenario)
Definition at line 299 of file postprocess.hpp.
const QuantLib::ext::shared_ptr< NPVCube > & netCube | ( | ) |
Return the for the input NPV cube after netting and collateral (by netting set, time, scenario)
Definition at line 301 of file postprocess.hpp.
void exportDimEvolution | ( | ore::data::Report & | dimEvolutionReport | ) |
Return the dynamic initial margin cube (regression approach)
Write average (over samples) DIM evolution through time for all netting sets
Definition at line 809 of file postprocess.cpp.
void exportDimRegression | ( | const std::string & | nettingSet, |
const std::vector< Size > & | timeSteps, | ||
const std::vector< QuantLib::ext::shared_ptr< ore::data::Report > > & | dimRegReports | ||
) |
Write DIM as a function of sample netting set NPV for a given time step.
Definition at line 813 of file postprocess.cpp.
QuantLib::Real cvaSpreadSensiShiftSize | ( | ) |
const std::vector< Real > & creditMigrationUpperBucketBounds | ( | ) | const |
get the credit migration pnl distributions for each time step
Definition at line 314 of file postprocess.hpp.
const std::vector< std::vector< Real > > & creditMigrationCdf | ( | ) | const |
Definition at line 315 of file postprocess.hpp.
const std::vector< std::vector< Real > > & creditMigrationPdf | ( | ) | const |
Definition at line 316 of file postprocess.hpp.
|
protected |
Helper function to return the collateral account evolution for a given netting set.
|
protected |
Definition at line 335 of file postprocess.cpp.
|
protected |
Definition at line 545 of file postprocess.cpp.
|
protected |
Definition at line 330 of file postprocess.hpp.
|
protected |
Definition at line 331 of file postprocess.hpp.
|
protected |
Definition at line 332 of file postprocess.hpp.
|
protected |
Definition at line 333 of file postprocess.hpp.
|
protected |
Definition at line 334 of file postprocess.hpp.
|
protected |
Definition at line 335 of file postprocess.hpp.
|
protected |
Definition at line 336 of file postprocess.hpp.
|
protected |
Definition at line 337 of file postprocess.hpp.
|
protected |
Definition at line 338 of file postprocess.hpp.
|
protected |
Definition at line 340 of file postprocess.hpp.
|
protected |
Definition at line 340 of file postprocess.hpp.
|
protected |
Definition at line 341 of file postprocess.hpp.
|
protected |
Definition at line 341 of file postprocess.hpp.
|
protected |
Definition at line 342 of file postprocess.hpp.
|
protected |
Definition at line 342 of file postprocess.hpp.
|
protected |
Definition at line 343 of file postprocess.hpp.
|
protected |
Definition at line 343 of file postprocess.hpp.
|
protected |
Definition at line 343 of file postprocess.hpp.
|
protected |
Definition at line 343 of file postprocess.hpp.
|
protected |
Definition at line 344 of file postprocess.hpp.
|
protected |
Definition at line 344 of file postprocess.hpp.
|
protected |
Definition at line 348 of file postprocess.hpp.
|
protected |
Definition at line 349 of file postprocess.hpp.
|
protected |
Definition at line 350 of file postprocess.hpp.
|
protected |
Definition at line 351 of file postprocess.hpp.
|
protected |
Definition at line 352 of file postprocess.hpp.
|
protected |
Definition at line 353 of file postprocess.hpp.
|
protected |
Definition at line 355 of file postprocess.hpp.
|
protected |
Definition at line 356 of file postprocess.hpp.
|
protected |
Definition at line 357 of file postprocess.hpp.
|
protected |
Definition at line 358 of file postprocess.hpp.
|
protected |
Definition at line 359 of file postprocess.hpp.
|
protected |
Definition at line 360 of file postprocess.hpp.
|
protected |
Definition at line 361 of file postprocess.hpp.
|
protected |
Definition at line 362 of file postprocess.hpp.
|
protected |
Definition at line 363 of file postprocess.hpp.
|
protected |
Definition at line 364 of file postprocess.hpp.
|
protected |
Definition at line 365 of file postprocess.hpp.
|
protected |
Definition at line 366 of file postprocess.hpp.
|
protected |
Definition at line 367 of file postprocess.hpp.
|
protected |
Definition at line 368 of file postprocess.hpp.
|
protected |
Definition at line 369 of file postprocess.hpp.
|
protected |
Definition at line 370 of file postprocess.hpp.
|
protected |
Definition at line 371 of file postprocess.hpp.
|
protected |
Definition at line 372 of file postprocess.hpp.
|
protected |
Definition at line 374 of file postprocess.hpp.
|
protected |
Definition at line 375 of file postprocess.hpp.
|
protected |
Definition at line 376 of file postprocess.hpp.
|
protected |
Definition at line 377 of file postprocess.hpp.
|
protected |
Definition at line 378 of file postprocess.hpp.
|
protected |
Definition at line 379 of file postprocess.hpp.
|
protected |
Definition at line 380 of file postprocess.hpp.
|
protected |
Definition at line 381 of file postprocess.hpp.
|
protected |
Definition at line 382 of file postprocess.hpp.
|
protected |
Definition at line 383 of file postprocess.hpp.