Package org.drip.exposure.mpor
Class PathVariationMarginTrajectoryEstimator
java.lang.Object
org.drip.exposure.mpor.PathVariationMarginTrajectoryEstimator
public class PathVariationMarginTrajectoryEstimator
extends java.lang.Object
PathVariationMarginTrajectoryEstimator computes the Variation Margin Estimate/Posting from the
specified Dense Uncollateralized Exposures and Trade Payments along the specified Path Trajectory. The
References are:
- Burgard, C., and M. Kjaer (2013): Funding Costs, Funding Strategies Risk 23 (12) 82-87
- Burgard, C., and M. Kjaer (2014): In the Balance Risk 24 (11) 72-75
- 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 = Exposure Analytics
- Project = Exposure Group Level Collateralized/Uncollateralized Exposure
- Package = Margin Period Collateral Amount Estimation
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description PathVariationMarginTrajectoryEstimator(int[] exposureDateArray, java.lang.String calendar, java.util.Map<java.lang.Integer,java.lang.Double> variationMarginEstimateTrajectory, TradePayment[] tradePaymentTrajectory, AndersenPykhtinSokolLag csaTimelineLag)PathVariationMarginTrajectoryEstimator Constructor -
Method Summary
Modifier and Type Method Description java.lang.Stringcalendar()Retrieve the Date Adjustment CalendarLastFlowDates[]csaEventDates()Generate the Array of CSA Event Datesint[]exposureDateArray()Retrieve the Array of Exposure Datesstatic PathVariationMarginTrajectoryEstimatorStandard(int[] exposureDateArray, java.lang.String calendar, VariationMarginTradePaymentVertex variationMarginTradePaymentVertex, MarketPath marketPath, AndersenPykhtinSokolLag csaTimelineLag)Generate a Standard Instance of PathVariationMarginTrajectoryEstimatorTradePayment[]tradePaymentTrajectory()Retrieve the Trade Payment TrajectorybooleantradePaymentTrajectory(java.util.Map<java.lang.Integer,java.lang.Double> clientTradePaymentTrajectory, java.util.Map<java.lang.Integer,java.lang.Double> dealerTradePaymentTrajectory)Generate the Client and the Dealer Trade Payment Trajectoriesjava.util.Map<java.lang.Integer,VariationMarginTradeVertexExposure>trajectory()Retrieve the Variation Margin Trade Payment Exposure Trajectoryjava.util.Map<java.lang.Integer,java.lang.Double>variationMarginEstimateTrajectory()Retrieve the Variation Margin Estimate TrajectoryMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
PathVariationMarginTrajectoryEstimator
public PathVariationMarginTrajectoryEstimator(int[] exposureDateArray, java.lang.String calendar, java.util.Map<java.lang.Integer,java.lang.Double> variationMarginEstimateTrajectory, TradePayment[] tradePaymentTrajectory, AndersenPykhtinSokolLag csaTimelineLag) throws java.lang.ExceptionPathVariationMarginTrajectoryEstimator Constructor- Parameters:
exposureDateArray- Array of Exposure Datescalendar- The Date Adjustment CalendarvariationMarginEstimateTrajectory- The Variation Margin Estimate TrajectorytradePaymentTrajectory- The Trade Payment TrajectorycsaTimelineLag- The CSA Time-line Lag Parameters- Throws:
java.lang.Exception- Throws if the Inputs are Invalid
-
-
Method Details
-
Standard
public static final PathVariationMarginTrajectoryEstimator Standard(int[] exposureDateArray, java.lang.String calendar, VariationMarginTradePaymentVertex variationMarginTradePaymentVertex, MarketPath marketPath, AndersenPykhtinSokolLag csaTimelineLag)Generate a Standard Instance of PathVariationMarginTrajectoryEstimator- Parameters:
exposureDateArray- Array of Exposure Datescalendar- The Date Adjustment CalendarvariationMarginTradePaymentVertex- The Variation Margin Trade Payment Trajectory GeneratormarketPath- The Market PathcsaTimelineLag- The CSA Time-line Lag Parameters- Returns:
- The Standard Instance of PathVariationMarginTrajectoryEstimator
-
exposureDateArray
public int[] exposureDateArray()Retrieve the Array of Exposure Dates- Returns:
- The Array of Exposure Dates
-
calendar
public java.lang.String calendar()Retrieve the Date Adjustment Calendar- Returns:
- The Date Adjustment Calendar
-
variationMarginEstimateTrajectory
public java.util.Map<java.lang.Integer,java.lang.Double> variationMarginEstimateTrajectory()Retrieve the Variation Margin Estimate Trajectory- Returns:
- The Variation Margin Estimate Trajectory
-
tradePaymentTrajectory
Retrieve the Trade Payment Trajectory- Returns:
- The Trade Payment Trajectory
-
tradePaymentTrajectory
public boolean tradePaymentTrajectory(java.util.Map<java.lang.Integer,java.lang.Double> clientTradePaymentTrajectory, java.util.Map<java.lang.Integer,java.lang.Double> dealerTradePaymentTrajectory)Generate the Client and the Dealer Trade Payment Trajectories- Parameters:
clientTradePaymentTrajectory- The Client Trade Payment TrajectorydealerTradePaymentTrajectory- The Dealer Trade Payment Trajectory- Returns:
- TRUE - The Client and the Dealer Trade Payment Trajectories successfully generated
-
csaEventDates
Generate the Array of CSA Event Dates- Returns:
- Array of CSA Event Dates
-
trajectory
Retrieve the Variation Margin Trade Payment Exposure Trajectory- Returns:
- The Variation Margin Trade Payment Exposure Trajectory
-