Package org.drip.exposure.generator
Class NumeraireMPoR
java.lang.Object
org.drip.exposure.generator.NumeraireMPoR
- All Implemented Interfaces:
VariationMarginTradePaymentVertex
public class NumeraireMPoR extends java.lang.Object implements VariationMarginTradePaymentVertex
NumeraireMPoR estimates the MPoR Variation Margin and the Trade Payments for the generic Numeraire
off of the Realized Market Path. The References are:
- Andersen, L. B. G., M. Pykhtin, and A. Sokol (2017): Re-thinking Margin Period of Risk https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2902737 eSSRN
- Andersen, L. B. G., M. Pykhtin, and A. Sokol (2017): Credit Exposure in the Presence of Initial Margin https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2806156 eSSRN
- Albanese, C., and L. Andersen (2014): Accounting for OTC Derivatives: Funding Adjustments and the Re-Hypothecation Option https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2482955 eSSRN
- Burgard, C., and M. Kjaer (2017): Derivatives Funding, Netting, and Accounting https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2534011 eSSRN
- Pykhtin, M. (2009): Modeling Counter-party Credit Exposure in the Presence of Margin Agreements http://www.risk-europe.com/protected/michael-pykhtin.pdf
- Module = Portfolio Core Module
- Library = Exposure Analytics
- Project = Exposure Group Level Collateralized/Uncollateralized Exposure
- Package = Rates Stream Margin Period Exposure
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description NumeraireMPoR(LatentStateLabel latentStateLabel, double notional)
NumeraireMPoR Constructor -
Method Summary
Modifier and Type Method Description TradePayment[]
denseTradePaymentArray(int startDate, int endDate, MarketPath marketPath)
Estimate the Dense Exposure Vertex Date Trade Payment on all Dates from the specified Start to EndLatentStateLabel
latentStateLabel()
Retrieve the Latent State Labeldouble
notional()
Retrieve the NotionalTradePayment
tradePayment(int forwardDate, MarketPath marketPath)
Estimate the Exposure Vertex Date Trade Paymentdouble
variationMarginEstimate(int forwardDate, MarketPath marketPath)
Estimate the Vertex Date Variation Margin EstimateMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
NumeraireMPoR
public NumeraireMPoR(LatentStateLabel latentStateLabel, double notional) throws java.lang.ExceptionNumeraireMPoR Constructor- Parameters:
latentStateLabel
- The Latent State Labelnotional
- The Notional- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
notional
public double notional()Retrieve the Notional- Returns:
- The Notional
-
latentStateLabel
Retrieve the Latent State Label- Returns:
- The Latent State Label
-
variationMarginEstimate
public double variationMarginEstimate(int forwardDate, MarketPath marketPath) throws java.lang.ExceptionDescription copied from interface:VariationMarginTradePaymentVertex
Estimate the Vertex Date Variation Margin Estimate- Specified by:
variationMarginEstimate
in interfaceVariationMarginTradePaymentVertex
- Parameters:
forwardDate
- The Vertex DatemarketPath
- The Market Path- Returns:
- Exposure Date Variation Margin Estimate
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
tradePayment
Description copied from interface:VariationMarginTradePaymentVertex
Estimate the Exposure Vertex Date Trade Payment- Specified by:
tradePayment
in interfaceVariationMarginTradePaymentVertex
- Parameters:
forwardDate
- The Vertex DatemarketPath
- The Market Path- Returns:
- The Exposure Vertex Date Trade Payment
-
denseTradePaymentArray
Description copied from interface:VariationMarginTradePaymentVertex
Estimate the Dense Exposure Vertex Date Trade Payment on all Dates from the specified Start to End- Specified by:
denseTradePaymentArray
in interfaceVariationMarginTradePaymentVertex
- Parameters:
startDate
- The Start DateendDate
- The Start DatemarketPath
- The Market Path- Returns:
- The Dense Exposure Vertex Date Trade Payment Array
-