# Message and record fields

This page provides general information on fields used in trade model messages and blotter records.

For information on fields in a specific message or record, please see the specifications at the foot of this page.

## Trade legs and instruments

Prefixes are used to denote trade legs and instruments, such as forwards and swaps:

* The names of fields that relate to a trade leg are prefixed by **L&lt;leg number>_**. Leg numbers start at '1' and a trade always has at least one leg. For example, **L1_Amount** represents the amount on the first leg of a trade.
* Some fields relate to a trade as a whole rather than any individual leg, and these fields have no leg prefix. For example, **CurrencyPair** and **TradingType**.
* The names of fields that relate only to forwards begin with **Fwd**. For example, **L1_FwdBidPoints**.
* The names of fields that relate only to swaps begin with **Swap**. For example, **SwapBidPoints**.

## Rates, points, and pips

Fields for rates, points, and pips follow the conventions below:

* The names of fields that contain an FX rate include the term **Rate**. For example, **SpotBidRate**. A rate is a price for a unit of the base currency expressed in units of the quote currency. For example, a rate of 1.52312 for GBPUSD is the price of GBP 1 expressed in USD (USD 1.52312).
* The names of fields that contain FX points include the term **Points**. For example, `L1_FwdBidPoints`. Points are an adjustment to a rate expressed in units of the quote currency (the same units as the rate). For example, a difference of 1 pip between two GBPUSD rates would be expressed as a difference of 0.0001 points.

  To calculate a forward rate for a currency pair from a spot _rate_ and forward _points_, add the forward points to the spot rate. For example:  **SpotBidRate** + **L1_FwdBidPoints**.
* The digit-width and position of pips in a currency pair is described by two fields:
  * **NumberOfPips:** the width of the pips in digits. The width does not include fractional pips. For the majority of currency pairs, **NumberOfPips** is 2.
  * **DigitsBeforePips:** the number of digits between the pips and the decimal point. For the majority of currency pairs, **DigitsBeforePips** is 2. The value can be negative to express positions that are partly or wholly to the left of the decimal point (see examples below).

    **PIP field examples**

    | NumberOfPips | DigitsBeforePips | Example |
    | --- | --- | --- |
    | 2 | 2 | 0.00#<mark>06</mark>#5 |
    | 2 | 2 | 0.00#<mark>123</mark>#50 |
    | 2 | -1 | <mark>#1.6</mark>#50 |

## Deprecations

* Fields with names including the term **Pips** are deprecated in favour of **Points** fields. For example, use `L1_FwdBidPoints` in preference to `L1_FwdBidPips`.
* The term **price** is no longer used in any field names due to its ambiguous nature.

---

**See also:**

* [Blotter records](fxapi-blotter-records.md)
{% for page in site.pages %}
{%- assign isHtml = page.url | test_regex: '(.html|/)$' -%}
{%- if isHtml and page.url contains '/fx-integration-api/fxapi-trade-model-' %}
* [{{page.title}}]({{ page.url | split: '/' | last | remove: ".html"}}.md)
{%- endif -%}
{% endfor %}
