Package org.drip.xva.gross
Class GroupPathExposureAdjustment
java.lang.Object
org.drip.xva.gross.GroupPathExposureAdjustment
- All Implemented Interfaces:
PathExposureAdjustment
public class GroupPathExposureAdjustment extends java.lang.Object implements PathExposureAdjustment
GroupPathExposureAdjustment cumulates the Exposures and the Adjustments across Multiple
Netting/Funding Groups on a Single Path Projection Run across multiple Counter Party Groups the constitute
a Book. The References are:
- Albanese, C., and L. Andersen (2014): Accounting for OTC Derivatives: Funding Adjustments and the Re-Hypothecation Option https://papers.ssrn.com/sol3/paper.cfm?abstract_id=2482955 eSSRN
- Burgard, C., and M. Kjaer (2013): Funding Strategies, Funding Costs Risk 24 (12) 82-87
- Burgard, C., and M. Kjaer (2014): PDE Representations of Derivatives with Bilateral Counter-party Risk and Funding Costs Journal of Credit Risk 7 (3) 1-19
- Burgard, C., and M. Kjaer (2017): Derivatives Funding, Netting, and Accounting https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2534011 eSSRN
- Piterbarg, V. (2010): Funding Beyond Discounting: Collateral Agreements and Derivatives Pricing Risk 21 (2) 97-102
- Module = Portfolio Core Module
- Library = XVA Analytics Library
- Project = Valuation Adjustments that account for Collateral, CC Credit/Debt and Funding Overhead
- Package = XVA Gross Adiabat Exposure Aggregation
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description GroupPathExposureAdjustment(MonoPathExposureAdjustment[] monoPathExposureAdjustmentArray)
GroupPathExposureAdjustment Constructor -
Method Summary
Modifier and Type Method Description MonoPathExposureAdjustment[]
adiabatGroupPaths()
Retrieve the Array of Counter Party Group Pathsdouble
bilateralCollateralAdjustment()
Compute Path Bilateral Collateral Adjustmentdouble
bilateralCreditAdjustment()
Compute Path Bilateral Credit Adjustmentdouble
bilateralDebtAdjustment()
Compute Path Bilateral Debt Adjustmentdouble
bilateralFundingValueAdjustment()
Compute Path Bilateral Funding Value Adjustmentdouble
collateralAdjustment()
Compute Path Collateral Adjustmentdouble
contraAssetDebtAdjustment()
Compute Path Contra-Asset Debt Adjustmentdouble
contraLiabilityCreditAdjustment()
Compute Path Contra-Liability Credit Adjustmentdouble
creditAdjustment()
Compute Path Credit Adjustmentdouble
debtAdjustment()
Compute Path Debt Adjustmentdouble
fundingBenefitAdjustment()
Compute Path Funding Benefit Adjustmentdouble
fundingCostAdjustment()
Compute Path Funding Cost Adjustmentdouble
fundingDebtAdjustment()
Compute Path Funding Debt Adjustmentdouble
fundingValueAdjustment()
Compute Path Funding Value Adjustmentdouble
symmetricFundingValueAdjustment()
Compute Path Symmetric Funding Value Adjustmentdouble
totalAdjustment()
Compute Path Total Adjustmentdouble
unilateralCollateralAdjustment()
Compute Path Unilateral Collateral Adjustmentdouble
unilateralCreditAdjustment()
Compute Path Unilateral Credit Adjustmentdouble
unilateralDebtAdjustment()
Compute Path Unilateral Debt Adjustmentdouble
unilateralFundingValueAdjustment()
Compute Path Unilateral Funding Value Adjustmentdouble[]
vertexCollateralizedExposure()
Retrieve the Array of Collateralized Vertex Exposuresdouble[]
vertexCollateralizedExposurePV()
Retrieve the Array of Collateralized Vertex Exposure PVsdouble[]
vertexCollateralizedNegativeExposure()
Retrieve the Array of Collateralized Negative Vertex Exposuresdouble[]
vertexCollateralizedNegativeExposurePV()
Retrieve the Array of Collateralized Negative Vertex Exposure PVdouble[]
vertexCollateralizedPositiveExposure()
Retrieve the Array of Collateralized Positive Vertex Exposuresdouble[]
vertexCollateralizedPositiveExposurePV()
Retrieve the Array of Collateralized Positive Vertex Exposure PVsJulianDate[]
vertexDates()
Retrieve the Array of the Vertex Anchor Datesdouble[]
vertexFundingExposure()
Retrieve the Array of Vertex Funding Exposuresdouble[]
vertexFundingExposurePV()
Retrieve the Array of Vertex Funding Exposure PVsdouble[]
vertexUncollateralizedExposure()
Retrieve the Array of Uncollateralized Vertex Exposuresdouble[]
vertexUncollateralizedExposurePV()
Retrieve the Array of Uncollateralized Vertex Exposure PVdouble[]
vertexUncollateralizedNegativeExposure()
Retrieve the Array of Uncollateralized Vertex Negative Exposuresdouble[]
vertexUncollateralizedNegativeExposurePV()
Retrieve the Array of Uncollateralized Vertex Negative Exposure PVdouble[]
vertexUncollateralizedPositiveExposure()
Retrieve the Array of Uncollateralized Positive Vertex Exposuresdouble[]
vertexUncollateralizedPositiveExposurePV()
Retrieve the Array of Uncollateralized Positive Vertex Exposure PVMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
GroupPathExposureAdjustment
public GroupPathExposureAdjustment(MonoPathExposureAdjustment[] monoPathExposureAdjustmentArray) throws java.lang.ExceptionGroupPathExposureAdjustment Constructor- Parameters:
monoPathExposureAdjustmentArray
- Array of Single Counter Party Path Exposure Adjustments- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
adiabatGroupPaths
Retrieve the Array of Counter Party Group Paths- Returns:
- Array of Counter Party Group Paths
-
vertexDates
Description copied from interface:PathExposureAdjustment
Retrieve the Array of the Vertex Anchor Dates- Specified by:
vertexDates
in interfacePathExposureAdjustment
- Returns:
- The Array of the Vertex Anchor Dates
-
vertexCollateralizedExposure
public double[] vertexCollateralizedExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Vertex Exposures- Specified by:
vertexCollateralizedExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Vertex Exposures
-
vertexCollateralizedExposurePV
public double[] vertexCollateralizedExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Vertex Exposure PVs- Specified by:
vertexCollateralizedExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Vertex Exposure PVs
-
vertexUncollateralizedExposure
public double[] vertexUncollateralizedExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Vertex Exposures- Specified by:
vertexUncollateralizedExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Vertex Exposures
-
vertexUncollateralizedExposurePV
public double[] vertexUncollateralizedExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Vertex Exposure PV- Specified by:
vertexUncollateralizedExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Vertex Exposure PV
-
vertexCollateralizedPositiveExposure
public double[] vertexCollateralizedPositiveExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Positive Vertex Exposures- Specified by:
vertexCollateralizedPositiveExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Positive Vertex Exposures
-
vertexCollateralizedPositiveExposurePV
public double[] vertexCollateralizedPositiveExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Positive Vertex Exposure PVs- Specified by:
vertexCollateralizedPositiveExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Positive Vertex Exposure PVs
-
vertexUncollateralizedPositiveExposure
public double[] vertexUncollateralizedPositiveExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Positive Vertex Exposures- Specified by:
vertexUncollateralizedPositiveExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Positive Vertex Exposures
-
vertexUncollateralizedPositiveExposurePV
public double[] vertexUncollateralizedPositiveExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Positive Vertex Exposure PV- Specified by:
vertexUncollateralizedPositiveExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Positive Vertex Exposure PV
-
vertexCollateralizedNegativeExposure
public double[] vertexCollateralizedNegativeExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Negative Vertex Exposures- Specified by:
vertexCollateralizedNegativeExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Negative Vertex Exposures
-
vertexCollateralizedNegativeExposurePV
public double[] vertexCollateralizedNegativeExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Collateralized Negative Vertex Exposure PV- Specified by:
vertexCollateralizedNegativeExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Collateralized Negative Vertex Exposure PV
-
vertexUncollateralizedNegativeExposure
public double[] vertexUncollateralizedNegativeExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Vertex Negative Exposures- Specified by:
vertexUncollateralizedNegativeExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Vertex Negative Exposures
-
vertexUncollateralizedNegativeExposurePV
public double[] vertexUncollateralizedNegativeExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Uncollateralized Vertex Negative Exposure PV- Specified by:
vertexUncollateralizedNegativeExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Uncollateralized Vertex Negative Exposure PV
-
vertexFundingExposure
public double[] vertexFundingExposure()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Vertex Funding Exposures- Specified by:
vertexFundingExposure
in interfacePathExposureAdjustment
- Returns:
- The Array of Vertex Funding Exposures
-
vertexFundingExposurePV
public double[] vertexFundingExposurePV()Description copied from interface:PathExposureAdjustment
Retrieve the Array of Vertex Funding Exposure PVs- Specified by:
vertexFundingExposurePV
in interfacePathExposureAdjustment
- Returns:
- The Array of Vertex Funding Exposures PVs
-
unilateralCollateralAdjustment
public double unilateralCollateralAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Unilateral Collateral Adjustment- Specified by:
unilateralCollateralAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Unilateral Collateral Adjustment
-
bilateralCollateralAdjustment
public double bilateralCollateralAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Bilateral Collateral Adjustment- Specified by:
bilateralCollateralAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Bilateral Collateral Adjustment
-
collateralAdjustment
public double collateralAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Collateral Adjustment- Specified by:
collateralAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Collateral Adjustment
-
unilateralCreditAdjustment
public double unilateralCreditAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Unilateral Credit Adjustment- Specified by:
unilateralCreditAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Unilateral Credit Adjustment
-
bilateralCreditAdjustment
public double bilateralCreditAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Bilateral Credit Adjustment- Specified by:
bilateralCreditAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Bilateral Credit Adjustment
-
creditAdjustment
public double creditAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Credit Adjustment- Specified by:
creditAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Credit Adjustment
-
contraLiabilityCreditAdjustment
public double contraLiabilityCreditAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Contra-Liability Credit Adjustment- Specified by:
contraLiabilityCreditAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Contra-Liability Credit Adjustment
-
unilateralDebtAdjustment
public double unilateralDebtAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Unilateral Debt Adjustment- Specified by:
unilateralDebtAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Unilateral Debt Adjustment
-
bilateralDebtAdjustment
public double bilateralDebtAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Bilateral Debt Adjustment- Specified by:
bilateralDebtAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Bilateral Debt Adjustment
-
debtAdjustment
public double debtAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Debt Adjustment- Specified by:
debtAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Debt Adjustment
-
contraAssetDebtAdjustment
public double contraAssetDebtAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Contra-Asset Debt Adjustment- Specified by:
contraAssetDebtAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Contra-Asset Debt Adjustment
-
unilateralFundingValueAdjustment
public double unilateralFundingValueAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Unilateral Funding Value Adjustment- Specified by:
unilateralFundingValueAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Unilateral Funding Value Adjustment
-
bilateralFundingValueAdjustment
public double bilateralFundingValueAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Bilateral Funding Value Adjustment- Specified by:
bilateralFundingValueAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Bilateral Funding Value Adjustment
-
fundingValueAdjustment
public double fundingValueAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Funding Value Adjustment- Specified by:
fundingValueAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Funding Value Adjustment
-
fundingDebtAdjustment
public double fundingDebtAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Funding Debt Adjustment- Specified by:
fundingDebtAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Funding Debt Adjustment
-
fundingCostAdjustment
public double fundingCostAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Funding Cost Adjustment- Specified by:
fundingCostAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Funding Cost Adjustment
-
fundingBenefitAdjustment
public double fundingBenefitAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Funding Benefit Adjustment- Specified by:
fundingBenefitAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Funding Benefit Adjustment
-
symmetricFundingValueAdjustment
public double symmetricFundingValueAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Symmetric Funding Value Adjustment- Specified by:
symmetricFundingValueAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Symmetric Funding Value Adjustment
-
totalAdjustment
public double totalAdjustment()Description copied from interface:PathExposureAdjustment
Compute Path Total Adjustment- Specified by:
totalAdjustment
in interfacePathExposureAdjustment
- Returns:
- The Path Total Adjustment
-