Package org.drip.simm.foundation
Class CurvatureEstimatorResponseFunction
java.lang.Object
org.drip.simm.foundation.CurvatureEstimatorResponseFunction
- All Implemented Interfaces:
CurvatureEstimator
public class CurvatureEstimatorResponseFunction extends java.lang.Object implements CurvatureEstimator
CurvatureEstimatorResponseFunction estimates the Curvature Margin from the Curvature Sensitivities
using the Curvature Response Function. 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
- Construct the Cornish Fischer Instance of the Curvature Estimator
- CurvatureEstimatorResponseFunction Constructor
- Retrieve the Curvature Response Function
- Compute the SBA Margin from the Curvature Sensitivities
- Indicate if the Correlator is Quadratic
- Generate the Bucket Pair Curvature Variance Modulator
Module | Portfolio Core Module |
Library | Initial and Variation Margin Analytics |
Project | Initial Margin Analytics based on ISDA SIMM and its Variants |
Package | Foundation Utilities for ISDA SIMM |
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description CurvatureEstimatorResponseFunction(CurvatureResponse curvatureResponse)
CurvatureEstimatorResponseFunction Constructor -
Method Summary
Modifier and Type Method Description static CurvatureEstimatorResponseFunction
CornishFischer()
Construct the Cornish Fischer Instance of the Curvature EstimatorCurvatureResponse
curvatureResponse()
Retrieve the Curvature Response Functionboolean
isCorrelatorQuadratric()
Indicate if the Correlator is Quadraticdouble
margin(double cumulativeRiskFactorSensitivity, double cumulativeRiskFactorSensitivityPositive, double riskFactorSensitivityVariance)
Compute the SBA Margin from the Curvature Sensitivitiesdouble
varianceModulator(java.lang.String bucketKey1, double bucketVariance1, java.lang.String bucketKey2, double bucketVariance2)
Generate the Bucket Pair Curvature Variance ModulatorMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
CurvatureEstimatorResponseFunction
public CurvatureEstimatorResponseFunction(CurvatureResponse curvatureResponse) throws java.lang.ExceptionCurvatureEstimatorResponseFunction Constructor- Parameters:
curvatureResponse
- The Curvature Response Function- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
CornishFischer
Construct the Cornish Fischer Instance of the Curvature Estimator- Returns:
- The Cornish Fischer Instance of the Curvature Estimator
-
curvatureResponse
Retrieve the Curvature Response Function- Returns:
- The Curvature Response Function
-
margin
public double margin(double cumulativeRiskFactorSensitivity, double cumulativeRiskFactorSensitivityPositive, double riskFactorSensitivityVariance) throws java.lang.ExceptionCompute the SBA Margin from the Curvature Sensitivities- Specified by:
margin
in interfaceCurvatureEstimator
- Parameters:
cumulativeRiskFactorSensitivity
- Cumulative Risk Factor SensitivitycumulativeRiskFactorSensitivityPositive
- Cumulative Risk Factor Sensitivity PositiveriskFactorSensitivityVariance
- Risk Factor Sensitivity Variance- Returns:
- The SBA Margin
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
isCorrelatorQuadratric
public boolean isCorrelatorQuadratric()Indicate if the Correlator is Quadratic- Specified by:
isCorrelatorQuadratric
in interfaceCurvatureEstimator
- Returns:
- TRUE - The Correlator is Quadratic
-
varianceModulator
public double varianceModulator(java.lang.String bucketKey1, double bucketVariance1, java.lang.String bucketKey2, double bucketVariance2) throws java.lang.ExceptionGenerate the Bucket Pair Curvature Variance Modulator- Specified by:
varianceModulator
in interfaceCurvatureEstimator
- Parameters:
bucketKey1
- Bucket #1 KeybucketVariance1
- Bucket #1 VariancebucketKey2
- Bucket #2 KeybucketVariance2
- Bucket #2 Variance- Returns:
- The Bucket Pair Curvature Variance Modulator
- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-