Class RiskFactorTenorSensitivity

java.lang.Object
org.drip.simm.product.RiskFactorTenorSensitivity

public class RiskFactorTenorSensitivity
extends java.lang.Object
RiskFactorTenorSensitivity holds the ISDA SIMM 2.0 Risk Factor Tenor Bucket Sensitivities. The References are:

  • 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., S. Caenazzo, and O. Frankel (2017): Regression Sensitivities for Initial Margin Calculations https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2763488 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
  • Caspers, P., P. Giltinan, R. Lichters, and N. Nowaczyk (2017): Forecasting Initial Margin Requirements - A Model Evaluation https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2911167 eSSRN
  • International Swaps and Derivatives Association (2017): SIMM v2.0 Methodology https://www.isda.org/a/oFiDE/isda-simm-v2.pdf




Author:
Lakshmi Krishnamurthy
  • Constructor Summary

    Constructors
    Constructor Description
    RiskFactorTenorSensitivity​(java.util.Map<java.lang.String,​java.lang.Double> sensitivityMap)
    RiskFactorTenorSensitivity Constructor
  • Method Summary

    Modifier and Type Method Description
    boolean addTenorDelta​(java.lang.String tenor, double sensitivity)
    Add the Tenor Sensitivity
    double cumulative()
    Generate the Cumulative Tenor Sensitivity
    double sensitivity​(java.lang.String tenor)
    Retrieve the Sensitivity for the Bucket Tenor
    java.util.Map<java.lang.String,​java.lang.Double> sensitivityMap()
    Retrieve the Map of Tenor Sensitivities
    java.util.Map<java.lang.String,​java.lang.Double> sensitivityMargin​(java.util.Map<java.lang.String,​java.lang.Double> sensitivityRiskWeightMap)
    Generate the Tenor Sensitivity Margin Map
    boolean tenorExists​(java.lang.String tenor)
    Indicate of the Sensitivity exists for the specified Tenor
    java.util.Set<java.lang.String> tenorSet()
    Retrieve the Set of Tenors

    Methods inherited from class java.lang.Object

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

    • RiskFactorTenorSensitivity

      public RiskFactorTenorSensitivity​(java.util.Map<java.lang.String,​java.lang.Double> sensitivityMap) throws java.lang.Exception
      RiskFactorTenorSensitivity Constructor
      Parameters:
      sensitivityMap - The Tenor Sensitivity Map
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • tenorSet

      public java.util.Set<java.lang.String> tenorSet()
      Retrieve the Set of Tenors
      Returns:
      The Set of Tenors
    • addTenorDelta

      public boolean addTenorDelta​(java.lang.String tenor, double sensitivity)
      Add the Tenor Sensitivity
      Parameters:
      tenor - The Tenor
      sensitivity - Sensitivity for the given Tenor
      Returns:
      TRUE - The Tenor Sensitivity successfully set
    • tenorExists

      public boolean tenorExists​(java.lang.String tenor)
      Indicate of the Sensitivity exists for the specified Tenor
      Parameters:
      tenor - The Tenor
      Returns:
      TRUE - Sensitivity exists for the specified Tenor
    • sensitivity

      public double sensitivity​(java.lang.String tenor) throws java.lang.Exception
      Retrieve the Sensitivity for the Bucket Tenor
      Parameters:
      tenor - The Tenor
      Returns:
      The Sensitivity corresponding to the Tenor
      Throws:
      java.lang.Exception - Thrown if the Input is Invalid
    • sensitivityMap

      public java.util.Map<java.lang.String,​java.lang.Double> sensitivityMap()
      Retrieve the Map of Tenor Sensitivities
      Returns:
      The Map of Tenor Sensitivities
    • cumulative

      public double cumulative()
      Generate the Cumulative Tenor Sensitivity
      Returns:
      The Cumulative Tenor Sensitivity
    • sensitivityMargin

      public java.util.Map<java.lang.String,​java.lang.Double> sensitivityMargin​(java.util.Map<java.lang.String,​java.lang.Double> sensitivityRiskWeightMap)
      Generate the Tenor Sensitivity Margin Map
      Parameters:
      sensitivityRiskWeightMap - The Tenor Sensitivity Risk Weight Map
      Returns:
      The Tenor Sensitivity Margin Map