US Futures Exchanges use of Omnibus Accounts

I’m designing an inbound FIX 4.4 API for a new US Futures Exchange. The question of the use of Omnibus accounts by a Clearing FCM has been raised.

The business case is that a non-clearing FCM has a single account at a clearing FCM (omnibus account). All the customer orders are sent to the Clearing FCM using this account. This is done so that the customer account information of the non-clearing FCM is not disclosed to the Clearing FCM. The clearing FCM can know the individual account numbers but that is all. The non-clearing FCM manages the allocation of the orders/trades into the individual customer accounts.

The hierarchy is that the Omnibus account is the “Parent Account” and the individual customer accounts of the non-clearing FCM are the “Child Accounts”.

I’m looking for guidance on how to represent this hierarchy in New Order Singles, Execution Reports, TCRs, etc.

I would like to have both account numbers (the Omnibus account and the Individual Account numbers) on the messages.

Is there a best practice or general recommendation? (again FIX 4.4)
Thanks,
Jim

Can you clarify this - does the clearer get

(a) the individual account number and individual account order quantity
or
(b) only the individual account number

?

(a) is rather like the staging workflow that, for example, FXAll, used to use for allowing a buy-side to stage a FIX order into the FXAll RFQ platform and then only show counterparties that were happy to trade with each specific counterparty.

I would also ask the question - how does the individual account get best execution - do they execute each account at the same average price or is this a lot-based algorithm with rounding errors?

John,
Thanks for the reply. I’ll try to clarify, There is an implied hierarchy between the individual customer account held at the non-clearing FCM and the single Omnibus account held at the Clearing FCM. The individual customer accounts can be thought of as sub-accounts or child accounts of the Omnibus Account. Orders originating at the non-clearing FCM can be sent to the exchange containing both the Omnibus Account Number and the Sub-account number. My question is if there is a recommended way to represent these related accounts (parent and sub-account) in FIX 4.4?

This is not a question of Best Execution or allocation. This is a situation very specific to U.S. Futures Markets.

@jamesdowns The clarification helps. There are probably several ways to go about this using the Parties component. I’m going to reference FIX Latest and if you’re implementing in FIX 4.4 you can always back-port the FIX Latest tags and enums to FIX 4.4.

As you know it all comes down to terminology and it seems you are providing some context in which the terms you’re using applies to, e.g. “omnibus held at the clearing FCM”. Then there is the perspective in which you’re writing your spec - who are the community of practice or user community involved. I’m going to have to make the assumption, based on your original post, that the spec is an exchange/clearinghouse spec in order to provide some context for my suggestions.

In the Parties component there are the following PartyRoles that could be considered:
83 = Clearing account
32 = Beneficiary
24 = Customer account
4 = Clearing firm
1 = Executing firm

There are also PartySubIDType values that could also be considered:
42 = Omnibus account
19 = Fund account name
22 = Securities account name
10 = Securities account number

If I were approaching this based on the limited information provided in the original post I’d probably do the following:

PartyRole=4 (clearing firm) and PartyID=
PartySubIDType=42 (Omnibus account), PartySubID=<the non-clearing FCM’s omnibus at the clearing FCM>
PartyRole=24 (customer account), PartyID=

The key for me was your comment “the customer account information of the non-clearing FCM is not disclosed to the Clearing FCM. The clearing FCM can know the individual account numbers but that is all.” which I interpret to mean that the custom account number is not an account at the clearing FCM per-se but provided to the clearing FCM by the non-clearing FCM as information only.

Then there is the question of whether there are more than on individual account numbers that would need to be included. Personally I do not see a reason to not send more than 1 instance of customer account role if the spec is clear on what this means.

That said, in the NewOrderSingle and ExecutionReport there is the PreAllocGrp. While you said the non-clearing FCM will do the allocation, it would be possible to simply use this component to just carry the individual customer accounts in the AllocAccount(79) field and nothing else (i.e. no allocated amounts). This would then remove the use of multiple instances of PartyRole=24.

The TCR is a bit more complicated as you have the TrdRptCapSideGrp as required and there are parties component both in the main level and side level. Is the implementation going to use a single-side or two-sided TCR? Is this sent by the exchange or clearinghouse? Who receives the TCR?

Another question for you, is the non-clearing FCM the executing broker?

Hope this helps somewhat.

Lisa,
Thank you for all this detailed explanation. Your advice is always spot on.
This specification is for a new US Futures Exchange.
Yes, the non-clearing FCM would indeed be the executing broker.
It keeps like the PartySubIDType = 42 really solves this for me. I’ll look at that more closely.
I’ll run with the information you provided.
Thank you,
Jim