IceBerg Orders

Hello Everybody,

I am trying to map an iceBerg order to FIX format and trying to understand Remaining Quantity (including hidden) that needs to be captured? Can this be equated with LeavesQty in ER?

Hi There,

In my past experience, we have used the leaves qty(151) to show the remaining trading quantity (including hidden) along with display quantity (1138 from FIX 5.0 SP2) to show the visible quantity in the book, Cumqty (14) to show the total order field quantity and Order quantity(38) to show the original order quantity.

Regards
Willson Gour

1 Like

@abdemanaf46, the standard formula OrderQty(38) = CumQty(14) + LeavesQty(151) is no different for iceberg orders (FIX calls them reserve orders). As explained by @willson, you only have additional fields such as DisplayQty(1138) that are specific to iceberg orders. The order submitter needs to keep track of the remaining visible quantity to know when a refresh will occur (rules depend on the fields in the DisplayInstruction component).

Thanks @willson and @hanno.klein

So, we will capture the quantity (including the hidden quantity) as part of LeavesQty, but I am keen on interpreting your below statement

The order submitter needs to keep track of the remaining visible quantity to know when a refresh will occur (rules depend on the fields in the DisplayInstruction component)

Which rules are we referring to and what could be the dependencies.
For e.g. DisplayMethod (1084) is 4 then does the invisible qty add up in the LeavesQty?

For e.g. DisplayQty = 1000 (original 5000); CumQty = 1000; LeavesQty = 0
On ER Trade, DisplayQty = 5000; CumQty = 1000; LeavesQty = 4000?

LeavesQty(151) does not distinguish between visible and invisible quantity. It always represents the remaining quantity of the order that can still be executed. The value in LeavesQty(151) does not depend on DisplayMethod(1084).

For e.g. DisplayQty = 1000 (original 5000); CumQty = 1000; LeavesQty = 0
On ER Trade, DisplayQty = 5000; CumQty = 1000; LeavesQty = 4000?

It is not possible to have DisplayQty(1138) > 0 but LeavesQty(151). Simply put, there is nothing to display if there is no remaining quantity. The order quantity formula does not include DisplayQty(1138) but OrderQty(38) instead.

My statement on keeping track of the visible quantity was apparently more confusing than helpful. The DisplayInstruction component allows to specify many different algorithms for the order recipient in terms of how much quantity is being displayed and what triggers a refresh of the displayed quantity. However, none of them affect the value of LeavesQty(151). The ExecutionReport(35=8) gives you the currently visible quantity in DisplayQty(1138), it does not echo back your input value of DisplayQty(1138). It is possible to echo back that input value to you in InitialDisplayQty(1608).

The refresh rules are mainly conveyed with DisplayWhen(1083) and DisplayMethod(1084), values 2 and 3 of DisplayMethod(1084) requires one or more of the remaining fields in the component (tag numbers 1085-1088).

Thanks @hanno.klein