Skip to main content

Chapter 6 - Foreign Exchange and Money Markets

import lseg.data as ld
from lseg.data.content import search
from lseg.data.discovery import Chain
import warnings
warnings.filterwarnings("ignore", category=FutureWarning)

ld.open_session()
    <lseg.data.session.Definition object at 0x21ba32a4470 {name='workspace'}>

Tools for Finding Data

Workspace Apps and Programmatic Access

LSEG Workspace offers focused entry points for exploring foreign exchange and money‑markets data. Start with applications and views tailored to cross‑rates (contributed and calculated), deposits and forwards (including outrights), FRAs and swaps, zero‑curve construction, FX and interest‑rate volatilities, and fixings. When you need to discover the precise instrument identifiers before diving deeper, use the LSEG Data Platform’s search—interactively in Workspace or programmatically—to filter by keywords, attributes, or expressions and return instrument results. This discovery step ensures you’re working with the correct FX or money‑market instruments prior to accessing detailed analytics and data.

Tools for FX & Money Markets

AppDescriptionWhy Start Here
FXCROSSFX Cross Rates — contributed and calculated cross‑currency rates across major and regional pairs.Ideal starting point for exploring cross‑rates and currency relationships.
SPOTGForeign Exchange Overview Guide — spot‑centric view of FX markets including prices and charting.Broad FX overview and spot‑rate context; useful as the main “spot entry point.”
FWDSFX Forwards Calculator — forward points and outright forwards across standard tenors.Primary app for exploring FX forwards; useful for hedging, pricing, and curve insight.
RVMMRates Views – Money Market — consolidated live view of money‑market instruments.Best starting point for short‑end instruments: deposits, OIS, FRAs, swaps, STIR strips.
RMMGRates & Money Markets Guides — navigation hub linking to money‑market and rates tools.High‑level discovery hub across the broader MM/rates domain, including fixings.
FixingsWorkspace for browsing reference‑rate fixings by currency or index family.Lets users explore fixings, select sources, view intraday schedules/historical values, and jump to related pages.
Programmatic AccessUse LSEG Data Platform programmatic access to locate FX or MM instrument identifiers as needed.Complements Workspace exploration with automation and workflow integration.

Spot Rates

Spot FX represents the current price for exchanging one currency for another. In Workspace, begin with the Foreign Exchange Overview Guide (SPOTG) to see spot context at a glance, or use the search bar to type a currency or pair (e.g., EUR or EURUSD) and select the spot instruments you need. For broader scanning of currency relationships, open FXCROSS (FX Cross Rates). Once you’ve identified the correct instruments, the notebook’s code cells show how to discover and retrieve the same spot data programmatically.

Examples:

  • GBP= shows the spot rate dollar against the British pound Sterling.
  • CHF= shows the spot rate Swiss franc against US dollar.

Description

# Extract FX and Money Markets data for CHF=
ld.get_data("CHF=", ["CF_NAME", "CF_BID", "CF_ASK", "NETCHNG_1","CF_SOURCE"])
InstrumentCF_NAMECF_BIDCF_ASKNETCHNG_1CF_SOURCE
0CHF=Swiss Franc0.79920.79950.0011BARCLAYS

Cross-Rates

Understanding Base and Counter Currencies

In any FX pair, the first currency is the base currency, and the second currency is the counter‑currency. The quoted cross‑rate expresses how many units of the counter‑currency correspond to one unit of the base currency. For example, in GBPCHF, the base currency is GBP, and the rate expresses the value of one British pound in Swiss francs.

The FXCROSS app provides a quick, curated view of currency‑based spot and cross rates:

FXCross

The code below replicates this view programmatically by retrieving the corresponding EUR cross‑rate instruments.

# Use Search to extract the first 10 FX Cross Rates RICs for EUR
ld.discovery.search(
view = search.Views.STIRS,
filter = "RCSAssetCategoryLeaf xeq 'FX Cross Rate' and "
"RCSContributorType xeq 'sourceType:5' and "
"RCSFirstCurrencyLeaf xeq 'Euro'",
select = "CommonName,RIC"
)
CommonNameRIC
0Euro/UK Pound Sterling FX Cross RateEURGBP=
1Euro/Japanese Yen FX Cross RateEURJPY=
2Euro/Swiss Franc FX Cross RateEURCHF=
3Euro/Swedish Krona FX Cross RateEURSEK=
4Euro/Norwegian Krone FX Cross RateEURNOK=
5Euro/Canadian Dollar FX Cross RateEURCAD=
6Euro/Australian Dollar FX Cross RateEURAUD=
7Euro/New Zealand Dollar FX Cross RateEURNZD=
8Euro/Polish Zloty FX Cross RateEURPLN=
9Euro/Danish Krone FX Cross RateEURDKK=

There are 2 types of cross-rates: contributed and calculated.

Contributed Cross-Rates

Liquid cross-rates are usually contributed by financial institutions as indicative prices. You can find rates for specific instruments either in pages or in RICs. However, they are also available in lists by currency. For example, you can find liquid cross-rates on the British pound on the display GBPX1=.

Contributed

# And by utilizing the Chain class to extract data for GBPX1=
chain = Chain("GBPX1=")

ld.get_data(chain.constituents, ["CF_BID", "CF_ASK", "CF_SOURCE", "CF_OPEN", "CF_HIGH", "CF_LOW", "CF_CLOSE"])
InstrumentCF_BIDCF_ASKCF_SOURCECF_OPENCF_HIGHCF_LOWCF_CLOSE
0GBP=1.32511.3255BARCLAYS<NA>1.32851.32121.3232
1GBPALL=109.1110.35TIRANA BANK<NA>109.8110.08109.33
2GBPAUD=1.90951.9108BARCLAYS<NA>1.91511.90961.9109
3GBPBAM=2.2432.3043RAIFFEISEN<NA><NA><NA>2.243
4GBPBGN=<NA><NA><NA><NA><NA><NA><NA>
5GBPCAD=1.84321.8443BARCLAYS<NA>1.8481.84081.8394
6GBPCHF=1.0591.0597BARCLAYS<NA>1.06021.0561.056
7GBPCNH=9.10289.1033RADA FOREX<NA><NA><NA>9.1028
8GBPCNY=9.0929.103BK OF CHINA<NA>9.1089.08719.0793
9GBPCZK=28.098528.1119BROKER<NA>28.15228.103828.092
10GBPDKK=8.56148.5668BARCLAYS<NA>8.57698.56178.5603
11GBPEUR=1.14521.1467RAIFFEISENAL<NA>1.14771.14581.146
12GBPHUF=437.75438.54K&H BANK<NA>439.12437.01439.74
13GBPISK=164.6165.02ISLANDSBANKI<NA>165.56164.94165.35
14GBPJPY=211.73211.89BARCLAYS<NA>211.88211.25211.26
15GBPKZT=610.94613.78HALYKSAVINGS<NA>612.15612.41610.89
16GBPNGN=1836.31837.2STD CHAR NIG<NA>1841.31833.21833.1
17GBPNOK=12.817512.822DANSKE BANK<NA>12.874212.80612.8385
18GBPNZD=2.32222.3243BARCLAYS<NA>2.32292.31752.3145
19GBPPLN=4.89634.8977ING BANK<NA>4.89974.89694.884
20GBPRON=5.83645.8441GARANTI BANK<NA>5.84955.84085.8299
21GBPRSD=134.39134.66UNICREDIT<NA>134.64134.52134.43
22GBPRUB=103.4942105.2701IPAK YULI BA<NA><NA><NA>103.4942
23GBPSEK=12.587812.5971SEB<NA>12.622212.502612.4912
24GBPTHB=43.14943.248BARCLAYS<NA>43.18843.11142.71
25GBPUAH=57.885357.9385PRIVAT BANK<NA><NA><NA>57.8853
26EURGBP=0.87230.8728SEB<NA>0.87280.87130.872
27GBPAED=<NA><NA><NA><NA><NA><NA><NA>
28GBPBHD=0.4740.4742CA-CIB<NA><NA><NA>0.474
29GBPEGP=72.375872.5831<NA>72.375871.098571.6201
30GBPGHS=14.573914.6081STANCHART GH<NA>14.7414.560714.518
31GBPILS=4.16434.16711ST INTL BK<NA>4.18234.15774.1573
32GBPKWD=0.3860.387CA-CIB<NA>0.3860.3870.4028
33GBPMAD=12.409412.4144BMCE CAS<NA>12.441212.377112.4144
34GBPOMR=0.50790.5093CEN BK OMAN<NA>0.50790.50860.5072
35GBPQAR=4.68264.6863<NA><NA><NA>4.6826
36GBPSAR=4.96264.9906BARCLAYS<NA>4.97424.98084.9558
37GBPZAR=22.330722.3804NEDBANK LTD<NA>22.398522.307922.2106

Calculated Cross-Rates

Calculated cross‑rates represent synthetic FX prices derived mathematically from two underlying spot legs. These are used when the market does not actively quote a contributed rate for a particular currency pair. These synthetic rates fill gaps in the market where no bank or liquidity provider contributes a direct quote for that currency pair, ensuring that a price is always available through the applicable triangular FX relationship.

For example, the synthetic cross‑rate GBPCHF=R:

Calculated

is calculated from the contributed spot prices on:

  • GBP/USD
  • USD/CHF

For most FX cross‑rates, the synthetic value is derived through triangular arbitrage relationships. For GBPCHF=R, the calculation typically follows: $$ GBPCHF = GBPUSD \times USDCHF $$

The “=R” suffix originates from the long‑standing Reuters symbology for synthetic FX cross‑rates. Although the naming convention began in earlier Reuters products, it continues to be the standard and fully current way that calculated FX cross‑rates are published and accessed across LSEG platforms today.

# Calculated Cross-Rates for GBPCHF=R
ld.get_data("GBPCHF=R", ["CF_NAME", "CF_BID", "CF_ASK", "CTBTR_1", "CF_HIGH", "CF_LOW", "CF_CLOSE"])
InstrumentCF_NAMECF_BIDCF_ASKCTBTR_1CF_HIGHCF_LOWCF_CLOSE
0GBPCHF=RGBPound/SwissFr1.05911.0595Refinitiv1.06011.05611.056

Deposits and Forwards

  • Deposits represent short‑term money‑market rates quoted by contributors across standard tenors (e.g., O/N, T/N, 1W, 1M, 3M).
  • Forwards are future‑dated FX contracts expressed as forward points relative to spot, and outright forward rates (spot ± points).

LSEG Workspace continues to support the long‑standing Reuters RIC conventions for retrieving deposit and forward rate information directly within the Quote window using RIC chains:

  • GBPDEPO= — displays deposit rates for GBP
  • GBPFWD= — displays forward points and outrights for GBP
  • GBPF= — displays a combined view of deposits and forwards for GBP

These chain-based RICs remain the standard and widely used way to explore FX deposit and forward markets across currencies.

For forward‑curve analytics—such as settlement‑date rolls, interpolation/extrapolation settings, forward‑point construction, and composite versus contributor pricing—Workspace provides the FWDS application (FX Forwards Calculator). This app complements the chain view by offering analytical tools not available directly within the chain display.

Forwards

FX forwards are contracts that settle at a future date, typically quoted either as forward points relative to spot or as outright forward rates. In LSEG Workspace, forward instruments follow established Reuters RIC conventions that combine a currency code with a delivery-period code.

A forward RIC generally follows the format:

   EUR1M=
│ │ └── Delimiter
│ └──── Delivery period code (1M = one month)
└─────── Currency code (EUR)


Typical delivery period codes are:

CodeMeaningCodeMeaning
ONOvernight6MSix months
TNTomorrow/Next9MNine months
SNSpot/Next1YOne year
SWSpot/Week2YTwo years
1MOne month
2MTwo months
3MThree months

Fwdquote

# Extract Forward RIC for EUR - 1-month
ld.get_data("EUR1M=", ["CF_NAME", "CF_BID", "CF_ASK", "NETCHNG_1","CTBTR_1", "CTB_LOC1"])
InstrumentCF_NAMECF_BIDCF_ASKNETCHNG_1CTBTR_1CTB_LOC1
0EUR1M=EURFWD=17.5217.621.27STANCHARTSIN

As highligted in the opening of this section, exploring the collection of FX deposit and forward markets across currencies, users can utilize chains, such as GBPFWD= or EURFWD=. For example:

fwdchain

# Utilizing the Chain class to extract the list of forwards for EUR
chain = Chain("EURFWD=")

ld.get_data(chain.constituents, ["CF_BID", "CF_ASK", "CF_SOURCE", "CF_OPEN", "CF_HIGH", "CF_LOW", "CF_CLOSE"])
InstrumentCF_BIDCF_ASKCF_SOURCECF_OPENCF_HIGHCF_LOWCF_CLOSE
0EURON=0.54110.5471STANDCHART<NA>1.302-0.5770.504
1EURTN=0.510.57NAB<NA>0.5570.5390.559
2EURSN=0.5460.55LLOYDS BANK<NA>0.5540.5470.54
3EURSW=3.773.95NAB<NA>3.873.853.77
4EUR2W=7.687.74STANCHART<NA>7.737.717.63
5EUR3W=11.5511.61STANDCHART<NA>11.611.5911.58
6EUR1M=17.5217.62STANCHART<NA>17.6316.7416.25
7EUR2M=32.5232.89BNP PARIBAS<NA>32.8132.5631.31
8EUR3M=46.5947.25BNP PARIBAS<NA>47.1446.7346.95
9EUR4M=60.4260.71COMMERZBANK<NA>61.5160.6261.5
10EUR5M=72.2873.47BNP PARIBAS<NA>73.5172.6373.39
11EUR6M=83.2484.34STANCHART<NA>85.0683.8984.93
12EUR7M=94.6795.23ING<NA>97.1795.2396.15
13EUR8M=104.55106.63BNP PARIBAS<NA>107.54105.63104.28
14EUR9M=117.17118.83STANCHART<NA>120.53118.18119.78
15EUR10M=127.0127.75COMMERZBANK<NA>131.21127.63130.45
16EUR11M=134.87137.96BNP PARIBAS<NA>140.18136.74138.02
17EUR1Y=143.03149.43SOC GENERAL<NA>151.59146.54151.11
18EUR15M=171.74176.6BNP PARIBAS<NA>180.32174.91177.29
19EUR18M=201.22203.36COMMERZBANK<NA>210.31203.32208.86
20EUR21M=226.73230.49STANCHART<NA>238.82230.36238.9
21EUR2Y=249.83260.11BNP PARIBAS<NA>267.67256.77266.45
22EUR30M=305.73314.26BOA<NA>321.34311.99261.25
23EUR3Y=356.71375.62STANDCHART<NA>386.1369.72378.67
24EUR4Y=472.57497.36STANDCHART<NA>517.27488.8499.07
25EUR5Y=595.24625.7STANDCHART<NA>652.71615.9628.12
26EUR6Y=722.0781.0ERSTE BANK<NA>793.25753.0737.0
27EUR7Y=853.0922.0ERSTE BANK<NA>925.77890.0877.0
28EUR8Y=1011.01026.0COMMERZBANK<NA>1063.01026.01001.0
29EUR9Y=1145.01162.0COMMERZBANK<NA>1205.01161.01144.0
30EUR10Y=1281.01300.0COMMERZBANK<NA>1352.741300.01307.07

In addition to the standard delivery-period codes listed above, LSEG may capture additional forward maturities (e.g., 2W, 3W, 5M, 7M, 11M, 15M, 18M, 21M, and multi‑year tenors). These represent extended or contributor-specific forward instruments and are included in chain RICs such as EURFWD=.

Outright Forwards

FX forwards are typically quoted as forward points (relative to spot). The outright forward is the all‑in price (spot ± points).
You can request an outright directly by inserting OR before the =:

  • RUB1MOR= — one‑month outright forward for RUB
  • EUR3MOR= — three‑month outright forward for EUR

Notes

  • A single RIC such as EUR1M= (without OR) is an outright instrument in many markets; contributors may publish both points and an outright field set.
  • The OR form is useful where an explicit outright instrument is published and you want to retrieve it directly.

While outright forwards describe carrying a single currency pair to a future settlement date, many dealers also quote direct forward curves for cross‑currency pairs (not just USD legs). These contributor‑quoted FX forward curves reflect actual market pricing for the cross itself—including its liquidity, funding differentials, and regional money‑market conditions—rather than a synthetic value inferred from two USD‑related legs.

Contributed Cross Forwards

Directly contributed cross‑currency forward prices provide the dealer‑quoted forward curve for a given currency pair across short‑dated, standard, and extended maturities. Practitioners use them to observe how the cross is priced independently of synthetic construction, compare providers across maturities, and capture forward points and outright levels for valuation or analytics.

Example (EUR crosses):

  • EURGBPFWD=
  • EURJPYFWD=
  • EURCHFFWD=
  • EURNOKFWD=
  • EURSEKFWD=
  • EURPLNFWD=

(Analogous contributed forward curves exist for other actively traded crosses—e.g., GBP/JPY, CAD/CHF, AUD/NZD—subject to contributor coverage.)

Non‑Deliverable Forwards (NDFs)

Some currency markets primarily trade in non‑deliverable forwards (NDFs) rather than deliverable forwards. In these markets, forward pricing is published as non‑deliverable outright forwards rather than standard deliverable forward instruments.

If a currency does not show forward instruments using the standard forward conventions, it may be because the market quotes NDFs instead. In Workspace, NDF instruments can be discovered using Advanced Search under: FX & Money → Non‑Deliverable Forward

This view lists all available NDF outright instruments, including their contributor, maturity (e.g., 1W, 1M, 3M, 6M), and corresponding RICs.

ndfs

These instruments can then be retrieved programmatically using the LSEG Data Library.

# Use Search to extract first 10 Non-deliverable Forwards (NDFs) RICs
# Note: Ignore 'Secondary Currency'
ld.discovery.search(
view = search.Views.STIRS,
filter = "RCSAssetCategoryLeaf xeq 'FX Non-Deliverable Forward Outright' and "
"RCSContributorType xeq 'sourceType:5'",
select = "CommonName,RIC"
)
CommonNameRIC
0US Dollar/Chinese Renminbi FX Non-Deliverable ...CNYNDFOR=
1US Dollar/Indian Rupee FX Non-Deliverable Outr...INRNDFOR=
2US Dollar/Indonesian Rupiah FX Non-Deliverable...IDRNDFOR=
3US Dollar/Egyptian Pound FX Non-Deliverable Ou...EGPNDFOR=
4US Dollar/Taiwan Dollar FX Non-Deliverable Out...TWDNDFOR=
5US Dollar/Malaysian Ringgit FX Non-Deliverable...MYRNDFOR=
6US Dollar/Korean Won FX Non-Deliverable OutrightKRWNDFOR=
7US Dollar/Philippine Peso FX Non-Deliverable O...PHPNDFOR=
8US Dollar/Brazilian Real FX Non-Deliverable Ou...BRLNDFOR=
9US Dollar/Vietnam Dong FX Non-Deliverable Outr...VNDNDFOR=

FX Forwards Calculator (FWDS)

In addition to individual forward RICs and chain displays, Workspace provides the FX Forwards Calculator (FWDS), a forward‑curve analytics application.

FWDS allows you to:

  • view forward points and outright forwards across standard and broken‑date periods
  • switch between contributor‑specific and composite curves
  • apply holiday and settlement‑date roll conventions
  • build custom date schedules
  • examine the forward curve visually and numerically

Unlike a chain RIC (e.g., GBPFWD=), FWDS is not a list of instruments; it is an interactive calculator that derives the forward curve using market spot rates, swap points, and date rules.

fwds

Deposits

Deposit rates represent the cost of borrowing or lending money in the short‑term money markets. They reflect the interest rate that banks quote for unsecured deposits over standard maturities such as overnight (ON), tomorrow‑next (TN), one week (1W), one month (1M), three months (3M), and so on. These instruments form the foundation of the short‑end of the yield curve and are widely used for pricing money‑market products, constructing curves, and benchmarking other interest‑rate instruments.

To construct a deposit RIC, you need the following components:

   EUR1MD=
│ |└─── Deposit code (MD = Money Market Deposit)
│ └──── Delivery period code (1M = one month)
└──────── Currency code (EUR)


![deposit quote](/img/chapter06//depquote.png)


```python
# Extract Deposit RIC for EUR - 1-month
ld.get_data("EUR1MD=", ["CF_NAME", "CF_BID", "CF_ASK", "CF_HIGH", "CF_LOW", "OPEN_PRC", "CF_CLOSE","BKGD_REF"])
InstrumentCF_NAMECF_BIDCF_ASKCF_HIGHCF_LOWOPEN_PRCCF_CLOSEBKGD_REF
0EUR1MD=UNICREDIT BEG1.92.22.061.951.91.9<EURDEPO=>

The same delivery periods apply as to forwards. Deposit RICs can be found by utilizing Workspace Search. For example, below is a search for RICs based on the currency code (EUR):

deposit rics

# Use Search to extract first 10 Deposit RICs based on the (EUR) currency
ld.discovery.search(
view = search.Views.STIRS,
filter = "RCSAssetCategoryLeaf xeq 'Wholesale Deposit' and "
"RCSContributorType xeq 'sourceType:5' and "
"RCSFirstCurrencyLeaf xeq 'Euro'",
select = "CommonName,RIC"
)
CommonNameRIC
0Euro DepositEURDEPO=
1Euro Deposit Rates0#EURD=
2Euro DepositEURDEPO=DE
3Euro DepositEURD=X
4Euro DepositEURDEPO=EU
5Euro 1 Month DepositEUR1MD=
6Euro 3 Month DepositEUR3MD=
7Euro 6 Month DepositEUR6MD=
8Euro Overnight DepositEUROND=
9Euro 1 Year DepositEUR1YD=

Forward Rate Agreements (FRAs)

Forward Rate Agreements (FRAs) are over‑the‑counter contracts that lock in an interest rate for a future borrowing or lending period. Rather than starting immediately, an FRA begins at a specified point in the future (the start month) and applies to a fixed tenor ending at a later expiry month. For example, a 3x6 FRA represents a contract that begins 3 months from today and ends 6 months from today—covering a 3‑month interest period. FRAs are commonly used to manage short‑term interest‑rate exposure, hedge future funding costs, or derive expectations of forward interest rates along the money‑market curve.

Forward rate agreements are built in the following way:

   EUR3X6F=
│ │ │└─── FRA identifier (“F”)
│ │ └──── Expiry month (6 = six months from today)
| └────── Start month (3 = three months from today)
└────────── Currency code (EUR)

FRA Quote

# Extract FRA for EUR...
ld.get_data("EUR3X6F=", ["CF_BID", "CF_ASK", "CF_HIGH", "CF_LOW", "OPEN_PRC", "CF_CLOSE","BKGD_REF"])
InstrumentCF_BIDCF_ASKCF_HIGHCF_LOWOPEN_PRCCF_CLOSEBKGD_REF
0EUR3X6F=2.6032.6092.6132.572.522.522<EURFRA>

FRA RICs can be found by utilizing Workspace Search. For example, below is a search for RICs based on the currency code (EUR):

fra

# Use Search to extract first 10 FRAs for (EUR) currency
ld.discovery.search(
view = search.Views.STIRS,
filter = "SearchAllCategory eq 'OTC Interest Rate Derivatives' and "
"RCSAssetCategoryLeaf xeq 'Forward Rate Agreement' and "
"RCSFirstCurrencyLeaf xeq 'Euro'",
select = "CommonName,RIC"
)
CommonNameRIC
0Euro Forward Rate AgreementEURFRA
1Euro 3 Month Forward Rate AgreementEUR3MFRA=
2Euro 6 Month Forward Rate AgreementEUR6MFRA=
3Multiple Currencies Forward Rate AgreementTOPFRA
4Euro 3MX6M Forward Rate AgreementEUR3X6F=
5Euro 6MX9M Forward Rate AgreementEUR6X9F=
6Euro 1MX4M Forward Rate AgreementEUR1X4F=
7Euro 2MX5M Forward Rate AgreementEUR2X5F=
8Euro 4MX7M Forward Rate AgreementEUR4X7F=
9Euro 5MX8M Forward Rate AgreementEUR5X8F=

Swaps

Interest‑rate swaps and basis swaps are core derivatives used to manage interest‑rate exposure, align funding costs across markets, and price fixed‑income and money‑market structures. A swap is an agreement between two parties to exchange cash flows based on predefined interest‑rate terms over a specified maturity.

Swaps in the money‑market context generally fall into two broad categories:

Interest-Rate Swaps (IRS)

Interest‑rate swaps (IRS) allow two parties to exchange interest‑rate cash flows in a single currency, typically exchanging a fixed rate for a floating benchmark such as EURIBOR, SOFR, SONIA, or TONA. These instruments are widely used for hedging, curve construction, pricing, and interest‑rate risk management.

Because swap markets span many currencies, indices, quoting conventions, and maturities, IRS instruments do not follow a single universal RIC structure. Instead, they tend to appear in families—groups of related swap instruments that share a common currency and floating‑rate index (for example, EURIBOR 1M or SOFR 3M). Within each family, you will find the individual RICs representing specific maturities (e.g., 1M, 3M, 2Y, 5Y, 10Y, etc.).

The most practical way to begin locating IRS RICs is to use Workspace Search to identify the relevant family first, and then select the specific maturity you need from that family.

irs

# Use Search to extract first 10 IRS family of RICs for (EUR) currency
ld.discovery.search(
view = search.Views.STIRS,
filter = "SearchAllCategory eq 'OTC Interest Rate Derivatives' and "
"IsPrimaryChain eq true and "
"RCSAssetCategoryLeaf xeq 'Interest Rate Swap' and "
"RCSFirstCurrencyLeaf xeq 'Euro'",
select = "CommonName,RIC"
)
CommonNameRIC
0Euro Interest Rate SwapEURIRS
1Euro 3 Month Interest Rate SwapEUR3MIRS
2Euro Annual Bond 6 Month Euribor Interest Rate...EURAB6EIRS=
3Euro 1 Month Interest Rate SwapEUR1MIRS
4Euro Annual Bond 3 Month Euribor Interest Rate...EURAB3EIRS=
5Euro Annual Money 1 Month Euribor Interest Rat...EURAM1EIRS=
6Euro Annual Bond 3 Month Euribor Interest Rate...EURIRS3M=ICAP
7Euro Annual Money 6 Month Euribor Interest Rat...EURIRS6E=TKFX
8Euro ESTR MAC Quarter 2 LCH Interest Rate SwapEUREMACL2=TWEB
9Euro Annual Bond 3 Month Euribor Interest Rate...EURIRSM=

Basis Swaps

Basis swaps involve exchanging floating‑rate interest payments, either within the same currency or across two different currencies. Each leg references its own money‑market benchmark (such as SOFR, EURIBOR, SONIA, or TONA), and the difference between the two floating legs forms the “basis.” These instruments play a central role in managing funding spreads, aligning liabilities across currencies, and handling cross‑market interest‑rate exposures.

Because basis swaps cover a wide range of currency pairs, indices, and maturities, there is no single uniform naming structure for the corresponding RICs. The most practical way to explore available basis‑swap instruments is simply to start with Workspace Search and then refine by the currency pair or maturity you’re interested in.

basis

# Use Search to extract first 10 Basis family of RICs...
ld.discovery.search(
view = search.Views.STIRS,
filter = "SearchAllCategory eq 'OTC Interest Rate Derivatives' and "
"IsPrimaryChain eq true and "
"RCSAssetCategoryLeaf xeq 'Basis Swap'",
select = "CommonName,RIC"
)
CommonNameRIC
0US Dollar SOFR vs 3 Month BSBY Basis SwapUSDSR3BYBS=TDS
1US Dollar SOFR vs 3M Libor IMM Basis SwapUSDSR3LIMM=FMD
2US Dollar 1 Year Basis SwapUSDSRFFBS=TWEB
3US Dollar SOFR vs Fed Funds Basis SwapUSDSRFFBSIM=FMD
4Euro 1 Month Euribor vs 3 Month Euribor Basis ...EUR1E3EBS=TWEB
5US Dollar SOFR vs Fed Funds Basis SwapUSDSRFFBS=
6Euro ESTR vs 3 Month Euribor Basis SwapEUES3EBSIM=BGCP
7Euro Eonia vs 3 Month Euribor Basis SwapEUEON3EBS=TWEB
8Euro Eonia vs 3 Month Euribor Basis SwapEURONE3EBS=TRDL
9Euro Eonia vs 3 Month Euribor Basis SwapEUREON3EBS=FMD

Zero Curves

Zero‑coupon curves are foundational tools used in pricing, discounting, and interest‑rate risk management. A zero curve represents the set of discount rates for specific maturities, derived from observable market instruments such as money‑market rates and interest‑rate swaps. These curves allow you to compute present values, forward rates, and risk measures across the entire term structure.

In Workspace, zero curves are provided as organized families, typically one per currency. Each family contains the full set of maturities that make up the curve (short‑dated out to long‑dated pillars). These curve families are accessed using dedicated identifiers or chain RICs.

zero curves

# Use Search to extract first 10 Zero Curve family of RICs...
ld.discovery.search(
view = search.Views.YIELD_CURVE_CONT_QUOTES,
filter = "SearchAllCategoryv2 eq 'Zero Curves'",
select = "CommonName,RIC"
)
CommonNameRIC
0US Dollar SB 1 Yr LIBOR OIS Discounted Zero Co...0#USDSBALDZ=R
1Markit US Dollar SB 3M Libor Zero Coupon Curve0#USDSBQLMPZ=R
2US Dollar SB 6M Libor Zero Coupon Yield Curve0#USDSBSLZ=R
3US Dollar SB 3M Libor Zero Coupon Yield Curve0#USDSBQLZ=R
4US Dollar Zero Coupon Yield Curve0#USDZ=R
5US Dollar 4PM Zero Yield Curve0#USDZ4PM=R
6US Dollar 4PM SOFR OIS Zero Coupon Yield Curve0#USDSROISZ4PM=R
7United states Government 1 Month Forward Bench...0#USGOV1MFBMK=R
8FED Interest Rate Probability Curve0#FEDWATCHZ=R
9US Dollar SB 1M Libor Zero Coupon Yield Curve0#USDSBMLZ=R

Volatilities

Volatilities measure the expected variability of an underlying financial instrument over time and form a core input into option pricing, risk management, and scenario analysis. In financial markets, volatility surfaces exist across multiple asset classes, reflecting how implied volatility varies by maturity, strike, and market convention. Workspace provides access to a wide range of volatility datasets, contributed by dealers, brokers, and exchanges, which can be explored and retrieved using the Search panel or programmatically using the LSEG Data Library.

FX Volatilities

Foreign‑exchange volatilities represent the implied volatility of FX options across different currency pairs, tenors, and strike structures. These vol datasets often include market conventions such as at‑the‑money volatilities, risk‑reversal quotes, and butterfly structures, all commonly used for pricing and hedging FX options. In Workspace, FX volatilities can be discovered directly through Search by exploring the FX options volatility universe and refining by currency pair or volatility type.

FX Volatilities

The following code segment applies the above default filter:

fx volatility taxonomy

# Use Search to extract first 10 FX Volatility RICs...
ld.discovery.search(
view = search.Views.STIRS,
filter = "SearchAllCategory eq 'FX & Money' and "
"(RCSAssetCategory xeq 'A:KB' or RCSAssetCategory xeq 'A:KD' or "
"RCSAssetCategory xeq 'A:KG' or RCSAssetCategory xeq 'A:KE' or "
"RCSAssetCategory xeq 'A:KH') and "
"(RCSFirstCurrencyLeaf eq 'Euro' and RCSSecondCurrencyLeaf eq 'US Dollar') and "
"RCSContributorType xeq 'sourceType:5'",
select = "CommonName,RIC,RCSAssetCategoryLeaf"
)
CommonNameRICRCSAssetCategoryLeaf
0Euro/US Dollar 25 Delta Risk ReversalEURRR25=25 Delta Risk Reversal
1Euro/US Dollar ATM OptionEURVOLO=FX At-The-Money Option
2Euro/US Dollar 25 Delta ButterflyEURBF25=25 Delta Butterfly
3Euro/US Dollar 10 Delta Risk ReversalEURRR10=10 Delta Risk Reversal
4Euro/US Dollar 1 Month ATM OptionEUR1MO=FX At-The-Money Option
5Euro/US Dollar 3 Month ATM OptionEUR3MO=FX At-The-Money Option
6Euro/US Dollar 2 Month ATM OptionEUR2MO=FX At-The-Money Option
7Euro/US Dollar 1 Year ATM OptionEUR1YO=FX At-The-Money Option
8Euro/US Dollar 6 Month ATM OptionEUR6MO=FX At-The-Money Option
9Euro/US Dollar Spot Week ATM OptionEURSWO=FX At-The-Money Option

Interest Rate Volatilities

Interest‑rate volatilities include the volatility surfaces associated with:

  • Caps & floors
  • Swaptions

These datasets capture how implied volatility varies across option maturities and underlying swap tenors, forming the basis for pricing interest‑rate derivatives and managing rate‑volatility exposure. Workspace provides access to a broad set of interest‑rate volatility instruments, which can be found via Search under the appropriate interest‑rate derivatives categories and further refined as needed.

For example, the following filter can be provided to pull down "Caps & floors" interest-rate volatilities:

IR Volatilities

# Programmatic discovery — Caps/Floors vol instruments (same scope as screenshot)
ld.discovery.search(
view = search.Views.STIRS,
filter = "IsPrimaryChain eq true and "
"SearchAllCategory eq 'OTC Interest Rate Derivatives' and "
"RCSAssetCategoryLeaf xeq 'Interest Rate Cap / Floor'",
select = "CommonName,RIC"
)
CommonNameRIC
0US Dollar SOFR ATM Caps/FloorsUSDSRCAPATM=ICAP
1US Dollar SOFR ATM Caps/FloorsUSDSRCAPATM=TRDL
2EURO ESTR ATM Caps/FloorsEURESCAPATM=TRDL
3EURO ESTR Positive Caps/FloorsEURESCAPV=FMD
4UK Pound Sterling SONIA Cap/FloorGBPSOCAPV=TRDL
5UK Pound Sterling SONIA ATM Cap/FloorGBPSOCAPATM=TRDL
6UK Pound Sterling SONIA ATM Cap/FloorGBPSOCAPATM=FMD
7Singapore Dollar Cap/FloorSGDCAPV=GFIS
8Singapore Dollar Cap/FloorSGDCAP=GFIS
9Swiss Franc SARON Wedge Caps/FloorsCHSAWEDGE=ICAP

Fixings

Fixings are published reference rates used across financial markets for valuation, settlement, index construction, and benchmarking. These rates are typically set at scheduled times by central banks, industry associations, or benchmark administrators, and include widely used reference rates such as EURIBOR, SONIA, SOFR, and various official spot‑rate fixings.

In Workspace, fixings can be located directly using Search, which allows users to refine by currency, rate name, contributor, or fixing type. Most workflows simply begin with Search and then apply the appropriate filters as needed. Although not required, the following Workspace apps can optionally assist users who prefer a curated or dashboard‑style view of money‑market and rates content.

AppHow It’s RelevantWhat Users Can Do With It
FixingsPurpose-built workspace for browsing reference-rate fixings by currency or interest-rate family.Select source, pair/index, date, tenor and fixing type; view intraday schedules and historical values; export or jump to related pages.
RVMM (Rates Views – Money Market)Consolidated dashboard of short‑end rates such as deposits, OIS, SOFR, SONIA, and related benchmarks.Monitor common fixings alongside other money‑market instruments; compare moves intraday; navigate to benchmark details.
RMMG (Rates & Money Markets Guides)Navigation hub that links to rates and money‑market tools, including areas where benchmark fixings are accessed.Discover related apps and jump to benchmark resources that complement fixing workflows.

When working with fixings in Workspace, one practical approach is to focus on a specific benchmark family and apply only the filters needed to return a well‑defined set of benchmark rates. In this example, the goal is simply to retrieve WM‑contributed FX forward fixings for a single currency pair. By selecting FX & Money as the universe, filtering to the WM Rates contributor, and narrowing by currency pair, Workspace presents the available benchmark forward fixings for that pair without requiring any deeper knowledge of fixing conventions. This provides a clean, controlled subset of instruments that can be reproduced programmatically using the same filtering logic.

fixing

# Programmatic discovery — Fixings
ld.discovery.search(
view = search.Views.STIRS,
filter = "SearchAllCategory xeq 'FX & Money' and "
"RCSAssetCategoryLeaf xeq 'FX Forward Benchmark EOD' and "
"RCSFirstCurrencyLeaf eq 'Japanese Yen' and RCSSecondCurrencyLeaf eq 'US Dollar'",
select = "CommonName,RIC"
)
CommonNameRIC
0Japanese Yen/US Dollar WMR 10 AM Tokyo OR FWD ...JPYUSDORTK10=WM
1Japanese Yen/US Dollar 3 Month FX Forward Benc...JPYUSD3MFIXTK10=WM
2Japanese Yen/US Dollar Overnight FX Forward Be...JPYUSDONFIXMTK10=WM
3Japanese Yen/US Dollar 1 Month FX Forward Benc...JPYUSD1MFIXTK10=WM
4Japanese Yen/US Dollar 6 Month FX Forward Benc...JPYUSD6MFIXMTK10=WM
5Japanese Yen/US Dollar 5 Year FX Forward Bench...JPYUSD5YFIXMTK10=WM
6Japanese Yen/US Dollar 3 Month FX Forward Benc...JPYUSD3MORMTK10=WM
7Japanese Yen/US Dollar 6 Month FX Forward Benc...JPYUSD6MFIXTK10=WM
8Japanese Yen/US Dollar Spot Week FX Forward Be...JPYUSDSWFIXTK10=WM
9Japanese Yen/US Dollar 2 Year FX Forward Bench...JPYUSD2YFIXMTK10=WM

The example above shows a complete workflow for retrieving one type of fixing using both the Workspace Search app and the Search API. The table below highlights additional categories that users commonly look for. Each row provides a brief description of how that category typically appears in Workspace and then lists the search terms appropriate for either Workspace Search or the Search API, depending on which method is better suited for that dataset. Users can follow the same pattern shown in the example—starting with the high‑level guidance in the table and refining their search as needed.

CriteriaHow it’s RelevantSearch Terms
FX Benchmarks (WMR)• Standard FX spot & forward fixings used for valuation, reporting, and benchmark alignment.
• In Workspace, typing “WMR” or “WM Rates” exposes these benchmark families and their constituents.
Workspace Search:
• Universe: FX & Money → All
• Contributor: WM Rates
• Instrument Type: FX Spot Benchmarks or FX Forward Benchmark EOD
• Currency / Second Currency: select pair (e.g., JPY / USD)
• Optional: filter by fixing window (e.g., “TK10”)
Overnight / Term RFR Benchmarks• Risk‑free reference rate benchmarks (e.g., Term SONIA, Term €STR) used in pricing and fallback workflows.
• In Workspace, typing “SONIA” or “ESTR/€STR” surfaces these families; opening them displays tenor instruments (e.g., 1M/3M/6M/1Y).
Workspace Search:
• Universe: Benchmarks & Curves → All Curves
• Keyword: “SONIA”, “ESTR/€STR”
• Contributor: FTSE
• Currency: e.g., British Pound (for Term SONIA)
• RIC Type: Quote
Swap‑Rate Benchmarks (ICE Swap Rate)• Regulated swap‑rate fixing sets (e.g., USD SOFR, GBP SONIA, EUR €STR) published as per‑tenor quotes.
• In Workspace, typing “ICE Swap” displays the swap‑rate family and its tenors as grouped results (even though no chain instrument exists).
Search API:
• Filter on:
  – IsChain ne true
  – StructureCommonName xeq 'US Dollar SOFR Ice Swap Rate'

Current List of All Currency Codes for Spot Rates

A

CurrencyRICCurrencyRICCurrencyRIC
Afghan AfghaniAFN=Albanian LekALL=Algerian DinarDZD=
Angolan KwanzaAOA=Argentine PesoARS=Armenian DramAMD=
Aruban FlorinAWG=Australian DollarAUD=Azerbaijani ManatAZN=
East Caribbean Dollar (Antigua & Barbuda)XCD=East Caribbean Dollar (Anguilla)XCD=Andorran EuroEUR=
Euro (Åland Islands)EUR=US Dollar (American Samoa)USD=

B

CurrencyRICCurrencyRICCurrencyRIC
Bahamian DollarBSD=Bahraini DinarBHD=Bangladeshi TakaBDT=
Barbadian DollarBBD=Belarusian RubleBYN=Belize DollarBZD=
Bermudian DollarBMD=Bhutanese NgultrumBTN=BolivianoBOB=
Bosnia & Herzegovina Convertible MarkBAM=Botswana PulaBWP=Brazilian RealBRL=
Brunei DollarBND=Bulgarian LevBGN=Burundian FrancBIF=

C

CurrencyRICCurrencyRICCurrencyRIC
Cabo Verde EscudoCVE=Cambodian RielKHR=Canadian DollarCAD=
Central African CFA Franc (BEAC)XAF=Cayman Islands DollarKYD=Chilean PesoCLP=
Chinese Yuan (Renminbi)CNY=Colombian PesoCOP=Comorian FrancKMF=
Congolese Franc (DRC)CDF=Costa Rican ColónCRC=Croatian EuroEUR=
Cuban PesoCUP=Curaçao/Caribbean Guilder*ANG=Czech KorunaCZK=

D

CurrencyRICCurrencyRICCurrencyRIC
Danish KroneDKK=Djiboutian FrancDJF=Dominican PesoDOP=

E

CurrencyRICCurrencyRICCurrencyRIC
Egyptian PoundEGP=Eritrean NakfaERN=Estonian EuroEUR=
Ethiopian BirrETB=Euro (euro area)EUR=US Dollar (Ecuador)USD=

F

CurrencyRICCurrencyRICCurrencyRIC
Falkland Islands PoundFKP=Fijian DollarFJD=CFP Franc (XPF)XPF=
Finnish EuroEUR=French EuroEUR=Faroese Danish KroneDKK=

G

CurrencyRICCurrencyRICCurrencyRIC
Gabon — CFA Franc (BEAC)XAF=Gambian DalasiGMD=Georgian LariGEL=
Ghanaian CediGHS=Gibraltar PoundGIP=Guatemalan QuetzalGTQ=
Guinean FrancGNF=Guyanese DollarGYD=

H

CurrencyRICCurrencyRICCurrencyRIC
Haitian GourdeHTG=Honduran LempiraHNL=Hong Kong DollarHKD=
Hungarian ForintHUF=

I

CurrencyRICCurrencyRICCurrencyRIC
Icelandic KrónaISK=Indian RupeeINR=Indonesian RupiahIDR=
Iranian RialIRR=Iraqi DinarIQD=Israeli New ShekelILS=

J

CurrencyRICCurrencyRICCurrencyRIC
Jamaican DollarJMD=Japanese YenJPY=Jordanian DinarJOD=

K

CurrencyRICCurrencyRICCurrencyRIC
Kazakhstani TengeKZT=Kenyan ShillingKES=Kuwaiti DinarKWD=
Kyrgyzstani SomKGS=

L

CurrencyRICCurrencyRICCurrencyRIC
Lao KipLAK=Lebanese PoundLBP=Lesotho LotiLSL=
Liberian DollarLRD=Libyan DinarLYD=

M

CurrencyRICCurrencyRICCurrencyRIC
Macanese PatacaMOP=Malagasy AriaryMGA=Malawian KwachaMWK=
Malaysian RinggitMYR=Maldivian RufiyaaMVR=Mauritanian OuguiyaMRU=
Mauritian RupeeMUR=Mexican PesoMXN=Moldovan LeuMDL=
Mongolian TögrögMNT=Moroccan DirhamMAD=Mozambique MeticalMZN=
Myanmar KyatMMK=

N

CurrencyRICCurrencyRICCurrencyRIC
Namibian DollarNAD=Nepalese RupeeNPR=Netherlands Antillean GuilderANG=
New Zealand DollarNZD=Nicaraguan CórdobaNIO=Nigerian NairaNGN=
North Macedonian DenarMKD=Norwegian KroneNOK=

O

CurrencyRICCurrencyRICCurrencyRIC
Omani RialOMR=

P

CurrencyRICCurrencyRICCurrencyRIC
Pakistani RupeePKR=Panamanian BalboaPAB=Papua New Guinean KinaPGK=
Paraguayan GuaraníPYG=Peruvian SolPEN=Philippine PesoPHP=
Polish ZłotyPLN=

Q

CurrencyRICCurrencyRICCurrencyRIC
Qatari RiyalQAR=

R

CurrencyRICCurrencyRICCurrencyRIC
Romanian LeuRON=Russian RubleRUB=Rwandan FrancRWF=

S

CurrencyRICCurrencyRICCurrencyRIC
Saint Helena PoundSHP=Samoan TālāWST=São Tomé & Príncipe DobraSTN=
Saudi RiyalSAR=Serbian DinarRSD=Seychellois RupeeSCR=
Sierra Leonean LeoneSLE=Singapore DollarSGD=Solomon Islands DollarSBD=
Somali ShillingSOS=South African RandZAR=South Korean WonKRW=
South Sudanese PoundSSP=Sri Lankan RupeeLKR=Sudanese PoundSDG=
Surinamese DollarSRD=Swedish KronaSEK=Swiss FrancCHF=
Syrian PoundSYP=

T

CurrencyRICCurrencyRICCurrencyRIC
New Taiwan DollarTWD=Tajikistani SomoniTJS=Tanzanian ShillingTZS=
Thai BahtTHB=Tongan PaʻangaTOP=Trinidad & Tobago DollarTTD=
Tunisian DinarTND=Turkish LiraTRY=Turkmenistan ManatTMT=

U

CurrencyRICCurrencyRICCurrencyRIC
Ugandan ShillingUGX=Ukrainian HryvniaUAH=UAE DirhamAED=
British Pound SterlingGBP=US DollarUSD=Uruguayan PesoUYU=
Uzbekistani SomUZS=

V

CurrencyRICCurrencyRICCurrencyRIC
Vanuatu VatuVUV=Venezuelan BolívarVES=Vietnamese ĐồngVND=

W

CurrencyRICCurrencyRICCurrencyRIC
(No current ISO‑4217 currencies begin with W)

X

CurrencyRICCurrencyRICCurrencyRIC
CFA Franc (BCEAO – West Africa)XOF=CFA Franc (BEAC – Central Africa)XAF=CFP FrancXPF=
East Caribbean DollarXCD=(Special Drawing Rights) SDRXDR=

Y

CurrencyRICCurrencyRICCurrencyRIC
Yemeni RialYER=

Z

CurrencyRICCurrencyRICCurrencyRIC
Zambian KwachaZMW=Zimbabwean Dollar (ZWL)ZWL=

In Brief: Foreign Exchange and Money Markets

FX and money‑market instrument RICs in Workspace follow a consistent, structured pattern. All FX‑related RICs begin with ISO 4217 currency codes, followed by additional components that specify tenor, delivery period, instrument type, and (optionally) a contributing institution.

For instruments derived from currency pairs, the RIC begins with the base currency + quote currency. Additional elements such as tenors (e.g., 1W, 1M, 3M, 6M), delivery codes, delimiters, and contributor mnemonics are appended in a prescribed order.

For example, consider the RIC: EURJPY6M=COBA

ComponentExampleDescription
Base currency (ISO 4217)EURFirst currency in the pair (the “base”).
Quote currency (ISO 4217)JPYSecond currency in the pair (the “quote”).
Tenor length6Numeric tenor amount (e.g., 1, 2, 3, 6, 12).
Tenor unitMW = weeks, M = months, Y = years.
Delimiter-Hyphen used for the forward/forward‑swap family in current listings.
Contributor code (optional)COBAMarket‑maker / venue mnemonic appended after the hyphen (e.g., COBA, ICAP).

summary

# Calculated Cross-Rates for GBPCHF=R
ld.get_data("EURJPY6M=COBA", ["CF_BID", "CF_ASK", "CTBTR_1"])
InstrumentCF_BIDCF_ASKCTBTR_1
0EURJPY6M=COBA-147.05-144.75COMMERZBANK

In Brief: Foreign Exchange and Money Markets examples

MarketChain RICsSuper RICContributor RIC
Spot ratesEFX=
AFX=
NFX=
EUR=EUR=BARL
Cross ratesEUR=
EURX1=
EURCHF=EURCHF=BARL
Forward ratesEURF=EUR1M=EUR1M=TTKL
Deposit ratesDM=
EURF=
EUR1MD=EUR1MD=TTKL
FRAsTOPFRAEUR1X4F=EUR1X4F=TTKL