PUBLIC COMMENT PERIOD – FIA PTWG Trade Reporting Proposal

Imported from previous forum

The Global Technical Committee has reviewed and preliminarily approved the FIA PTWG Trade Reporting Proposal. This proposal has been developed to provide a comprehensive set of business processes supported by the major Clearing entities in Europe and the United States. This document describes the proposed modifications to the Trade Report messages and message flows required to support all of the business processes and work flow by the CCPs.

The document now enters a public comment period in which public review and feedback is encouraged. Once the public comment period closes, the Global Technical Governance Board will meet to review public comments before final approval.

Please post feedback, comments, and questions as replies to this discussion thread.

A link to the proposal can be found at:
http://www.fixprotocol.org/documents/6145/FIA%20PTWG%20Trade%20Reporting%20Extensions.docx

The public comment period ends on December 8th, 2011.

The original TCR message has a critical limitation pertaining to average pricing of allocations. I think now might be a good time to correct it.

Most, but not all, of the allocation related fields and components are at the TrdCapRptSideGrp level, e.g. TradeAllocIndicator(826), AllocID(70), the TrdAllocGrp component, and the proposed TradeAllocGroupInstruction(TBD). This, I believe, is correct. Conceptually, allocations should be side-level. For a 2-sided trade, both sides could be allocated, each to a completely different firm.

Now the issue is that certain key fields for average price allocations are at the root message level. These include AvgPxIndicator(819) and AvgPxGroupID(1731). Of these, the former is an existing field, and the latter is a new field created by the recent Allocation Gap Analysis.

For a two sided trade report, with each side allocated, then AvgPxIndicator becomes ambiguous. If AvgPxIndicator = 1 or 2, it implies an average price trade. But does it apply to the buying side, the selling side, or both?

Likewise, AvgPxGroupID is really a side level attribute. Does a specified AvgPxGroupID apply to one side, or the other?

I suggest moving both AvgPxIndicator and AvgPxGroupID to the TrdCapRptSideGrp level. This will allow unambiguous average pricing of each side of a trade, individually.

I see the dilemma. Average pricing takes place in the context of a trading party, i.e. across a number of trades of an executing firm. The root level of the TCR has a different viewpoint, i.e. the trade event. Therefore fields such as LastPx and LastQty are on the root level as a trade will not occur unless the two trade parties agree on a single price and a single quantity. Grouping of trades only happens on the level of “half-trades” with a single party.
The fields AvgPx,AvgPxIndicator and AvgPxGroupID work fine on the root level as long as NoSides=1. That will suffice for most of the current workflows. It will not suffice for flows where an entire trade (with both sides) is sent somewhere and needs to carry average pricing information which may be different for both sides. It could also be that one side is subject to average pricing and the other is not. The question is hence what these workflows are. The typical interaction between the trading party and the clearinghouse would limit the visibility of trades to the side of the trading party. However, communication between clearinghouses may need to provide complete trades and the average price information for each side of the trade.
It therefore may be better to add side level fields for average pricing instead of moving existing fields into the side level which may break existing applications. It would be great to hear from other forum readers that use average pricing.
Thank you,
Hanno.

The original TCR message has a critical limitation pertaining to average pricing of allocations. I think now might be a good time to correct it.

Most, but not all, of the allocation related fields and components are at the TrdCapRptSideGrp level, e.g. TradeAllocIndicator(826), AllocID(70), the TrdAllocGrp component, and the proposed TradeAllocGroupInstruction(TBD). This, I believe, is correct. Conceptually, allocations should be side-level. For a 2-sided trade, both sides could be allocated, each to a completely different firm.

Now the issue is that certain key fields for average price allocations are at the root message level. These include AvgPxIndicator(819) and AvgPxGroupID(1731). Of these, the former is an existing field, and the latter is a new field created by the recent Allocation Gap Analysis.

For a two sided trade report, with each side allocated, then AvgPxIndicator becomes ambiguous. If AvgPxIndicator = 1 or 2, it implies an average price trade. But does it apply to the buying side, the selling side, or both?

Likewise, AvgPxGroupID is really a side level attribute. Does a specified AvgPxGroupID apply to one side, or the other?

I suggest moving both AvgPxIndicator and AvgPxGroupID to the TrdCapRptSideGrp level. This will allow unambiguous average pricing of each side of a trade, individually.

My original request was to move AvgPxIndicator and AvgPxGroupID from the root to the side level.

Hanno asked me to consider whether AvgPx should be cloned to exist at the side level too. After some consideration, I would think so. A Trade Capture Report can be used to show a trade between two orders. It is possible that the trade is only a partial fill for one of the two orders, and that the order could have multiple trades at different trade prices. So it follows that each side of the Trade Capture Report could have a different AvgPx.

The Global Technical Committee has reviewed the comments received during the public comment period for the FIA PTWG Trade Reporting Proposal that ended December 8th, 2011. This proposal has been developed to provide a comprehensive set of business processes supported by the major Clearing entities in Europe and the United States. This document describes the proposed modifications to the Trade Report messages and message flows required to support all of the business processes and work flow by the CCPs.

Based on the public comments received, the proposal was extended to include average pricing fields on the side level of the TradeCaptureReport message. Questions has been raised and is herewith put out for public comment as to whether the existing average pricing fields on the root level (6=AvgPx, 819=AvgPxIndicator) should be deprecated. The existing field AvgPxGroupID (1731) would then not be added to the root level as currently proposed in the gap analysis.

Deprecation does not lead to a removal of the fields but their usage on the TradeCaptureReport message would no longer be the recommended practice for average pricing. Information about average pricing is recommended to always be on the side level as it is unlikely to equally apply to both sides of a trade. The current root level fields work for single sided trades but so would side level fields as well.

The document now enters a second public comment period in which public review and feedback is encouraged on the issue of average pricing. Once the second public comment period closes, the Global Technical Governance Board will meet to review public comments before final approval.

Please post feedback, comments, and questions as replies to this discussion thread.

A link to the proposal can be found at:

http://fixprotocol.org/documents/6145/FPL_Gap_Analysis_FIAPTWG_TradeReporting_v1-4.docx

The second public comment period ends on December 31st, 2011.