ZagTrader

FIX Protocol Tag 59: TimeInForce

How long the order stays in effect, such as day, good till cancel, immediate or cancel, fill or kill, or good till date. An order without this field is a day order.

Tag number
59
Data type
CHAR
FIX versions
FIX 4.0 to 5.0 SP2
Used in
27 message types

Practical notes on TimeInForce

TimeInForce says how long the order stays active. Without it, the order is a Day order.

  • 0 Day, 1 Good till cancel, 3 Immediate or cancel (fill what you can now, cancel the rest), 4 Fill or kill (all now or nothing), 6 Good till date.
  • Good till date needs ExpireDate (432) or ExpireTime (126).
  • Venues map these to their own rules; a GTC order may be capped at a number of days.

Changes between FIX versions

  • At the close (7) was added in FIX 4.3. FIX 5.0 SP1 and SP2 add further codes such as Good through crossing (8) and At crossing (9).

Tag 59 in each FIX version

Values and message usage as defined in a specific version.

Data type

CHAR: A single character.

Valid values

13 enumerated values across all FIX versions.

ValueMeaningFIX versions
0DayAll
1Good till cancelAll
2At the openingAll
3Immediate or cancelAll
4Fill or killAll
5Good till crossingAll
6Good till dateAll
7At the close4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
8Good through crossing5.0 SP1, 5.0 SP2
9At crossing5.0 SP1, 5.0 SP2
AGood for time5.0 SP2
BGood for auction5.0 SP2
CGood for month5.0 SP2

Example

59=0

Illustrative value. In a message, fields are separated by the SOH character (0x01), often shown as | or ^ in logs.

Decode a message with this tag

Message types that use tag 59

Covers every version from FIX 4.0 to 5.0 SP2, including fields reached through components and repeating groups. The version pages above show whether the tag is required in each message.

Field and message data comes from the QuickFIX data dictionaries for FIX 4.0 to 5.0 SP2 and FIXT 1.1, used under the QuickFIX Software License. This product includes software developed by quickfixengine.org (http://www.quickfixengine.org/). Enumerated value names are converted to plain text for reading.