Class AndersenPykhtinSokolStretch

java.lang.Object
org.drip.exposure.regression.AndersenPykhtinSokolStretch

public class AndersenPykhtinSokolStretch
extends java.lang.Object
AndersenPykhtinSokolStretch generates the Regression Based Path Exposures off of the Pillar Vertexes using the Pykhtin (2009) Scheme. Eventual Unadjusted Variation Margin Calculation follows 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
  • 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
  • Piterbarg, V. (2010): Funding Beyond Discounting: Collateral Agreements and Derivatives Pricing Risk 21 (2) 97-102


Author:
Lakshmi Krishnamurthy
  • Constructor Summary

    Constructors
    Constructor Description
    AndersenPykhtinSokolStretch​(int[] sparseDateArray, double[] sparseExposureArray, R1ToR1[] sparseLocalVolatilityArray, TradePayment[] denseTradePaymentArray)
    AndersenPykhtinSokolStretch Constructor
  • Method Summary

    Modifier and Type Method Description
    double[] denseExposure​(double[] wanderTrajectory)
    Generate the Dense (Complete) Segment Exposures
    TradePayment[] denseTradePaymentArray()
    Retrieve the Dense Trade Payment Array
    int[] sparseDateArray()
    Retrieve the Sparse Exposure Date Array
    double[] sparseExposureArray()
    Retrieve the Sparse Exposure Array
    R1ToR1[] sparseLocalVolatilityArray()
    Retrieve the Sparse Local Volatility R1 To R1 Array

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • AndersenPykhtinSokolStretch

      public AndersenPykhtinSokolStretch​(int[] sparseDateArray, double[] sparseExposureArray, R1ToR1[] sparseLocalVolatilityArray, TradePayment[] denseTradePaymentArray) throws java.lang.Exception
      AndersenPykhtinSokolStretch Constructor
      Parameters:
      sparseDateArray - Array of Sparse Exposure Dates
      sparseExposureArray - Array of Sparse Exposures
      sparseLocalVolatilityArray - Array of Sparse Local Volatility R1 To R1 Functions
      denseTradePaymentArray - Array of Dense Trade Payments
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • sparseDateArray

      public int[] sparseDateArray()
      Retrieve the Sparse Exposure Date Array
      Returns:
      The Sparse Exposure Date Array
    • sparseExposureArray

      public double[] sparseExposureArray()
      Retrieve the Sparse Exposure Array
      Returns:
      The Sparse Exposure Array
    • sparseLocalVolatilityArray

      public R1ToR1[] sparseLocalVolatilityArray()
      Retrieve the Sparse Local Volatility R1 To R1 Array
      Returns:
      The Sparse Local Volatility R1 To R1 Array
    • denseTradePaymentArray

      public TradePayment[] denseTradePaymentArray()
      Retrieve the Dense Trade Payment Array
      Returns:
      The Dense Trade Payment Array
    • denseExposure

      public double[] denseExposure​(double[] wanderTrajectory)
      Generate the Dense (Complete) Segment Exposures
      Parameters:
      wanderTrajectory - The Wander Date Trajectory
      Returns:
      The Dense (Complete) Segment Exposures