UTCTimeOnly

base: StringFIX 4.4FIX 4.2

UTCTimeOnly is a FIX datatype defined in FIX 4.4 and FIX 4.2, carried on the wire as String. 1 field uses it.

Wire format

Base type
String
Format
HH:MM:SS[.sss]
Fields
1

A UTC time of day, no date component.

What the specification says

FIX 4.4

string field representing Time-only represented in UTC (Universal Time Coordinated, also known as "GMT") in either HH:MM:SS (whole seconds) or HH:MM:SS.sss (milliseconds) format, colons, and period required. This special-purpose field is paired with UTCDateOnly to form a proper UTCTimestamp for bandwidth-sensitive messages. Valid values: HH = 00-23, MM = 00-60 (60 only if UTC leap second), SS = 00-59. (without milliseconds) HH = 00-23, MM = 00-59, SS = 00-60 (60 only if UTC leap second), sss=000-999 (indicating milliseconds).

FIX 4.2

Time-only represented in UTC (Universal Time Coordinated, also known as "GMT") in either HH:MM:SS (whole seconds) or HH:MM:SS.sss (milliseconds) format, colons, and period required. Valid values: * HH = 00-23, MM = 00-59, SS = 00-59. (without milliseconds) * HH = 00-23, MM = 00-59, SS = 00-59. sss=000-999 (indicating milliseconds).

Descriptions are quoted from the FIX Orchestra sources under the Apache 2.0 licence.

How @boarteam/fix handles it

@boarteam/fix keeps the value as a string; format rules are checked by validate(), which reports validate/invalid-value rather than throwing.

Fields with this datatype

TagFieldDialectsMessages
273MDEntryTimeFIX 4.4, FIX 4.22

Decode this in your own code

The same engine that produced the decoded example above is an Apache-2.0 npm package with zero runtime dependencies. It runs in Node and in the browser, and parse() returns problems as data instead of throwing.

npm i @boarteam/fix @boarteam/fix-dict-fix44