Package org.drip.xva.definition
Class CloseOutBilateral
java.lang.Object
org.drip.xva.definition.CloseOut
org.drip.xva.definition.CloseOutBilateral
public class CloseOutBilateral extends CloseOut
CloseOutBilateral implements the (2002) ISDA Master Agreement Bilateral Close Out Scheme to be
applied to the MTM at the Dealer/Client Default. The References are:
- 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
- Cesari, G., J. Aquilina, N. Charpillon, X. Filipovic, G. Lee, and L. Manda (2009): Modeling, Pricing, and Hedging Counter-party Credit Exposure - A Technical Guide Springer Finance New York
- Gregory, J. (2009): Being Two-faced over Counter-party Credit Risk Risk 20 (2) 86-90
- 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 Definition - Close Out, Universe
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description CloseOutBilateral(double dealerSeniorFundingRecovery, double clientRecovery)
CloseOutBilateral Constructor -
Method Summary
Modifier and Type Method Description double
clientDefault(double uncollateralizedExposure, double collateralAmount)
Retrieve the Close-out from the Exposure on a specific Client Defaultdouble
clientRecovery()
Retrieve the Client Recovery Ratedouble
dealerDefault(double uncollateralizedExposure, double collateralAmount)
Retrieve the Close-out from the Exposure on Dealer Defaultdouble
dealerSeniorFundingRecovery()
Retrieve the Dealer Senior Funding Recovery Ratestatic CloseOutBilateral
Market(MarketVertex marketVertex)
Generate the Close Out Bilateral Instance from the Market VertexMethods inherited from class org.drip.xva.definition.CloseOut
clientDefault, dealerDefault
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
CloseOutBilateral
public CloseOutBilateral(double dealerSeniorFundingRecovery, double clientRecovery) throws java.lang.ExceptionCloseOutBilateral Constructor- Parameters:
dealerSeniorFundingRecovery
- The Dealer Senior Funding Recovery RateclientRecovery
- Client Recovery Rate- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
Market
Generate the Close Out Bilateral Instance from the Market Vertex- Parameters:
marketVertex
- The Market Vertex Instance- Returns:
- The Close Out Bilateral Instance from the Market Vertex
-
dealerSeniorFundingRecovery
public double dealerSeniorFundingRecovery()Retrieve the Dealer Senior Funding Recovery Rate- Returns:
- The Dealer Senior Funding Recovery Rate
-
clientRecovery
public double clientRecovery()Retrieve the Client Recovery Rate- Returns:
- The Client Recovery Rate
-
dealerDefault
public double dealerDefault(double uncollateralizedExposure, double collateralAmount) throws java.lang.ExceptionDescription copied from class:CloseOut
Retrieve the Close-out from the Exposure on Dealer Default- Specified by:
dealerDefault
in classCloseOut
- Parameters:
uncollateralizedExposure
- Group Uncollateralized ExposurecollateralAmount
- Group Collateral Amount- Returns:
- Close-out from the Exposure on Dealer Default
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
clientDefault
public double clientDefault(double uncollateralizedExposure, double collateralAmount) throws java.lang.ExceptionDescription copied from class:CloseOut
Retrieve the Close-out from the Exposure on a specific Client Default- Specified by:
clientDefault
in classCloseOut
- Parameters:
uncollateralizedExposure
- Group Uncollateralized ExposurecollateralAmount
- Group Collateral Amount- Returns:
- The Close-out from the Exposure on a specific Client Default
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-