Market Data

Spot rates

Subscribe rates

Subscribe to a stream of real-time spot rates for a given symbol. In response this channel sends an aggregated list of rates, which may include prices from multiple liquidity providers or external market data sources.

Subscribe rates request example

{ "rateSubscriptions":
    [ { "symbol":"EUR/USD",
        "type":"RAW",
        "org":"pfOrg"
        "requestId":1
        "tiers":[1000000,2000000.0,3000000.0]
      }
    ]
}

Request body

Attribute Description
symbolstring: (required) Base and term currency separated by a slash "/" (for example EUR/USD).
requestIdstring: (required) ID assigned by you to your request, returned in the response.
typestring: The type of rates requested: RAW: Raw rates, FULL: Full book, TOB: Top of book, VWAP: Value-weighted average price.
orgstring: Organization ID. If specified, then rates are sourced from the liquidity providers configured for this org. If not specified, rates are sourced from preconfigured liquidity providers.
tiersstring: Price tier amounts. Conditional: Applicable when type=VWAP.

Subscribe rates request example

{ "rateSubscriptionsResponses":
    [ { "request":
        { "symbol":"EUR/USD",
          "type":"RAW",
          "requestId":1
        },
        "status":"success"
      }
    ]
}

Response body

Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
typestring: The type of rates requested: RAW: Raw rates, FULL: Full book, TOB: Top of book, VWAP: Value-weighted average price.
requestIdstring: ID assigned by you to your request, returned in the response.
statusstring: The status of the request.

Returns

Rate example

{ "rate": 
  { "symbol": "EUR/USD",
    "bid": [1.18631],
    "offer": [1.18639],
    "bidLimit": [1000000.0],
    "offerLimit": [1000000.0],
    "bidProviders": ["LP1","LP2","LP3"],
    "offerProviders": ["LP2","LP3","LP1"],   
    "time": 1604046862425,
    "requestId": 1
  }
}
Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
bidarray [double]: Bid rate.
offerarray [double]: Offer rate.
bidLimitarray [double]: Bid size in base.
offerLimitarray [double]: Offer size in base.
bidProvidersarray [double]: Bid price providers. Applies when type=RAW on the request.
offerProvidersarray [string]: Offer price providers. Applies when type=RAW on the request.
timeint: Rate timestamp in milliseconds since the Unix epoch in the UTC timezone.

Unsubscribe rates

Unsubscribe from a real-time rate stream.

Unsubscribe rates request example

{ "rateUnsubscriptions":
    [ { "requestId":1
      }
    ]
}

Request body

Attribute Description
requestIdstring: (required) ID assigned by you to your request, returned in the response.

Unsubscribe rates response example

{ "rateUnsubscriptionsResponses":
    [ { "request":
        { "requestId":1
        },
        "status":"success"
      }
    ]
}

Response body

Attribute Description
requestIdstring: ID assigned by you to your request, returned in the response
statusstring: The status of the request.

Benchmark rates

Subscribe benchmark

Subscribe to a stream of benchmark rates for a symbol and price source. Returns Benchmark Rate or Grid Mid Rate.

Subscribe benchmark rates request example

{ "fxbenchmarkSubscriptions":[{ 
    "symbol":"AUD/CAD",
    "priceSource":"FXB"
    }]
}

Request body

Attribute Description
symbolstring: (required) Base and term currency separated by a slash "/" (for example EUR/USD).
priceSourcestring: The price source: FXB: Benchmark, GMR: Grid mid rate. If not specified, the default FXB is used.

Subscribe benchmark rates response example

{ "fxbenchmarkSubscriptionResponses":[{
    "request":{ 
      "symbol":"AUD/CAD",
      "priceSource":"FXB"
    },
  "status":"success"
  }]
}

Response body

Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
typestring: The price source of the benchmark.
statusstring: The status of the request.

Returns

Benchmark rate example

{ "fxbenchmark":
    { "currencyPair":"AUD/CAD",
      "rate":1.18842,
      "guid":"G-4796976cd-171343c4903-FXB-d7ba48",
      "timestamp":1585719298307
    }
}

Mid rate example

{ "gridmidrate":
    { "currencyPair":"AUD/CAD",
      "rate":1.18842,
      "guid":"G-4796976cd-171343c4903-FXB-d7ba48",
      "timestamp":1585719298307
    }
}
Attribute Description
currencyPairstring: Currency pair in the format base/term.
priceSourcedouble: The rate.
guidstring: Unique ID of the rate.
timestampintegral: The timestamp of the rate in milliseconds (Unix time).

Unsubscribe benchmark

Unsubscribe from a stream of benchmark rates for a symbol and price source.

Unsubscribe benchmark rates request example

{ "fxbenchmarkUnsubscriptions":
    [ { "symbol":"AUD/CAD",
        "priceSource":"FXB"
      }
   ]
}

Request body

Attribute Description
symbolstring: (required) Base and term currency separated by a slash "/" (for example EUR/USD).
priceSourcestring The price source: FXB: Benchmark, GMR: Grid mid rate. If not specified, the default FXB is used.

Unsubscribe benchmark rates response example

{ "fxbenchmarkUnsubscriptionResponses":
    [ { "request":
          { "symbol":"AUD/CAD",
            "priceSource":"FXB"
          },
        "status":"success"
      }
    ]
}

Response body

Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
priceSourcestring: The price source:
  • FXB: Benchmark
  • GMR: Grid mid rate
statusstring: The status of the request.

Ticker

Subscribe ticker

Subscribe to a stream of last-traded prices for a symbol. Returns Trade Ticker.

Subscribe ticker request example

{ "tradeTickerSubscriptions":
  [ {"symbol":"EUR/USD"}
  ]
}	

Request body

Attribute Description
symbolstring: (required) Base and term currency separated by a dash "-" (for example EUR/USD or GER30-USD).

Subscribe ticker response example

{ "tradeTickerSubscriptionResponses":
  [ { "request":
      { "symbol":"EUR/USD"
      },
      "status":"success"
    }
  ]
}

Response body

Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
statusstring: The status of the request.

Ticker example

{ "tradeticker":
  { "symbol":"AUD/CAD",
    "rate":1.18842,
    "isBid":true,
    "time":1585719298307
  }
}

Returns

Attribute Description
symbolstring: Currency pair in the format base/term.
ratedouble: The rate at which the trade was done.
isBidboolean: true=Trade rate is bid, false=Trade rate is offer.
timestring: TThe timestamp of the trade in milliseconds (Unix time).

Unsubscribe ticker

Unsubscribe from a stream of last traded prices on this venue for a symbol.

Unsubscribe ticker request example

{ "tradeTickerUnsubscriptions":
  [ { "symbol":"EUR/USD"
    }
  ]
}

Request body

Attribute Description
symbolstring: (required) Base and term currency separated by a slash "/" (for example EUR/USD).

Unsubscribe ticker response example

{ "tradeTickerUnsubscriptionResponses":
  [ { "request":
      {
        "symbol":"EUR/USD"
      },
      "status":"success"
    }
  ]
}

Response body

Attribute Description
symbolstring: Base and term currency separated by a slash "/" (for example EUR/USD).
statusstring: The status of the request.