Introduction
This section outlines our interpretation of the SIMM variance-covariance methodology1 and describes the input data, calculations, and results.Quick overview
Summary of the aggregation steps:- Inputs:
- Read and process sensitivities - ,
- Compute vega risk (weight vega by vol) for Equity, Commodity, FX,
- Generate Curvature Risk Exposure CVR from vegas.
- Define aggregation levels - k and b:
- Derived Risk Factor - ,
- Derived Bucket - ,
- for each input sensitivity record.
- Compute Weighted sensitivity :
- Lookup concentration thresholds
- Compute concentration risk factor
- Assign risk weights
- Compute weighted sensitivity
- Bucket-level margin :
- Lookup risk factor correlations (and for rates)
- Compute inner correlation adjustment factor for non-IR risk classes
- Compute bucket-level margin
- Delta, Vega, BaseCorr, and Curvature margins for each risk class
- Look up cross-bucket correlation
- Compute for each bucket
- Compute inner correlation adjustment factor for IR risk classes
- Compute margins for each risk class and sensitivity type
- Compute risk class level margin (sum across sensitivity types)
- Compute product level margin (aggregate across risk classes using variance-covariance formula)
- Compute total SIMM requirement (sum across product classes)
Reading and processing sensitivities
Atoti ISDA-SIMM expects to receive trade-level sensitivities in CRIF format from the upstream risk engine and data management systems.Calculation Currency and FX Delta
The calculation currency is looked up for each netting set based on the netting set attributes. FX Delta exposures where qualifier matches the calculation currency do not contribute into Margin.Compute vol-weighted vega risk
This step is applicable for equity, fx, and commodity risk classes. Vol-weighted vega risk is computed as follows: where - summing across tenors.- HVR (Historical volatility ratio) - is set as a single value per RiskClass and is obtained via a lookup from the parameter set.
- Vega - is provided in the CRIF file.
- Volatility is computed as follows:
Generate Curvature Risk Exposure CVR from vegas
Curvature Risk Exposure is used for gamma effect calculation (approximation) and is denoted as , where i is for instrument (trade). CVR is maturity-weighted and volatility-weighted vega across tenors, where weights are defined as : Then, the curvature risk is computed as follows: Interest rate and credit vegas come already vol-weighted.Bucket and risk factor
This section describes Buckets and Risk Factors which are specific aggregation levels defined by the methodology. They are most probably different from the definition of buckets and risk factors for internal risk management.Derived risk factors
Section C1 specifies a certain definition of risk factors (subscriptDerived Bucket
Section C1 specifies the way sensitivities are grouped into Buckets - . Buckets are further used:- as a parameter for defining Risk Weight,
- as an aggregation level for Bucket-Level Margin.
- For interest rate risk class, bucket is currency delivered in the Qualifier field.
- For foreign exchange, all sensitivities are place into a single bucket.
- For risk type Risk_BaseCorr, all sensitivities are place into a single bucket.
- In all other cases: bucket is provided in the input file.
Weighted Sensitivities
Weighted sensitivities are computed for each input sensitivity record.Concentration Threshold
This step is not applicable for the curvature chains of calculations and for the base correlation. concentration threshold is looked up in the parameter set based on:
The currency risk group mapping is part of the parameter set configuration and must be provided for each Qualifier.
Concentration Risk Factor
This step is not applicable for the curvature chains of calculations, and for Risk_BaseCorr. Assume CR = 1. The formula is similar for all risk classes/sensitivity types: The is computed for each RiskType and bucket inside a netting set and product class. Interest Rate For Risk_IRCurve and Risk_Inflation, the CR_b is computed on the currency level, but does not include XCcy risk: For Risk_XCcyBasis CR = 1 (see para 7b). For Risk_IRVol and Risk_InflationVol, Equity, Commodity, and Foreign Exchange Credit spreadRisk Weights
Risk Weights lookup is defined per risk type. It is either based on a lookup of a combination of fields or a constant value.Formula for the Weighted Sensitivities
Once the risk weights, , are assigned, the weighted sensitivities are computed according to this general formula: Specific formula for each risk type:Bucket-Level Capital Charge
Weighted sensitivities netted at Risk Factor level are rolled up into Bucket Level Margin using a variance-covariance type formula.Risk Factors Correlation
For all pairs of risk factors in each bucket (see definitions above) we need to look up risk factor correlations from the parameter set. - are defined per risk class without a split onto delta and vega. We assume same for vega, as for delta. Interest Rate For all pairs of risk factors of the same curve currency:
Note the correlations for Risk_Inflation and Risk_XCcyBasis are for those sensitivities against all Risk_IRCurve sensitivities (within the same currency).
Equity, Commodity, Foreign exchange
For all risk factors inside a bucket:
Credit spread
For all risk factors inside a bucket:
Inner correlation adjustment factor
For some of the risk types, the inner correlation adjustment factor plays a role, otherwise assume is set at 1. Interest Rate For the risk types: Risk_IRCurve, Risk_Inflation, Risk_XCcyBasis, Risk_IRVol, Risk_InflationVol parameters, is set at 1. Non-Interest RateFormula for the Bucket-Level Capital Charge
Risk factor level Weighted Sensitivities and Curvature risk , together with Risk Factors Correlations feed the bucket-level margin formula, defined for interest rate as follows: For the non-interest rate risk classes delta and vega, excluding base correlation: Base correlation: Curvature chain:Delta, Vega, BaseCorr, and Curvature margins
Bucket level Margin are rolled up into risk class/sensitivity type level Margin using a variance-covariance type formula.Cross-Buckets Correlation
For the next aggregation step, we need to obtain cross-bucket correlations - denoted as .Capped Net Weighted Sensitivity
For each bucket, we also compute : The for the Residual bucket will not contribute into the Margin.Outer Correlation Adjustment Factor
This step is applicable only to the IR risk class. Delta The Delta margin calculation for interest rates uses this formula for the adjustment factor: For all other risk classes, . Vega The Vega margin calculation uses this formula for the adjustment factor: Curvature This step is not applicable. BaseCorr This step is not applicable.Formula for Delta, Vega, Curvature, and BaseCorr Margin
Delta, Vega, Curvature, and BaseCorr margins are computed for each ProductClass and RiskClass separately.Delta and Vega
The general formula for the sensitivity type margin is as follows: where - all buckets, excluding residual and - bucket-level margin for the residual bucket (if exists).Special cases
Please note that since all risk factors belong to a single bucket for these sensitivities, Margin is equal to bucket-level margin:Curvature
Theta
Compute theta and lambda: across non-residual buckets and for the residual bucket. The formula has the net CVR measure in nominator and gross CVR in denominator, where for the gross CVR the abs is taken at risk factor level. The formula is computed twice: first, it aggregates all buckets except residual, then it is applied to the residual bucket.Lambda
Compute lambda using theta for the non-residual buckets and for the residual bucket:Curvature margin partials
Compute similar to the delta margin calculation for each bucket: Compute Curvature Margin residual and Curvature margin non-res: The formula is computed twice: first, it aggregates all buckets except residual, then it is applied to the residual bucket.Curvature margins
Sum up the partials for the non-residual buckets and the residual bucket:Risk class level margin
Sum up Delta, Vega, BaseCorr, and Curvature margins to obtain risk class level margin.Product level margin
Roll up risk class margins using variance covariance formula to obtain product level margin: where parameter is looked up based on a pair of risk classes.Total SIMM margin
Finally, the SIMM margin for a netting set is computed as follows:Licensed from International Swaps and Derivatives Association, Inc., All Rights Reserved. Please note that your use of this ISDA SIMM(tm) service or product for calculating your firm’s initial margin pursuant to applicable regulations requires a license from the International Swaps and Derivatives Association, Inc. (ISDA), which may be obtained by contacting isdalegal@isda.org. Licensing the ISDA SIMM provides documentation and support required to properly implement and maintain the ISDA SIMM(tm). ↩︎