For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
2 0 0 3

How to create an automatic data transfer between Eikon Monitor App and database (SQL)?

Hi,

I am currently looking into the uses of Reuters APIs. As I am new to the subject I still have questions regarding the extraction of data from Reuters Eikon to a database.

What I would like to create is a connection between the Reuters Eikon Monitor App and a SQL-database. Moreover, I would like to automatically transfer a list with ISIN-codes that I have in Reuters Eikon Monitor App to the SQL-database on a weekly basis.

Would something like this be possible?

a. If not, are there other solutions that could have a similar outcome?

b. If it is possible, which API would be most suited for this application?

Thank you in advance!

eikoneikon-data-apiworkspaceworkspace-data-apirefinitiv-dataplatform-eikonpython.net
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

10 Answers

Upvotes
Accepted
39.2k 75 11 27

@s.vermeer
Technically it's very possible and Eikon Data APIs would be best suited for the purpose. If your monitor list is named "Monitor 1", the following call retrieves the constituents of the list and the name, the RIC and the ISIN for each constituent:

ek.get_data('MONITOR("MONITOR 1")',['TR.CommonName','TR.RIC','TR.ISIN'])
You should however be aware that any data you retrieve from Eikon is for individual user's use only. If the data you retrieve from Eikon and store in your SQL database will be accessed by the same single user who's running Eikon application, this is perfectly fine. Also if all you intend to retrieve is the list of instruments in your Monitor app, that should be fine too. If however you retrieve Refinitiv data from Eikon, store it in your SQL database and this data will be accessed by multiple users or utilized in any kind of server side or enterprise application, then this data usage is not permitted under single user license you get with Eikon product. In the latter case I suggest you reach out to your Refinitiv account manager who will be happy to help you design the solution and select the product that best suits your use case.
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
2 0 0 3

Thank you Alex for your fast response. I indeed only intend to retrieve the list of instruments (including several columns) from my Monitor app, where the data in the SQL-database will only be accessible to the individual user.

According to the formula you provided, I can basically add more columns/variables that I want to import by adding "TR." to the name of a specific variable? For example:

"ek.get_data('MONITOR("MONITOR 1")',['TR.CommonName','TR.RIC','TR.ISIN', 'TR.COUPON', 'TR.ISSUE DATE', 'TR.MAT.DAT'])

Is this correct?

On this webpage "

https://developers.refinitiv.com/en/api-catalog/eikon/eikon-data-api/quick-start" I noticed that in the quick start guide for 'Eikon Data APIs' programming language Python is used. Is this the mandatory programming language for 'Eikon Data APIs'?

Thank you in advance.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvote
39.2k 75 11 27

You can indeed add more data items to the request, however they need to be valid. Field names 'TR.COUPON', 'TR.ISSUE DATE', 'TR.MAT.DAT' that you mentioned are invalid. See this tutorial, which talks at length about metadata discovery, i.e. how you can find field names and parameters to use with Eikon Data APIs.
Apart from Python library for Eikon Data APIs there are similar community owned libraries for R and for .NET. In future there will be more of these open source community owned libraries for other development environment.
You can also use DEX2 library of legacy Eikon COM APIs, which can be used in VBA or in any dev environment that supports COM and which also provides the capability you're interested in.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
2 0 0 3

Thank you for the information Alex!

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
2 0 0 3

Dear Alex,

Currently I am still testing what database would be best suited for my purpose. Would "Eikon Data APIs" still be suited if I wanted to use it for an Access database instead of a SQL-database?

Thank you in advance.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

There's no technical reason you couldn't use Eikon Data APIs to retrieve data from Eikon and store it in MS Access database. As I mentioned previously, there are 3 implementations of Eikon Data APIs at the moment: for Python, R and .NET. There are modules for Python and R that allow you to read & write data from/to MS Access database. And of course you can do the same in .NET. However if you'd like to do data retrieval from Eikon in MS Access VBA, then you should look at legacy Eikon COM APIs instead of Eikon Data APIs.

Dear Alex,

Thank you for your reply and provided solution to my query.

Upvotes
2 0 0 3

Hi Alex,


We have established a connection via Reuters API. However, we do not yet have a complete list of all currently active bonds that were issued by the Dutch State. At the moment we use a list that has all active bonds and the total sums up to 189 ISINs, whereas the list from Reuters shows a total of 127 instruments. Due to the available API of Reuters we would like to re-create this list via Reuters. I would like to share with you the list that we currently use (from another database) and in that Excel-list you will see ISINs that are marked red as those are the ones that are not found in the Reuters list. These ISINs contain 4 perpetual bonds and the others are all STRIPS. However, there are still a lot of STRIPS that were extracted from Reuters, so the exact reason for this is not clear to us. Unfortunately the Refinitiv Forum does not let me upload either CSV or Excel files. Is there a way to get this file to you?


Furthermore, we would like to know what the API formula/code is for the monitor codes TR.FiInstrumentTypeDescription and TR.FiGovernmentBondTypeDescription. Below you find a screenshot of this file.


Are you able to assist us with these problems?

Thank you in advance!




icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

This is the screenshot of the file that was extracted from Reuters and the yellow rule show the API 'formulas' that we need in order to extract the data via Reuters API.

reuters-api.png (132.7 KiB)
Upvotes
39.2k 75 11 27

@s.vermeer
I'm afraid from your post I cannot tell how you construct the list of Dutch Government bonds using Eikon, but looking at the screenshot you provided it seems that the list you retrieve from your database contains a bunch of matured issues. Could it be that the reason for the discrepancy is that the list you get from Eikon only contains active issues?

The forums on Refinitiv Developer Portal do not allow CSV or xlsx files as attachments, but a zip file is allowed. You can post a spreadsheet file by zipping it and attaching the zip file.

To retrieve TR.FiInstrumentTypeDescription and TR.FiGovernmentBondTypeDescription fields using Eikon Data APIs, you simply need to include these fields in the get_data call, e.g.

ek.get_data('NL0000003556',
            ['TR.FiInstrumentTypeDescription',
             'TR.FiGovernmentBondTypeDescription'])
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Upvotes
2 0 0 3

Hi Alex,

Thank you for your reply. The screenshot that I provided was of a list that was extracted from Reuters and it unfortunately also includes matured bonds. The list from our own database is indeed larger and it also only includes active bonds. Unfortunately I am not able to upload the file as the system now says that the "parser response failed" after uploading the file.

However, attached you will find a printscreen of the list. The rows that are marked red are the ISINs that are not found in the list that was extracted from Reuters. Are you able to create a similar list with the instrument description (bond, treasury certificate, Strips), ISIN-code and opening and maturity date? When the list is complete I would like to try to make it work via the API.


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

In the screenshot above you see that the ISINs that are not found are perpetuals. In the screenshot below you will see that all other ISINs that are marked red (not found in Reuters) are STRIPS.

Upvotes
39.2k 75 11 27

I have no problem retrieving data for most of these ISINs.

ek.get_data(['NL0000004802','NL0000002707','NL0000006286',
            'NL0010722013','NL0010722146','NL0013589294',
            'NL0013589237','NL0013589229','NL0010722237',
            'NL0010722286','NL0010722294','NL0013332539',
            'NL0010881835','NL0010722104','NL0010551357'],
            ['TR.FiIssueDate','TR.ADF_COUPON','TR.FiMaturityDate',
             'TR.FiInstrumentTypeDescription',
            'TR.FiGovernmentBondTypeDescription'])

returns

As you can see the exceptions are NL0013589294, NL0013589237, NL0013589229, NL0013332539 and NL0010551357. I'm not sure why there are no details for these ISINs in Eikon. I raised a support case on your behalf with Refinitiv Helpdesk to investigate the issue. You should expect to be contacted by Refinitiv Helpdesk shortly. For your reference the case number is 08211073.


icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

I see that you are extracting data via the API by adding the specific ISINs. This defeats the purpose of automating the process of retrieving this data via API, as the list should just show all ISINs of bonds that are currently still active without telling Reuters the specific ISIN-codes. When going your route, strange enough you find ISINs that are not shown in Reuters when extracting a list with all the right filters in place.

However, for the sake of automating this process, I want to create a list/file, with filters in place, that is basically being updated every time the API asks for new information. For clarity, the filters will not be altered (not regularly) and will be used as a template to evoke the same, but updated data every time the API asks for it.

Upvotes
39.2k 75 11 27

@s.vermeer

This thread has grown into a lengthy and hard to follow discussion on a bunch of rather unrelated topics. We strongly recommend always starting a new thread whenever you have a new question.
I'm still not clear on how you retrieve the list of bonds from Eikon. However if you're looking to use criteria search for bonds, your options are to either use =RSearch function in Excel or to use RSearch COM library. I used the following expression in Excel to retrieve the list of active Dutch government bonds:

=RSearch("BOND","IssuerOrgid:95794 IsActive:Yes","NBROWS:2000")

This function returns the list of 130 bonds including the perpetuals NL0000004802, NL0000002707, NL0000006286. The list excludes the strips NL0010722013, NL0010722146, NL0013589294, NL0013589237, NL0013589229, NL0010722237, NL0010722286, NL0010722294, NL0013332539, NL0010881835, NL0010722104, NL0010551357. Out of these 12 ISINs 5 that I mentioned in my previous response are missing details in Eikon, which is being investigated by Refinitiv Helpdesk. The remaining 7 are listed in Eikon as canceled issues, which is the reason they're excluded from the results when IsActive:Yes flag is set in the search criteria. If you believe these issues are indeed active and are listed in Eikon as canceled in error, I suggest you report it to Refinitiv Helpdesk for investigation, as this is a content issue, while these forums are dedicated to software developers using Refinitiv APIs and are moderated by API experts who don't necessarily have deep expertise in all types of content available from Refinitiv products. The Helpdesk can be reached by either calling Helpdesk number in your country or by using Contact Us capability in your Eikon application (from the main Eikon menu select Help - Contact Us).
And if you have any further questions about Refinitiv APIs, please start a new thread on this forum.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 5.0 MiB each and 10.0 MiB total.

Click below to post an Idea Post Idea