This library is a C# implementation of the following Initial Margin
models for non-cleared derivatives transactions:
- Standard Initial Margin Model 2.1 (SIMM™ 2.1) developed by ISDA
- Schedule Initial Margin Model developed by BCBS
Both models can handle Post
and Collect
regulations through a worst-of approach and Initial Margin values can be calculated by role (Pledgor
and Secured
). Model mixtures are handled too, which means that a single dataset can define both SIMM™
and Schedule
data entities in order to produce two distinct Initial Margin values. On the top of that, the framework is compatible with Common Risk Interchange Format (CRIF™) files.
This library has been created for educational purposes. Users who are interested using the SIMM™
methodology for commercial activities must contact ISDA in order to validate the library output against a unit test and obtain a license.
InitialMargin is...
Easy-to-Deploy
: all what it requires is compliant input data, either in the form of aCRIF
file or as a runtime-generated list of data entities;Easy-to-Extend
: new initial margin calculation methodologies are easy to integrate into the library by extending the existing base classes;Easy-to-Maintain
: periodic updates to Initial Margin models are easy to integrate and require only minor changes to the library algorithms;Stable
: the library implements strong data validation routines and a very detailed exception handling framework.
The library is OS-agnostic (it has been developed under .NET Standard 2.0) and platform-agnostic (both x86 and x64 environments are supported). The project targets Visual Studio 2017.