Upgrade from Eikon -> Workspace. Learn about programming differences.

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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
1 0 0 0

Historical bond ratings (Fitch and Moodys) time series for all US firms

Hi everyone

I need to retrieve the Fitch and Moody's long term issuer credit ratings for all (or substantially all) US firms, as at the end of each month for the period from 2003-01-31 to 2023-12-31.

I'm completely new to APIs and Python, but from what I understand an API will be the best approach to retrieve such a large dataset. (The equivalent S&P data was much easier to obtain as a simple output from CapitalIQ.)

Below is the script I've tried so far: I'm using the S&P500, MidCap400 and SmallCap600 to cover as much of the market as possible, as I don't know if there is a way to retrieve the entire universe of all US firms and I don't have the permissions for the larger Russell indices.

Unfortunately, it also looks like the script is returning only the first rating in the time series, rather than the new rating each time there is a change.

Thank you---any suggestions would be appreciated!


import eikon as ek
import pandas as pd
import numpy as np

df, err = ek.get_data(instruments=['0#.SPX','0#.MID','0#.SPCY'],
fields=['TR.CommonName',
'TR.TickerSymbol',
'TR.IR.RatingTypeDescription',
'TR.FiIssuerFitchLongRating',
'TR.FiIssuerMoodysLongRating',
'TR.IR.RatingDate'],
parameters={'SDate':'-21Y', 'EDate':'0', 'FRQ':'M'}
)
df.columns = df.columns[:-2].tolist() + ['Moody\'s Rating','Fitch Rating']
df.head(50)

#product#contentpython apitime-seriescredit-ratings
icon clock
10 |1500

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

Hi @lance.m ,

Thank you for your participation in the forum.

Are any of the replies below satisfactory in resolving your query?

If yes please click the 'Accept' text next to the most appropriate reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thank you,

AHS

Hi,

Please be informed that a reply has been verified as correct in answering the question, and marked as such.

Thank you,

AHS

1 Answer

· Write an Answer
Upvotes
Accepted
79.3k 253 52 74

@lance.m

Thank you for reaching out to us.

Requesting a lot of data via API can exceed the API limitations and cause the server timeout.

You can use multiple requests with the limited number of RICs or data range for each request instead. For more information, please refer to the Eikon Data API Usage and Limits Guideline.

Next, you can use the search API in the Refinitiv Data Library for Python to search for the entire universe of all US firms. Regarding the search API, please refer to the following articles:

The examples are also available on GitHub.

Regarding the retrieved data, you can use the Data Item Browser tool to check for the valid parameters for those fields. Then, contact the helpdesk team via MyRefinitiv to verify the retireved content. Typically, the data retreived by the get_data method is similar to the data retrieved by the Eikon Excel (=TR fuction) or Workspace Excel with same RICs, fields, and parameters.

icon clock
10 |1500

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

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

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