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.String
calendar()
Retrieve the Date Adjustment CalendarLastFlowDates[]
csaEventDates()
Generate the Array of CSA Event Datesint[]
exposureDateArray()
Retrieve the Array of Exposure Datesstatic PathVariationMarginTrajectoryEstimator
Standard(int[] exposureDateArray, java.lang.String calendar, VariationMarginTradePaymentVertex variationMarginTradePaymentVertex, MarketPath marketPath, AndersenPykhtinSokolLag csaTimelineLag)
Generate a Standard Instance of PathVariationMarginTrajectoryEstimatorTradePayment[]
tradePaymentTrajectory()
Retrieve the Trade Payment Trajectoryboolean
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 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
-