Skip to main content
Position Limits Contract Conversion
Updated over a month ago

Limits from FIA Tech are always in the unit of equivalent parent futures contracts.

Contracts with the same parent contract are aggregated together.

To correctly manage this, FundApps must ensure all contracts have been converted into their parent futures equivalent.

This article explains how and what this means.

Child to Parent contract conversion

Options or Swaps have to be converted into their underlying Futures contract before they can be checked against a limit, as the limit are always based on parent futures contracts. In these examples, the Option or Swap is the child contract, and the Future is the parent.

A Futures contract must also be converted into its parent contract before being checked against a limit (e.g., a mini futures contract has to be converted into its full-sized equivalent). In this example, the mini futures contract is the child contract, and the full-sized futures is the parent.

We must convert the child contract converts into the parent contract.

FIA Tech tells us the parent contract of each child contract & the parent contract aggregate ratio that has to be applied when we convert the child into the parent as per below:

Untitled.png

To convert the child contract into a parent contract, the following steps occur:

  1. Convert the child symbol into the parent commodity symbol as defined by FIA Tech

  2. Multiply the child contract equivalent futures quantity by the contract aggregate ratio as set by FIA Tech (e.g., a mini future (child) when converted into a full-sized future (parent) may need to be converted with a ratio of 0.1).

  3. Populate the deliveryMonth of the parent futures equivalent contract with the underlying component’s deliveryMonth. If the underlying component does not have a deliveryMonth, use the deliveryMonth of the child contract instrument.

Example 1: Child contract the same as parent contract

Untitled__1_.png

Client holds 100 Crude Oil Futures contracts (B).

FIA Tech tells us the parent contract is also B, with an aggregate ratio of 1:1.

FA converts B into B with a ratio of 1:1.

Output. 100 B futures equivalent are compared to the limit

Example 2: Child contract not the same as parent contract. The aggregate ratio is 1:1

Untitled__2_.png

The client holds 100 Crude Oil Options on Futures contracts (BO).

FIA Tech tells us the parent contract is B with an aggregate ratio of 1:1.

FA converts BO into B with a ratio of 1:1.

Output. 100 B futures equivalent are compared to the limit

Example 3: Child contract not the same as parent contract. Aggregate ratio is 10:1

Untitled__3_.png

Client holds 100 Bovespa Mini (WIN) Futures contracts.

FIA Tech tells us the parent contract is IND with a ratio of 10:1 (WIN:IND)

FA converts WIN to IND Futures equivalent with a ratio of 10:1

Output: 10 IND futures equivalents are compared to the limit

Example 4: Child contract not the same as parent contract. The aggregate ratio is 1:1. DeliveryMonth of the child contract is not the same as the parent contract.

Client holds 100 Crude Oil Options on Futures contracts (BO)

The options exercised in Feb 2023 and convert into B Futures contract with a Mar 2023 DeliveryMonth.

FIA Tech tells us the parent contract is B with an aggregate ratio of 1:1.

FA convert BO into futures equivalent of B with a ratio of 1:1 and the equivalent future has a deliveryMonth of Mar 2023.

Output. 100 B futures equivalent with a deliveryMonth of Mar 2023 are compared to the limit.

Population of DeliveryMonth when converting into Futures Equivalent

When FundApps convert the child contract into the parent contract, the parent contract will take the DeliveryMonth as specified by the customer in the underlying instrument in their positions file.

The identification of the parent contract symbol is determined using the FIA Tech data but deliveryMonth is determined by data provided by the client. If the underlying instrument provided by the customer does not have a DeliveryMonth specified then the deliveryMonth of the child contract (top instrument in client position file) would be used.

Example 1: Option on Future where Option DeliveryMonth ≠ Future DeliveryMonth

<Option InstrumentId="20" InstrumentName="AGRICULTURE - MILK CLASS III OPTIONS ON FUTURES" Market="XNYM" DeliveryMonth="2023-03" Delta="0.7" CommoditySymbol="OG" IsCashSettled="false" CallOrPut="Call">
<Component InstrumentId="17" />
</Option>
<!-- CB -> CB : 1 Ratio | SingleMonth | SpotMonth : Net Long or Net Short -->
<Future InstrumentId="17" InstrumentName="AGRICULTURE - BUTTER CASH-SETTLED (DA) FUTURES" Market="XNSE" DeliveryMonth="2023-04" CommoditySymbol="ADANIENT" IsCashSettled="true">
<Component InstrumentId="101" />
</Future>
<Commodity InstrumentName="BUTTER CASH-SETTLED (DA) FUTURES" InstrumentId="101" />

Output: FA will convert the Option into an equivalent futures contract with a DeliveryMonth of “2023-04

Example 2: Future on commodity where underlying component doesn’t have a DeliveryMonth

<Future InstrumentId="17" InstrumentName="AGRICULTURE - BUTTER CASH-SETTLED (DA) FUTURES" Market="XNSE" DeliveryMonth="2023-04" CommoditySymbol="ADANIENT" IsCashSettled="true">
<Component InstrumentId="101" />
</Future>
<Commodity InstrumentName="BUTTER CASH-SETTLED (DA) FUTURES" InstrumentId="101" />

Output: FA will convert the Future into an equivalent futures contract with a DeliveryMonth of “2023-04”

For this to work as described, clients will need MLDs enabled in their environment, so FundApps do not collapse a construction such as Option → Future → Commodity, as we need instrument data from the Future level.

For customers relying on FundApps to convert the Consensys file into the FA format, FA will not have access to the underlying instrument data, as Consensys does not ask for this. Therefore the DeliveryMonth on the equivalent futures contract will always be the same as the child.

How does this show up in the UI?

Results shown on the dashboard are always in terms of the parent contract, as this is the unit of the limit.

In the asset table, however, you see the quantity held by the customer in each of the child contracts that contribute to the limit and the number of futures equivalents they equal.

In the asset table, you see the DeliveryMonth of the child contract, but the result, if applicable, will be based on the deliveryMonth of the futures equivalent.

Did this answer your question?