FIX 4.4 - TimeInForce

Imported from previous forum

Hello everyone,

I have a question about TimeInForce tag. How can you specified that your order is ‘at the close’, and at the same time, is a ‘fill or kill’, or ‘execute and eliminate’ order?
Is that possible or is there no market that accept this restrictions?
I’m not sure, but I think that you can send to XETRA an order ‘at the close’ with expiration date different that today. This woudn’t fit into FIX4.4 protocol, would it?

Regards,
Abel Monroy

Abel,

I agree that TimeInForce is a mixture of different concepts that might be a problem for specific market models. XETRA separates order restrictions (e.g. IOC, FOK) from trading restrictions (e.g. closing auction only) which are optional and has an order expiration date as mandatory input field.

For FIX 4.4 you can use TradingSessionSubID to model trading phases such as “at the close” without using TimeInForce (TradingSessionID should be a higher level such as “DAY SESSION”).

FIX 5.0 introduces a TriggeringInstruction which is a generic way of triggering orders based on certain events or points in time. It also contains trading sessions and phases that can be used as triggers.

Hope this helps,
Hanno.

Hello everyone,

I have a question about TimeInForce tag. How can you specified that your
order is ‘at the close’, and at the same time, is a ‘fill or kill’, or
‘execute and eliminate’ order? Is that possible or is there no market
that accept this restrictions? I’m not sure, but I think that you can
send to XETRA an order ‘at the close’ with expiration date different
that today. This woudn’t fit into FIX4.4 protocol, would it?

Regards, Abel Monroy

Thank you, Hanno.

Finally we are going to use TradingSessionSubID & TradingSessionID.

Thanks again,
Abel Monroy

Abel,

I agree that TimeInForce is a mixture of different concepts that might
be a problem for specific market models. XETRA separates order
restrictions (e.g. IOC, FOK) from trading restrictions (e.g. closing
auction only) which are optional and has an order expiration date as
mandatory input field.

For FIX 4.4 you can use TradingSessionSubID to model trading phases such
as “at the close” without using TimeInForce (TradingSessionID should be
a higher level such as “DAY SESSION”).

FIX 5.0 introduces a TriggeringInstruction which is a generic way of
triggering orders based on certain events or points in time. It also
contains trading sessions and phases that can be used as triggers.

Hope this helps, Hanno.

Hello everyone,

I have a question about TimeInForce tag. How can you specified that
your order is ‘at the close’, and at the same time, is a ‘fill or
kill’, or ‘execute and eliminate’ order? Is that possible or is there
no market that accept this restrictions? I’m not sure, but I think
that you can send to XETRA an order ‘at the close’ with expiration
date different that today. This woudn’t fit into FIX4.4 protocol,
would it?

Regards, Abel Monroy

[ original email was from Rikard Hedberg - rikard.hedberg@omxgroup.com ]
Abel,

my experience is that “At the Close” orders are implicitly treated as IOC, i.e. they are removed as soon as the closing terminates whether they executed (in full) or not. The same applies to “At the Opening” and other cases when an order is defined to be valid for a single Trading Session only.

I believe the above is the correct interpretation and that a separate indicator for “IOC/FOK” is not relevant in this case. The order is defined to be valid in a certain trading session only and should be removed when that session terminates. If you want an order to be valid for a longer time you should use another time in force or, as Hanno indicated, the triggering instructions introduced in FIX 5.0.

Regards

Rikard

Hello everyone,

I have a question about TimeInForce tag. How can you specified that your
order is ‘at the close’, and at the same time, is a ‘fill or kill’, or
‘execute and eliminate’ order? Is that possible or is there no market
that accept this restrictions? I’m not sure, but I think that you can
send to XETRA an order ‘at the close’ with expiration date different
that today. This woudn’t fit into FIX4.4 protocol, would it?

Regards, Abel Monroy

Hi Hanno, sorry for stepping in, for the below, if we use TradingSessionSubID, do we need to specify the TimeInForce field? (It is noticed that the description of TimeInForce is “Absence of this field indicates Day order”)

For FIX 4.4 you can use TradingSessionSubID to model trading phases such as “at the close” without using TimeInForce (TradingSessionID should be a higher level such as “DAY SESSION”).

That is correct. You do not need to specify it but it then has this implicit value, which limits the validity of the order to the current business day. Using TradingSessionID(336) together with TradingSessionSubID(625) further reduces the time of validity.

Got it. Thanks Hanno.