ICE RemotePlus

Prev Next

FINBOURNE’s ICE RemotePlus integration gives you a reliable, configurable feed of instrument prices and FX spot rates from ICE Data Services into the LUSID Quote Store. Rather than uploading prices manually or maintaining your own scripts, you set it up once and let it run on a schedule you define.

Prerequisites

Before getting started, ensure you have:

  • An active contract with ICE Data Services and an account username and password with access to RemotePlus (the one you use for RemotePlus for Excel will work here)

    • If you intend to use WM FX spot fields, a separate WM rate entitlement from ICE

  • An ICE Data Services

  • Contacted your FINBOURNE representative to enable the integration in your LUSID domain

Supported data types

Instrument prices

Bid, mid, ask, best price, high, low, open, primary exchange, and composite trade values.

FX spot rates

WM and OTCD bid, mid, and ask rates, fixed to your chosen snapshot time.

Setting up the integration

Note

Before getting started, ensure the instruments you intend to import quotes for are set up in LUSID with at least one of the following instrument identifiers:

  • Cusip

  • Sedol

  • Isin

An integration instance configures the snapshot timing, price types, and instruments for your quote import:

  1. Navigate to Integrations > Dashboard.

  2. Select Create instance and choose ICE RemotePlus.

  3. Specify a friendly Name and Description for the integration instance.

  4. Specify the following in the Integration settings tab:

Prices

The Prices tab controls which instruments to import prices for, which price fields to fetch, and where to save the results.

Instrument selection

Choose which instruments to import prices for using one of the following instrument selection types:

  • Filter: Select instruments by their scope and, optionally, a custom filter expression

  • Portfolio: Select instruments from a particular portfolio and, optionally, a custom filter expression

    • Portfolio Scope and Portfolio Code: A LUSID portfolio scope and code

    • Instrument Filter: As above

  • Portfolio Group: Select instruments from a particular portfolio group and, optionally, a custom filter expression

    • Portfolio Scope and Portfolio Code: A LUSID portfolio group scope and code

    • Instrument Filter: As above

Price type

Choose which category of prices to request.

Price type

Supports requests across date ranges?

Typical use

Unadjusted historical

Bonds

Adjusted historical

Equities adjusted for corporate actions

Latest

Intraday or most-recent prices

Latest per-share

Equities only

Price fields to request

Select the quote data points you want to import into LUSID. The integration creates a separate quote for each price field.

Historical date

If you specified a price type of Unadjusted historical or Adjusted historical, you can optionally specify a date range and time period to retrieve quotes for.

Price source

Specify how the integration should label the data source on each quote loaded into LUSID:

  • Use Family: Attaches price type name as the quote label

  • User Defined: Attaches a string you define as the quote label

  • Not Specified: No label

You can also specify a Time Zone and Cut Time to append to the quote effectiveAt date.

Quote store output

Optionally, customise the Quote scope to save quotes to, as well as the quote Provider. Learn more about quotes in LUSID.

FX Spot

The FX Spot tab controls which FX fields and currency pairs to fetch and where to save the results.

Spot rate fields

Select which FX fields you want to include in integration runs. The integration stores each FX field you select as a separate entry in the Quote Store.

Note

WM fields are fixed to London Close by default and require a separate licence from ICE.

Currency pairs

Specify the pairs you want to retrieve as a comma-separated list; each pair must have six letters with no separator, for example GBPUSD, EURUSD, USDJPY.

Snapshot time

Specify the effectiveAt time the integration should record for each quote.

Historical date

As with the Prices tab, you can optionally specify a date range and time period to retrieve quotes for.

Quote store output

Optionally, customise the Quote scope to save quotes to, as well as the quote Provider. The settings are completely independent of the Prices tab, so you can choose to save FX data to a different location. Learn more about quotes in LUSID.

Connection

Use the Connection tab to enter your ICE credentials and, if your network requires it, proxy settings.

Diagnostics

The Diagnostics tab allows you to configure useful troubleshooting tools.

You can enable Save raw payloads to Drive to save the exact data the integration sent to ICE, and the response received, to your specified folder in LUSID Drive. Note the folder path must begin with LUSID-Horizon. See Monitoring and troubleshooting integration runs for details on the payload contents.

Running the integration

See how to run the integration.

When the integration runs, it requests prices and FX rates from ICE for the instruments included in your configuration. The integration then checks the results it receives from ICE and saves them to the Quote Store under the scope and provider you configured; see how the integration maps ICE fields to your LUSID quotes.

If you run the integration more than once for the same date and fields, the integration overwrites the existing quotes rather than creating duplicates.

Monitoring and troubleshooting integration runs

See how to monitor integrations and troubleshoot general issues.


Troubleshooting

Missing prices

ICE RemotePlus sometimes returns a code rather than a numeric price, for example !NA (not available) or !NE (not entitled). When this happens, the integration skips that instrument and field for the current run and logs it as skipped, but continues processing other quotes.

If you notice prices missing for certain instruments, check the run log to see:

  1. Whether they were skipped

  2. Which code ICE returned

The full list of codes ICE may return is as follows:

  • !NA: Not available

  • !NE: Not expected (for example, a future date)

  • !NR: Not reported

  • !NH: Holiday (US/Canadian)

  • !N5: ICE error code 5000

  • !N6: ICE error code 6000

  • !N7: ICE error code 7000

  • !N8: ICE error code 8000

Incorrect data

If prices are coming through incorrectly - for example, a field is mapping to the wrong value, or an instrument is not being recognised - enable Save Raw Payloads to Drive on the Diagnostics tab (if you haven’t already done so).

You can then examine the exact data the integration sent to ICE, and the exact response received, in Drive.

Appendix A: Quote Store field mappings

Instrument prices

The integration imports two quotes for each ICE RemotePlus price field, allowing you to retrieve the quote by both the LUID and Cusip/Sedol/Isin.

LUSID quote field

Source

QuoteId.QuoteSeriesId.Provider

Quote Store Output > Provider

Scope

Quote Store Output > Quote Scope

QuoteId.QuoteSeriesId.InstrumentIdType

LusidInstrumentId or one of Cusip/Sedol/Isin

QuoteId.QuoteSeriesId.InstrumentIdValue

The instrument’s LUID or Cusip/Sedol/Isin value

QuoteId.QuoteSeriesId.PriceSource

Quote Store Output > Provider

QuoteId.QuoteSeriesId.Field

Price fields to create; the integration maps ICE mnemonics to LUSID field names, see price fields mapping table

QuoteId.QuoteSeriesId.QuoteType

Price

QuoteId.EffectiveAt

Combines Price Source > Cut Time and Time Zone and converts to UTC

MetricValue.Value

Numeric price from ICE

MetricValue.Unit

Currency from ICE

Lineage

If Save Raw Payloads to Drive is enabled, the response filename. If not enabled, a run and timestamp reference.

Price fields

ICE mnemonic

LUSID price field mapping

BID

bid

ASK

ask

MID

mid

HIGH

high

LOW

low

OPEN

open

PRC

bestPrice

EPRC

primaryExchangeTradePrice

TPRC

compositeTradePrice

VWAP

vwap

FX spot rates

The integration imports a quote for each ICE RemotePlus price field, identified by the currency pair.

LUSID quote field

Source

QuoteId.QuoteSeriesId.Provider

Quote Store Output > Provider

Scope

Quote Store Output > Quote Scope

QuoteId.QuoteSeriesId.InstrumentIdType

CurrencyPair

QuoteId.QuoteSeriesId.InstrumentIdValue

The currency pair formatted as <CCY>/<CCY>, for example GBP/USD

QuoteId.QuoteSeriesId.PriceSource

Price Source

QuoteId.QuoteSeriesId.Field

Spot rate fields

QuoteId.QuoteSeriesId.QuoteType

Rate

QuoteId.EffectiveAt

Snapshot Time converted to UTC

MetricValue.Value

Numeric rate from ICE

MetricValue.Unit

Quote currency from ICE (the second currency in the pair - for example USD for GBP/USD)

Lineage

If Save Raw Payloads to Drive is enabled, the response filename. If not enabled, a run and timestamp reference.