For a deeper look into our DataScope Select SOAP API, look into:
Overview | Quickstart | Documentation | Downloads | Tutorials
Datascope Select depends on three things:
* Instrument List
* Report Template
* Schedule Template
Currency rates are delivered as RICs in the Instrument List. For example, EUR= would be used to capture the EURUSD rate. In an On Demand Extraction API call, the instrument list and fields are captured in the JSON. In this case, the schedule is immediate.
That means you still need to define what you are looking to capture with report template, which in pricing is namely a difference between Intraday, End of Day, or benchmarks.
EOD
EOD is somewhat erroneous for OTC products, so you're looking at a convention that is being defined by your market data provider. Refinitiv composite rates generally follow a local closing time. WM, for instance, takes the EOD rate as the London close. Our clients ideally should explicitly define this relative to their business need. Are you closing a portfolio of US stocks? Perhaps you should match this with the NYSE Close. Are you sourcing rates for comparison of European swaps? You may need to consider a London close.
Intraday
Intraday rates are available in DSS as well. This can give you a large amount of control of what rate you're snapping.
Benchmarks
Benchmarks will make a determination of a rate at a certain hour, usually with some normalization. This is usually fit for purpose for fund admins that need transparent methods of determining a portfolio's value.
Building an Instrument List
If you need a list of RICs, the syntax is usually fairly simple.
For US paired rates:
<ISO 4217 Currency Enumeration> + "="
e.g. JPY=
For Cross Currencies:
<ISO 4217 Base Currency Enumeration> + <ISO 4217 Secondary Currency Enumeration> + "="
e.g. EURGBP=
You may need to take particular care for countries that expire currencies, but that shouldn't be too difficult. You can also leverage the RIC Search tool on this Developers portal.
Instruments in Bulk
Datascope Select is great for a per instrument request, however, this doesn't always work for clients. Your needs may require a more bulk approach. Refinitiv does bulk well. We have products fit for purpose on bulk delivery, like Datascope Onsite and Datascope Equities. Datascope Equities uses something called "File Codes" to deliver bulk datasets. We can leverage this functionality in Datascope Select to call bulk amounts of data. BE CAREFUL! as your DSS contract is specifically contracted with instrument counts in mind. There are about 1500 instruments on the file code for global spots.
Looking at the user guide, you can call a filecode using the type 'FileCode' in the API Call for the instrument. File code 213 is used for all global spots and crosses. The "InstrumentIdentifiers" portion of your call will need to include this:
{ "Identifier": "213", "IdentifierType": "FileCode" }
To find what API calls deliver specific fields, you can use the Data content guide.
In tab "Field Descriptions", use a text filter on the "Field Name"column to find what you are searching. You can also use the "Short Definition" column to clarify what the field is about. The API call can be inferred from the "Report Name" column.
For more tips on this topic, see this section of the Programming without SDK tutorial.