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)
Best Answer
-
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:
- Building Search into your Application Workflow
- Find content and functionality using Refinitiv Data Library with Eikon Advanced Search
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.
0
Categories
- All Categories
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 33 Data Model Discovery
- 682 Datastream
- 1.4K DSS
- 613 Eikon COM
- 5.2K Eikon Data APIs
- 10 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 248 ETA
- 552 WebSocket API
- 37 FX Venues
- 14 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 23 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 275 Open PermID
- 44 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 22 RDMS
- 1.8K Refinitiv Data Platform
- 622 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 26 DACS Station
- 121 Open DACS
- 1.1K RFA
- 104 UPA
- 191 TREP Infrastructure
- 228 TRKD
- 915 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 84 Workspace SDK
- 11 Element Framework
- 5 Grid
- 18 World-Check Data File
- 1 Yield Book Analytics
- 46 中文论坛