How to treat "Loco" in FIX

Imported from previous forum

Hi there. Can anyone say how the “Loco” (delivery location for precious metals) is handled in FIX? Thanks!

Locations in general are covered by the parties component in its various incarnations (root, nested,…). Your choices of the party role depend on the number of other locations you need to convey in the same message. If “Loco” is the only one then I suggest to use the role of settlement location. This would look as follows for the base component :

PartyID(448) =
PartyIDSource(447) = E (ISO country code)
PartyRole(452) = 10 (Settlement Location)

If you need role 10 for other purposes then you can use the generic role 75 (Location ID) for delivery. If there is more than one delivery location per country, you can add the parties subgroup to the parties entry as follows to uniquely identify the location:

PartySubID(523) = <city name, e.g. London>
PartySubIDType(803) = 34 (Address city) or simply 31 (Location) and define it to be used for the city in your Rules of Engagement

Note that PartiesSubIDType also allows to convey an ISO country code (generically or as part of an address), i.e. if you use PartyID to convey the counterparty of a trade then you can also attach the delivery location with the parties subgroup with 1 (country) or 2 (country + city) entries.

Please see FIXimate (http://www.fixtradingcommunity.org/pg/resources/fiximate) for further details of the valid values of the party fields.

Hi Hanno

First of all thank you for your detailed answer on our questions. We found the information in the appendix 6 of the FIX 5.0SP2 specification, but we are not clear on how to use it.

In FX Trading, for Precious metal settlement (Bullion, Silver) the settlement location can be either Zurich or London.

We would like to confirm with you, that we correctly understood what you are suggesting.

If we want to add the settlement location to a request for quote, or to an order message, we will require the buy side to add either add
|453=1|448=|447=E|452=10|523=London|803=31|
-or-
|453=1|448=|447=E|452=10|523=Zurich|803=31|
to the FIX message. Is that correct?

Thank you very much for your help.
Michele

You have omitted the values for 448, i.e. the ISO country code. If it can only be London or Zurich then the country is actually enough if you document GB=London/CH=Zurich in your agreement with the buy side (Rules of Engagement), i.e.
|453=1|448=GB|447=E|452=10|
-or-
|453=1|448=CH|447=E|452=10|

If you want the city to be included then you simply add that (tag 802 for parties subgroup is missing in your example) as follows
|453=1|448=GB|447=E|452=10|802=1|523=London|803=31|
-or-
|453=1|448=CH|447=E|452=10|802=1|523=Zurich|803=31|

Thanks a lot Hanno. This is very helpful. One more question: Usually precious metals are priced in troy ounces, but we also offer pricing and trading in grams. Is there a way to specify if the OrderQty/MdEntrySize fields are in troy ounces or grams? Thanks again for your expertise.
Regards,
Michele

Please have a look at EP122 (http://www.fixtradingcommunity.org/pg/extensions/extension-pack?ExtensionID=EP122) for details on the FIX concept for unit of measure. Troy ounces or grams can be defined as a unit of measure for an instrument. You can use UnitOfMeasure(996) and PriceUnitOfMeasure(1191) to convey instrument prices with their usual (“oz_tr”=troy ounces) and their pricing unit (“g”=grams). QtyType(854)=0 (Units) is only relevant for order entry (OrderQty) and not for market data.