Class LastFlowDates

java.lang.Object
org.drip.exposure.csatimeline.LastFlowDates

public class LastFlowDates
extends java.lang.Object
LastFlowDates holds the Last Client/Dealer Margin Flow and Trade Flow Dates using the Parameterization laid out in Andersen, Pykhtin, and Sokol (2017). 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
  • Anfuso, F., D. Aziz, P. Giltinan, and K Loukopoulus (2017): A Sound Modeling and Back-testing Framework for Forecasting Initial Margin Requirements https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2716279 eSSRN
  • BCBS (2015): Margin Requirements for Non-centrally Cleared Derivatives https://www.bis.org/bcbs/publ/d317.pdf
  • Pykhtin, M. (2009): Modeling Credit Exposure for Collateralized Counter-parties Journal of Credit Risk 5 (4) 3-27


Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • LastFlowDates

      public LastFlowDates​(JulianDate valuation, JulianDate clientVariationMarginPosting, JulianDate dealerVariationMarginPosting, JulianDate clientTradePayment, JulianDate dealerTradePayment, JulianDate spot, JulianDate variationMarginPeriodStart, JulianDate variationMarginPeriodEnd) throws java.lang.Exception
      LastFlowDates Constructor
      Parameters:
      valuation - The Margin Collateral Valuation Date
      clientVariationMarginPosting - The Last Client Variation Margin Posting (Observation) Date
      dealerVariationMarginPosting - The Last Dealer Variation Margin Posting (Observation) Date
      clientTradePayment - The Last Client Trade Payment (Settlement) Date
      dealerTradePayment - The Last Dealer Trade Payment (Settlement) Date
      spot - The Spot Date
      variationMarginPeriodStart - The Variation Margin Period Start Date
      variationMarginPeriodEnd - The Variation Margin Period End Date
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • SpotStandard

      public static final LastFlowDates SpotStandard​(JulianDate spot, AndersenPykhtinSokolLag andersenPykhtinSokolLag, java.lang.String calendarSet)
      Generate a LastFlowDates Instance from the Spot Date and the AndersenPykhtinSokolLag
      Parameters:
      spot - The Spot Date
      andersenPykhtinSokolLag - AndersenPykhtinSokolLag Instance
      calendarSet - The Business Day Calendar Set
      Returns:
      The LastFlowDates Instance
    • valuation

      public JulianDate valuation()
      Retrieve the Valuation Date
      Returns:
      The Valuation Date
    • clientVariationMarginPosting

      public JulianDate clientVariationMarginPosting()
      Retrieve the Last Client Variation Margin Posting (Observation) Date
      Returns:
      The Last Client Variation Margin Posting (Observation) Date
    • dealerVariationMarginPosting

      public JulianDate dealerVariationMarginPosting()
      Retrieve the Last Dealer Variation Margin Posting (Observation) Date
      Returns:
      The Last Dealer Variation Margin Posting (Observation) Date
    • clientTradePayment

      public JulianDate clientTradePayment()
      Retrieve the Last Client Trade Payment (Settlement) Date
      Returns:
      The Last Client Trade Payment (Settlement) Date
    • dealerTradePayment

      public JulianDate dealerTradePayment()
      Retrieve the Last Dealer Trade Payment (Settlement) Date
      Returns:
      The Last Dealer Trade Payment (Settlement) Date
    • spot

      public JulianDate spot()
      Retrieve the Spot Date
      Returns:
      The Spot Date
    • etd

      public JulianDate etd()
      Retrieve the ETD
      Returns:
      The ETD
    • variationMarginPeriodStart

      public JulianDate variationMarginPeriodStart()
      Retrieve the Variation Margin Period Start Date
      Returns:
      The Variation Margin Period Start Date
    • variationMarginPeriodEnd

      public JulianDate variationMarginPeriodEnd()
      Retrieve the Variation Margin Period End Date
      Returns:
      The Variation Margin Period End Date