Dark Orders & Hidden Limit Orders

Imported from previous forum

Hi,

I have a couple of queries -

  1. What is the difference between Dark Orders and Hidden Limit Orders?

  2. How can Dark Orders be represented using FIX 4.2 and/or FIX 4.3?

Any help would appreciated.

Regards,

Prateek

I believe dark order are hidden, hence no basic difference. However, every marketplace is likely to have different rules on a detailed level.

You could use Display Instructions to model such orders, i.e. use a DisplayQty (1138) of zero to make them completely hidden. The fields for reserve orders are only part of FIX 5.0 and above but there are user-defined fields for prior versions. Check for DisplayQty (9276) or DisplaySize (5621, 6066, 9872).

Regards,
Hanno.

Hi,

I have a couple of queries -

  1. What is the difference between Dark Orders and Hidden Limit Orders?

  2. How can Dark Orders be represented using FIX 4.2 and/or FIX 4.3?

Any help would appreciated.

Regards,

Prateek

[ original email was from Ryan Pierce (FPL Technical Director) - ryan.pierce@fixprotocol.org ]
> You could use Display Instructions to model such orders, i.e. use a

DisplayQty (1138) of zero to make them completely hidden. The fields for
reserve orders are only part of FIX 5.0 and above but there are user-
defined fields for prior versions. Check for DisplayQty (9276) or
DisplaySize (5621, 6066, 9872).

Prior FIX versions did have standard fields of MaxFloor(111) and MaxShow (210, introduced in FIX 4.1) which are used for reserve orders. MaxFloor is used if there is one level of reserve, MaxShow is the second level of reserve if there is one.)

MaxFloor = 0 could be used for a dark/hidden order in older FIX versions; there’s no need to use user-defined fields.

You could use Display Instructions to model such orders, i.e. use a
DisplayQty (1138) of zero to make them completely hidden. The fields
for reserve orders are only part of FIX 5.0 and above but there are
user- defined fields for prior versions. Check for DisplayQty (9276)
or DisplaySize (5621, 6066, 9872).

Prior FIX versions did have standard fields of MaxFloor(111) and MaxShow
(210, introduced in FIX 4.1) which are used for reserve orders. MaxFloor
is used if there is one level of reserve, MaxShow is the second level of
reserve if there is one.)

MaxFloor = 0 could be used for a dark/hidden order in older FIX
versions; there’s no need to use user-defined fields.

Thanks, Ryan, for catching my error. I had already extinguished them from my mind. It begs the question why the UDFs were actually introduced by the submitters…

Ryan and Hanno,

Thanks for your suggestions.
I think I would be more comfortable using MaxFloor and MaxShow to convey the special properties of the Dark Order.
However, I am curious - how is a Dark Order represented in FIX 5.0 and above? In future, if I am to provide compatibility with FIX 5.0 as well, it would be handy to know this!

Regards and Thanks,

Prateek

You could use Display Instructions to model such orders, i.e. use a
DisplayQty (1138) of zero to make them completely hidden. The fields
for reserve orders are only part of FIX 5.0 and above but there are
user- defined fields for prior versions. Check for DisplayQty (9276)
or DisplaySize (5621, 6066, 9872).

Prior FIX versions did have standard fields of MaxFloor(111) and MaxShow
(210, introduced in FIX 4.1) which are used for reserve orders. MaxFloor
is used if there is one level of reserve, MaxShow is the second level of
reserve if there is one.)

MaxFloor = 0 could be used for a dark/hidden order in older FIX
versions; there’s no need to use user-defined fields.

[ original email was from Ryan Pierce (FPL Technical Director) - ryan.pierce@fixprotocol.org ]
> Thanks for your suggestions. I think I would be more comfortable using

MaxFloor and MaxShow to convey the special properties of the Dark Order.
However, I am curious - how is a Dark Order represented in FIX 5.0 and
above? In future, if I am to provide compatibility with FIX 5.0 as well,
it would be handy to know this!

MaxShow probably shouldn’t be used. It was introduced to allow multiple levels of reserve, e.g. MaxFloor is a quote posted to the public markets, MaxShow may be larger and is the amount sent around via IOIs to ECN subscribers. MaxFloor=0 sounds like what you need for older protocol versions.

Hanno listed, in his earlier posts, the new fields used in FIX 5.0 and above.