Why would I be getting the following inconsistent results for RIC 'BFO-'?
tmp_df = eikon.get_timeseries(["BFO-"], interval="daily", start_date = "2010-01-01T00:00:00-05:00", end_date = "2021-01-27T00:00:00-05:00", fields=['CLOSE']) print(tmp_df.head()) tmp_df = eikon.get_timeseries(["BFO-"], interval="daily", start_date = "2015-02-17T00:00:00-05:00", end_date = "2021-01-27T00:00:00-05:00", fields=['CLOSE']) print(tmp_df.head()) tmp_df = eikon.get_timeseries(["BFO-", "BFO-N"], interval="daily", start_date = "2010-01-01T00:00:00-05:00", end_date = "2021-01-27T00:00:00-05:00", fields=['CLOSE']) print(tmp_df.head())
Why is the 3rd query 1) returning values beginning in 2015 when the 2nd RIC has data, and not returning values from 2010> where 'BF0-' has valid data, and 2) Why is 'BFO-' returning NaN where in the previous query there were valid values.
@jwaldron The reason you are experiencing this is that you are hitting limits of the get_timeseries API call which (from this document) are:
To get around this you should iterate over RICs and concatenate - for example:
instruments = ['BFO-','BFO-N'] df = pd.DataFrame() for r in instruments: try: ts = eikon.get_timeseries(r,'CLOSE',start_date="2010-01-01T00:00:00-05:00",end_date="2021-01-27T00:00:00-05:00", interval='daily') ts.rename(columns = {'CLOSE': r}, inplace = True) if len(ts): df = pd.concat([df, ts], axis=1) else: df = ts except: pass df
I hope this can help.