Currency

base: StringFIX 4.4FIX 4.2

Currency is a FIX datatype defined in FIX 4.4 and FIX 4.2, carried on the wire as String. 17 fields use it.

Wire format

Base type
String
Fields
17

A three-letter ISO 4217 code.

What the specification says

FIX 4.4

string field representing a currency type using ISO 4217 Currency code (3 character) values (see Appendix 6-A).

FIX 4.2

String field (see definition of "String" above) representing a currency type (see Appendix A-Valid Currency Codes).

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
15CurrencyFIX 4.4, FIX 4.245
120SettlCurrencyFIX 4.4, FIX 4.212
138MiscFeeCurrFIX 4.4, FIX 4.29
220BenchmarkCurveCurrencyFIX 4.422
318UnderlyingCurrencyFIX 4.4, FIX 4.259
478CashDistribCurrFIX 4.41
479CommCurrencyFIX 4.413
521ContAmtCurrFIX 4.42
556LegCurrencyFIX 4.450
675LegSettlCurrencyFIX 4.42
676LegBenchmarkCurveCurrencyFIX 4.45
736AllocSettlCurrencyFIX 4.411
767AllowableOneSidednessCurrFIX 4.41
918AgreementCurrencyFIX 4.426
941UnderlyingStrikeCurrencyFIX 4.459
942LegStrikeCurrencyFIX 4.450
947StrikeCurrencyFIX 4.459

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