Hi everyone 👋
I'm trying to retrieve historical data for a company using the Refinitiv Data Library, but I'm running into an issue where most of the fields return nulls. Here's the code I'm using:
import refinitiv.data as rd
response = rd.get_history(
universe=["AAPL.O"],
fields=[
"TR.AvgDailyValTraded5D", "TR.AvgDailyValTraded20D", "TR.AvgDailyValTraded30D", "TR.AvgDailyValTraded52W",
"TR.CompanyMarketCapitalization", "TR.F.IntrCovRatio", "TR.F.DPSComNetIssue5YrAvg", "TR.F.NetDebtToEBITDA",
"TR.DividendYield", "TR.F.EVToFCF", "TR.F.LeveredFOCF", "TR.FreeFloatPct", "TR.F.CashDivPaidComStockBuybackNet",
"TR.NumberofSharesOutstandingActual", "TR.GICSSectorCode", "TR.GICSIndustryCode", "TR.GICSSubIndustry",
"TR.GICSIndustry", "TR.GICSIndustryGroup", "TR.GICSSector", "TR.F.PriceToCFPerShr", "TR.PCReturnOnInvestedCapPct ",
"TR.WACC", "TR.HeadquartersCountry", "TR.F.DPSComNetIssue5YrCAGR"
],
start="2014-04-30",
end="2025-06-30"
)
The result shows a DatetimeIndex
with 4040 entries, but most fields have very few non-null values. For example, Company Market Capitalization
has 2798 non-null entries, but many others like Interest Coverage Ratio
or Free Cash Flow
have only ~10. Some fields like TR.PCReturnOnInvestedCapPct
are entirely null. GICS fields are all empty…
Interestingly, when I use rd.get_data()
instead, I get much more complete results for the same fields.
df = rd.get_data(
universe = ['AAPL.O'],
fields = ['TR.AvgDailyValTraded5D', 'TR.AvgDailyValTraded20D', 'TR.AvgDailyValTraded30D', 'TR.AvgDailyValTraded52W',
'TR.CompanyMarketCapitalization', 'TR.F.IntrCovRatio', 'TR.F.DPSComNetIssue5YrAvg', 'TR.F.NetDebtToEBITDA',
'TR.DividendYield', 'TR.F.EVToFCF', 'TR.F.LeveredFOCF', 'TR.FreeFloatPct', 'TR.F.CashDivPaidComStockBuybackNet', 'TR.NumberofSharesOutstandingActual',
'TR.GICSSectorCode', 'TR.GICSIndustryCode', 'TR.GICSSubIndustry', 'TR.GICSIndustry', 'TR.GICSIndustryGroup', 'TR.GICSSector',
'TR.F.PriceToCFPerShr', 'TR.PCReturnOnInvestedCapPct ', 'TR.WACC', 'TR.HeadquartersCountry', 'TR.F.DPSComNetIssue5YrCAGR']
)
df
Has anyone else experienced this? Is there a known limitation with get_history()
for these fields, or am I missing something in how historical data is structured?
Thanks in advance!