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!
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.
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.thomsonreuters.com/eikon-apis/eikon-data-apis/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.
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.
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!
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'])
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.
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'])
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.
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:
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.