Exposure Groups
To meet IOSCO regulations, specifically the 2-way movement of Initial Margin and the Variation Margin currency silos, Calypso has a solution which breaks down contract level exposures into more granular Exposure Groups. This works by defining filters which consolidate underlying trades for a contract into distinct exposure groups or portfolios. These groups maintain their own exposures and their own previous collateral positions. The sum of the groups' exposures and the sum of the groups' positions form the required margin to the external counterparty.
There are two solutions that comprise the Exposure Group Functionality. One solution involves independent workflows for the exposure groups called Bilateral Exposure Group Functionality and the other involves the exposure groups exchanging cash or securities internally and depending on the parent contract for the workflow. This is called Buy Side Fund Distribution.
1. Bilateral Exposure Groups
The IOSCO framework mandates that Initial Margin be exchanged on a 2-way basis. This means that each party must exchange their portion of the Initial Margin requirement. The IOSCO framework also mandates that the Variation Margin be subject to Currency Silos. Currency Silos require that exposures be covered in their own currency, or a specific currency. For example, if a contract accepts EUR and USD transactions, the EUR exposure can be covered only with EUR collateral and the USD exposure can only be covered with USD collateral.
Using Bilateral Exposure Groups:
• | It is possible to create a single Initial Margin contract which has two underlying Exposure Groups. One Exposure Group represents the exposures/collateral that the PO has to pledge to the CP. The other Exposure Group represents the exposures/collateral the CP has to pledge to the PO. |
• | It is possible to create a singe Variation Margin contract which has multiple underlying Exposure Groups. Each Exposure group can accept trades of a certain currency (or multiple currencies for the Group Currency silo). Each Exposure Group would have its own eligibility set and its own haircut schedule to apply to appropriate cross currency haircuts. |
With Exposure Groups, each group can have its own Minimum Transfer Amount, Threshold and rounding convention. Each group can maintain its own workflow for payment and dispute purposes. This means that each group's workflows do not have to be synchronized together. For example, one Exposure Group can be in PRICED_PAY status while another is in EXPOSURE_AGREED status.
1.1 Contract Creation with Bilateral Exposure Groups
When designating a contract to use Exposure Groups , it is necessary to have Generate Margin Calls per Exposure Group selected in the Details panel of the contract. This field is selected by default in a margin call contract.
» | If this field is selected and there are NO Exposure Groups on the contract, Margin Calls will be generated at the contract level. |
» | If this field is selected, and there ARE Exposure Groups on the contract, Margin Calls are generated at the Exposure Group level. Workflow actions can be applied at the master contract level as well as the Exposure Group level. |
1.2 Bilateral Exposure Groups
Select the Exposure Groups panel of the margin call contract.
» | A currency is required to save an Exposure Group but a Filter is not. If a filter is not defined, all underlyings that belong to the main contract will be loaded at the Exposure Group level. |
» | Exposure Groups use a static data filter to determine which exposure trades will belong to the Exposure Group. |
» | After the margin call contract is saved with the Exposure Group, an Id is assigned to the Exposure Groups. |
» | It is possible to Duplicate an existing Exposure Group, delete a single group or delete all of the groups using the icons at the top of the Exposure Group panel. |
» | Each Exposure Group can have its own settings for Parties, Eligibility, Concentration & Limits , Triparty Details , Acadia Details and Attributes (Additional Information). At this time, if fields in the Exposure Group are not set, Calypso does NOT take the settings from the main contract. |
» | The Enable Allocation Process flag is available for selection when Distribute To Exposure Group on the Details panel has been selected. This flag indicates that the Exposure Group will be available for the Allocation Distribution process. |
1.3 Computing a Margin Call with Bilateral Exposure Groups
The process of computing a margin call with Bilateral Exposure Groups is the same as computing a margin call without Exposure Groups. Although margin calls are generated at the Exposure Group level the process of optimization, allocation, disputes, etc..., are the same as if the margin call was at the contract level.
Please refer to Calypso Collateral Management documentation for details on computing margin calls.
2. Buy Side Fund Distribution
In this solution, once individual exposure trades are sorted into the Exposure Groups, pricing the contract computes the Required Margin for the contract. A margin call is generated in a collateral book against an external counterparty based on the sum of the Exposure Group information. Calypso then computes each Exposure Group's ratio relative to the sum for the groups. It is possible to have this ratio computed based on information such as required margin, trade exposures or change in trade exposures. The metric used to determine the ratio is defined in the Collateral Context. The ratio is then used to allocate from or to each relevant Exposure Group book and Exposure Group position (Exposure Groups can also be considered Portfolios.)
Below is a basic set up example. Specifics can vary by client.
2.1 Book Designation
There needs to be designated books for the Margin Call position itself, as well as the Margin Call Exposure and the each of the Exposure Groups. It is helpful to use a similar naming convention to quickly identify the books. In the example below, the books are named as follows:
• | Margin Call Positions book: BuySide_MrgCall_Bk001 |
• | Exposures: BuySide_Exposure_Bk001 |
• | Portfolio Books: |
BuySide_ExpGrp_Bk001A
BuySide_ExpGrp_Bk001B
BuySide_ExpGrp_Bk001C
The Book window is accessed from Calypso Navigator by selecting Configuration > Books & Bundles > Trading Book.
2.2 Contract Creation with Buy Side Exposure Groups
Create a Margin Call contract that will serve as a Buy Side contract. In this example, three Exposure Groups have been created. This contract looks at the exposure book (specified above) to get the exposure.
» | In the Details panel of the Buy Side margin call contract, Distribute to Exposure Group must be selected. In order for this option to be displayed, de-select Generate Margin Calls per Exposure Group. This action displays Distribute to Exposure Group, which you are then able to select. |
» | When the Portfolio Based Distribution flag is selected, collateral is provided by the Exposure Groups rather than the PO's collateral being distributed to the Exposure Groups. |
» | When Portfolio Based Inclusion is selected, a Direction Based Inclusion flag becomes available for selection. When this flag is selected, if the net exposure of the Exposure Group is not in the same direction as the Master contract, it will be excluded from the distribution process. |
2.3 Exposure Groups
Exposure Groups use a static data filter to determine which exposure trades will belong to the Exposure Group. In this example, three Exposure Groups will be set up. One for USD, one for EUR and one for GBP. Below is an example of the static data filter that has been set up to be used by each of the Exposure Groups.
Exposure Groups are created in the Exposure Groups panel of the margin call contract.
» | In the Details panel of the Exposure Group, select the currency for the group and the static data filter to be used for the group. |
» | Collateral Distribution MTA and Collateral Distribution MTA Currency appear in the contract when DefaultCollateralDistributionMTA is added to the domain values in domainName. |
When defining the domain value, the MTA amount should be input in the Value field and the currency for the MTA should be input in the Comment field.
» | In the Parties panel, the selection of a Processing Org is used to drive the counterparty on the Clearing Distribution trade. Also, for reporting purposes, it is used to load the Allocation Entry report to retrieve all Exposure Groups for a given portfolio. |
» | Eligible Books for the Exposure Group correspond to each portfolio. |
» | In this example, Portfolio A is eligible to provide USD, EUR and GBP cash as collateral. This designation is made in the Eligible Currencies panel of each Exposure Group. |
2.4 Executing a Buy Side Exposure Group Allocation
Once individual trades are sorted into Exposure Groups based on the criteria of the contract and group, pricing the contract computes the Required Margin for the contract.
In the example below, the contract created above has been loaded. For the sake of simplicity and ease of illustration, three trades are in the contract, one in each of the exposure group currencies. Each trade will be sorted into its appropriate Exposure Group.
When a margin call is generated on the contract, normal Collateral procedure is followed for allocation.
2.5 Computing a Ratio
After this takes place, Calypso needs to compute each Exposure Group's ratio relative to the sum for the groups. It is possible to compute this ratio based on any of a variety of factors such as the required margin, the trade exposures or the change in trade exposures. The ratio is computed as:
(the chosen metric for the Exposure Group) / (the sum of the chosen metrics for all of the participating Exposure Groups)
Before the ratio can be generated, a collateral context needs to be set up to use the desired metric.
The Ratio calculation metric is selected in the Exposure Ratio Base field which is contained in the Pricing panel of the Collateral Context window. The options available for selection include pricer measures selected in the Product Definition panel as well as values available in the Margin Call Entry column chooser in Collateral Manager.
Once the Ratio metric has been added, the Exposure Group Ratio column can be added to show the ratio for each Exposure Group.
In this example, Global Required Margin is used as the ratio metric. To determine the ratio, the Global Required Margin of each Exposure Group is divided by the Global Required Margin of the participating Exposure Groups to determine the ratio of each group.
(For example for PortfolioA, -50 /-100 = .5)
If an Exposure Group has not been designated to be used in the allocation process, it will not have a ratio and the allocation ratio will be distributed among the other Exposure Groups.
2.6 Computing Margin Call
The next step is to generate a Margin Call trade and then generate the Clearing Distribution trades to distribute the positions to or from the Exposure Groups.
In the current example, the Inventory Position report for the parent and children has no position yet.
Now, the Margin Call trade has been booked:
The Inventory Position Report now contains information:
» | When there is a Dispute, the Exposure Group Global Required Margin is recomputed because the margin to pay has changed. This occurs specifically, when entering a value in the Cpty Amount field and clicking the Accept CP Amount or when entering an Agreed Amount. A user is required to apply an action to the entry after accepting the Counterparty amount. Once this action is applied, it is necessary to reprice the contract in order to re-compute the Exposure Group GRM values. |
2.7 Generating an Allocation Distribution
After the Margin Call trade is booked, the contract can be optimized for allocation distribution from or to the Exposure Groups. A specific Optimization Configuration must be set up for this purpose.
» | The Optimization Type must be AllocationDistribution. |
» | There are three solvers with this Optimization Type, Money-Value is used for cash margin call trades, Collateral-Quantity is used for allocation of security margin call trades and Targeted-Allocation can be used for either cash or securities. |
– | The Money-Value solver retrieves the ratios per participating Exposure Group and multiplies each participating Exposure Group's signed ratio by the signed value of the margin call trade. It then creates a Clearing Distribution trade, moving collateral between the Exposure Group contract/book and the parent contract/book. |
– | The Collateral-Quantity solver retrieves the total previous collateral quantity and the booked allocation quantity across all participating Exposure Groups and sums these values to come up with the total collateral quantity. The solver then multiplies each participating Exposure Group's signed ratio by the signed total collateral quantity to determine each participating Exposure Group's portion of the total collateral. The solver then subtracts this amount from the total previous collateral quantity for each participating Exposure Group to determine each Exposure Group's excess or deficit. The solver then uses this number as the quantity for each Clearing Distribution trade which moves the collateral between the Exposure Group contract/book and the parent contract/book. |
– | The Targeted-Allocation solver facilitates the distribution of collateral from the Exposure Groups to the mater contract. This differs from the other two solvers which distribute collateral from the master contract to the underlying Exposure Groups. This solver is used in conjunction with the Portfolio Based Distribution flag that is set in the Details panel of the Margin Call contract. |
The Margin-Filter constraint is the only constraint available and should be used with this optimizer. This constraint is used to determine which margin call trades will be distributed by this optimizer.
A static data filter is used to choose the appropriate margin call trades for the optimizer. At minimum, the static data filter needs two attributes
Product Type=MarginCall and Product Sub Type=MarginCall.XXXX.
Because the Money-Value Solver only deals correctly with cash margin call trades, the Product Sub Type used in a static data filter designed for the Money-Value solver should be MarginCall.COLLATERAL. Likewise, because the Collateral-Quantity solver only deals correctly with security margin call trades, the Product Sub Type that used with a static data filter designed for the Collateral-Quantity solver should be MarginCall.SECURITY.
After optimizing the contract using the optimizer configured above, a trade is generated for the Exposure Group PortfolioA contract.
NOTE: It is not possible to perform a manual allocation for the allocation distribution. The allocation must be done using a properly configured optimizer.
When delivering collateral for pools with a negative net balance, Net Exposure = Net Balance (negative value) + Previous Margin (positive value) + Newly Allocated Margin (additional positive value). The pools with the largest negative net exposures will receive back incremental collateral so that their resulting net exposures are less and less negative.
A domain value is used to control how much collateral is allocated at each step of the new algorithm. The amount desired should be entered in the ExposureGroupGrmComputationIncreaseAmount domain value. When this is not set, the default value of 1000 is used.
The actual Clearing Distribution trades are not generated until the DISTRIBUTE workflow action is executed on the contract. The DISTRIBUTE action may need to be added to the CollateralAction domain value and the DISTRIBUTED trade status may need to be added to the CollateralStatus domain value. The workflow also needs to use the Distribute workflow rule on the EXECUTED - DISTRIBUTE - DISTRIBUTED transition (Configuration > System > Domain Values).
2.8 Clearing Distribution Trade
After the DISTRIBUTE workflow action is executed, a Clearing Distribution trade is created between the parent contract and its Exposure Group.
In the trade created above, you can see that the Source Contract is always the parent contract and the Destination Contract is always the Exposure Group contract. This is the case regardless of who is paying and receiving. In our example, the parent contract received and the Exposure Group paid. This is because the Exposure Group lost money and therefore needs to pay the parent.
Trade Attributes for the Clearing Distribution trade.
Now, the Inventory Position shows that the Parent Contract is even and the Exposure Group contracts have paid the Parent.
» | It is possible to differentiate whether the Distribution Direction is a margin or a return from the Exposure Group’s perspective. Using the bookingType field, which reflects the parent margin call trade direction, and whether the Exposure Group is paying or receiving, the value of the Distribution Direction is computed as follows: |
– | Distribution Direction = RETURN if the PO is paying by either delivering new collateral or the PO is returning previous CP collateral back to the CP and the Exposure Group is receiving |
– | Distribution Direction = MARGIN if the PO is paying by either delivering new collateral or the PO is returning previous CP collateral back to the CP and the Exposure Group is paying |
– | Distribution Direction = RETURN if the PO is receiving by either the CP delivering new collateral or the CP returning previous PO collateral back to the PO and the Exposure Group is paying |
– | Distribution Direction = MARGIN if the PO is receiving by either delivering new collateral or the CP is returning previous PO collateral back to the PO and the Exposure Group is receiving |
Distribution Direction refers to the distribution of the Exposure Group. It needs to be added in the tradeKeyword domain value and to the allocation attributes in the Allocation panel of Collateral Manager.
» | A Clearing Distribution trade can generate a corresponding client transfer so that interest can be computed at the Exposure Group level. A keyword is set on the Collateral Distribution trade if the Cash Margin Call Account flag is enabled in the Eligible Currencies panel of the Margin Call contract. This indicates that a client transfer is needed. The keyword is called Generate Client Transfer and is set to True. |
» | It is possible to set different flow types on Clearing Distribution trades via a domain value called ClearingDistribution.flow.Type. There is one out-of-the-box value which is Collateral. |
3. Collateral Distribution via Scheduled Task
Collateral Distribution can be preformed via the COLLATERAL_MANAGEMENT scheduled task. Simply choose the buy side optimization configuration in the Attributes section.