Qty
base: floatFIX 4.4FIX 4.2
Qty is a FIX datatype defined in FIX 4.4 and FIX 4.2, carried on the wire as float. 36 fields use it.
Wire format
- Base type
- float
- Fields
- 36
A decimal quantity. Fractional quantities are legal, which is why this is a float family rather than an integer.
What the specification says
FIX 4.4
float field capable of storing either a whole number (no decimal places) of "shares" (securities denominated in whole units) or a decimal value containing decimal places for non-share quantity asset classes (securities denominated in fractional units).
FIX 4.2
float field (see definition of "float" above) capable of storing either a whole number (no decimal places) of "shares" or a decimal value containing decimal places for non-share quantity asset classes.
Descriptions are quoted from the FIX Orchestra sources under the Apache 2.0 licence.
How @boarteam/fix handles it
@boarteam/fix parses the value as a number and reports parse/invalid-float when it does not lex as one; the raw string is kept so precision and trailing zeros are never lost.
Fields with this datatype
| Tag | Field | Dialects | Messages |
|---|---|---|---|
| 14 | CumQty | FIX 4.4, FIX 4.2 | 2 |
| 32 | LastQty | FIX 4.4, FIX 4.2 | 5 |
| 38 | OrderQty | FIX 4.4, FIX 4.2 | 22 |
| 53 | Quantity | FIX 4.4, FIX 4.2 | 9 |
| 80 | AllocQty | FIX 4.4, FIX 4.2 | 12 |
| 84 | CxlQty | FIX 4.4, FIX 4.2 | 1 |
| 110 | MinQty | FIX 4.4, FIX 4.2 | 10 |
| 111 | MaxFloor | FIX 4.4, FIX 4.2 | 8 |
| 134 | BidSize | FIX 4.4, FIX 4.2 | 5 |
| 135 | OfferSize | FIX 4.4, FIX 4.2 | 5 |
| 151 | LeavesQty | FIX 4.4, FIX 4.2 | 2 |
| 152 | CashOrderQty | FIX 4.4, FIX 4.2 | 18 |
| 192 | OrderQty2 | FIX 4.4, FIX 4.2 | 11 |
| 210 | MaxShow | FIX 4.4, FIX 4.2 | 8 |
| 271 | MDEntrySize | FIX 4.4, FIX 4.2 | 2 |
| 293 | DefBidSize | FIX 4.4, FIX 4.2 | 1 |
| 294 | DefOfferSize | FIX 4.4, FIX 4.2 | 1 |
| 330 | BuyVolume | FIX 4.4, FIX 4.2 | 1 |
| 331 | SellVolume | FIX 4.4, FIX 4.2 | 1 |
| 387 | TotalVolumeTraded | FIX 4.4, FIX 4.2 | 1 |
| 424 | DayOrderQty | FIX 4.4, FIX 4.2 | 1 |
| 425 | DayCumQty | FIX 4.4, FIX 4.2 | 1 |
| 437 | ContraTradeQty | FIX 4.4, FIX 4.2 | 1 |
| 561 | RoundLot | FIX 4.4 | 2 |
| 562 | MinTradeVol | FIX 4.4 | 2 |
| 647 | MinBidSize | FIX 4.4 | 3 |
| 648 | MinOfferSize | FIX 4.4 | 3 |
| 652 | UnderlyingLastQty | FIX 4.4 | 1 |
| 673 | LegAllocQty | FIX 4.4 | 2 |
| 687 | LegQty | FIX 4.4 | 10 |
| 704 | LongQty | FIX 4.4 | 4 |
| 705 | ShortQty | FIX 4.4 | 4 |
| 745 | AssignmentUnit | FIX 4.4 | 1 |
| 800 | OrderBookingQty | FIX 4.4 | 4 |
| 863 | OrderCapacityQty | FIX 4.4 | 1 |
| 879 | UnderlyingQty | FIX 4.4 | 59 |
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