Disseminating Market Data during Pre-Open

Imported from previous forum

[ original email was from Jeffrey Croft - jeff.croft@plusmarketsgroup.com ]
Would like to some general advice on how to properly use the MarketDataIncrmentalRefresh to carry market data during a pre-open phase such as ‘imbalance’ ‘indicative match price/vol’. A real-life example would be useful.
Thanks
Jeff

Pre-open typically has only top of book which can be uncrossed (bid and offer are displayed) or crossed (only indicative px/qty is shown). Bids and offers of an uncrossed book are no different than during regular trading, i.e. use MDEntryType 0=Bid and 1=Offer together with MDUpdateAction 0=New or 2=Delete to add or remove entries. If you also use MDPriceLevel (always 1 in this case) then you can use MDUpdateAction 5=Overlay to overwrite px/qty of bid and offer side.
For a crossed book you would use MDEntryType Q=Auction Clearing Price to give the indicative price with MDEntryPx, maybe also the currently executable qty with MDEntrySize. If you also want to show an imbalance then it depends how much information you want to disclose. SecurityTradingStatus can be used to simply indicate that there is an imbalance. With MDEntryType A=Imbalance and MDEntrySize you can convey the imbalance qty without saying on which side it is. Last not least, with MDEntryType 0=Bid or 1=Offer and QuoteCondition Z=Order Imbalance you can convey the imbalance qty as well as the side it is on. Some exchanges have a so-called orderbook balancing phase at the end of the opening auction to allow traders to take advantage of this imbalance by adding IOC/FOK orders that will not be resting on the book when the exchange switches to regular trading (continuous).
Hope this helps, it is certainly “real-life” and not just theory.
Regards,
Hanno.

Would like to some general advice on how to properly use the MarketDataIncrmentalRefresh to carry market data during a pre-open phase such as ‘imbalance’ ‘indicative match price/vol’. A real-life example would be useful.
Thanks
Jeff

[ original email was from Jeffrey Croft - jeff.croft@plusmarketsgroup.com ]
Thanks Hanno, this is just what I wanted. At the moment we are keeping it simple and will probably just publish orders as they come in but its likely that we will want to do some of the below in time.

Pre-open typically has only top of book which can be uncrossed (bid and offer are displayed) or crossed (only indicative px/qty is shown). Bids and offers of an uncrossed book are no different than during regular trading, i.e. use MDEntryType 0=Bid and 1=Offer together with MDUpdateAction 0=New or 2=Delete to add or remove entries. If you also use MDPriceLevel (always 1 in this case) then you can use MDUpdateAction 5=Overlay to overwrite px/qty of bid and offer side.
For a crossed book you would use MDEntryType Q=Auction Clearing Price to give the indicative price with MDEntryPx, maybe also the currently executable qty with MDEntrySize. If you also want to show an imbalance then it depends how much information you want to disclose. SecurityTradingStatus can be used to simply indicate that there is an imbalance. With MDEntryType A=Imbalance and MDEntrySize you can convey the imbalance qty without saying on which side it is. Last not least, with MDEntryType 0=Bid or 1=Offer and QuoteCondition Z=Order Imbalance you can convey the imbalance qty as well as the side it is on. Some exchanges have a so-called orderbook balancing phase at the end of the opening auction to allow traders to take advantage of this imbalance by adding IOC/FOK orders that will not be resting on the book when the exchange switches to regular trading (continuous).
Hope this helps, it is certainly “real-life” and not just theory.
Regards,
Hanno.

Would like to some general advice on how to properly use the MarketDataIncrmentalRefresh to carry market data during a pre-open phase such as ‘imbalance’ ‘indicative match price/vol’. A real-life example would be useful.
Thanks
Jeff

Quote from Bicentennial Man: “One is glad to be of service” :wink:

Thanks Hanno, this is just what I wanted. At the moment we are keeping it simple and will probably just publish orders as they come in but its likely that we will want to do some of the below in time.

Pre-open typically has only top of book which can be uncrossed (bid and offer are displayed) or crossed (only indicative px/qty is shown). Bids and offers of an uncrossed book are no different than during regular trading, i.e. use MDEntryType 0=Bid and 1=Offer together with MDUpdateAction 0=New or 2=Delete to add or remove entries. If you also use MDPriceLevel (always 1 in this case) then you can use MDUpdateAction 5=Overlay to overwrite px/qty of bid and offer side.
For a crossed book you would use MDEntryType Q=Auction Clearing Price to give the indicative price with MDEntryPx, maybe also the currently executable qty with MDEntrySize. If you also want to show an imbalance then it depends how much information you want to disclose. SecurityTradingStatus can be used to simply indicate that there is an imbalance. With MDEntryType A=Imbalance and MDEntrySize you can convey the imbalance qty without saying on which side it is. Last not least, with MDEntryType 0=Bid or 1=Offer and QuoteCondition Z=Order Imbalance you can convey the imbalance qty as well as the side it is on. Some exchanges have a so-called orderbook balancing phase at the end of the opening auction to allow traders to take advantage of this imbalance by adding IOC/FOK orders that will not be resting on the book when the exchange switches to regular trading (continuous).
Hope this helps, it is certainly “real-life” and not just theory.
Regards,
Hanno.

Would like to some general advice on how to properly use the MarketDataIncrmentalRefresh to carry market data during a pre-open phase such as ‘imbalance’ ‘indicative match price/vol’. A real-life example would be useful.
Thanks
Jeff

[ original email was from Jeffrey Croft - jeff.croft@plusmarketsgroup.com ]
Just noticed that MDEntryType Q=Auction Clearing is actually a FIX 5.0 field and MDUpdateAction 5=Overlay is SP1 so I guess we would have to import these enumerations

Thanks Hanno, this is just what I wanted. At the moment we are keeping it simple and will probably just publish orders as they come in but its likely that we will want to do some of the below in time.

Pre-open typically has only top of book which can be uncrossed (bid and offer are displayed) or crossed (only indicative px/qty is shown). Bids and offers of an uncrossed book are no different than during regular trading, i.e. use MDEntryType 0=Bid and 1=Offer together with MDUpdateAction 0=New or 2=Delete to add or remove entries. If you also use MDPriceLevel (always 1 in this case) then you can use MDUpdateAction 5=Overlay to overwrite px/qty of bid and offer side.
For a crossed book you would use MDEntryType Q=Auction Clearing Price to give the indicative price with MDEntryPx, maybe also the currently executable qty with MDEntrySize. If you also want to show an imbalance then it depends how much information you want to disclose. SecurityTradingStatus can be used to simply indicate that there is an imbalance. With MDEntryType A=Imbalance and MDEntrySize you can convey the imbalance qty without saying on which side it is. Last not least, with MDEntryType 0=Bid or 1=Offer and QuoteCondition Z=Order Imbalance you can convey the imbalance qty as well as the side it is on. Some exchanges have a so-called orderbook balancing phase at the end of the opening auction to allow traders to take advantage of this imbalance by adding IOC/FOK orders that will not be resting on the book when the exchange switches to regular trading (continuous).
Hope this helps, it is certainly “real-life” and not just theory.
Regards,
Hanno.

Would like to some general advice on how to properly use the MarketDataIncrmentalRefresh to carry market data during a pre-open phase such as ‘imbalance’ ‘indicative match price/vol’. A real-life example would be useful.
Thanks
Jeff