question

Upvotes
Accepted
1 0 0 0

ETF data for Issuer, AUM, NAV and other fields

I am currently trying to retrieve two types of data: Static Data and Historical Data. Below is a sample code that I've been working with, but I am having trouble identifying the correct fields to use. I would appreciate your help in correctly adjusting the Select or Fields sections.

  1. For Static Data, I need the following information: ETF Issuer, ETF Inception (Listed) Date, ETF Termination (Delisted) Date.
  2. For Historical Data, I need the following information: Number of Outstanding Shares, AUM, NAV, Tracking Error, Price, Adjusted Price, Return
  3. I tried using the fields from a search on the DIB in Refinitiv Workstation, but it didn’t work. Could you guide me on where and how to find the appropriate fields?

Below is my sample code:


# Static Data

rd.open_session(app_key=APP_KEY)


df_nyse = rd.discovery.search(

view = rd.discovery.Views.FUND_QUOTES,

filter = "AssetCategory eq 'ETF' and ExchangeName eq 'New York'",

select = "DocumentTitle,AssetCategory,DTSimpleType,ExchangeName,RIC,IssueISIN",

top = 10000)

print(df_nyse)


---

# Historical Data

rdp.open_platform_session(

APP_KEY,

rdp.GrantPassword(

username = RDP_LOGIN,

password = RDP_PASSWORD

)

)


df_historical = rdp.get_historical_price_summaries(

universe = 'IVV',

interval = rdp.Intervals.DAILY,

fields = ['BID','ASK','OPEN_PRC','HIGH_1','LOW_1','TRDPRC_1','NUM_MOVES','TRNOVR_UNS'],

)

print(df_historical)


#contenthistoricaletfstatic-data
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.

1 Answer

· Write an Answer
Upvotes
Accepted
1.8k 3 3 4

Hi @lj9967 , For ETFs, it is better to separate the data from exchange and the data from fund management company (Lipper data). For Lipper data, the field name typically starts with "TR.FUND". Below are some sample data fields you mentioned. If no period are specified, the API should return the latest available data.

import refinitiv.data as rd
rd.open_session()
df = rd.get_data(
          universe = ['IVV'],
          fields = [          
               'TR.CUSIP',
               'TR.FundLaunchDate',
               'TR.FundNAV',
               'TR.FundTotalNetAsset',
               'TR.FundCompany',
               'TR.FundTrackingError1Year',
               'TR.FundTrackingError5Year',
               'TR.FundTrackingError10Year',
          ] 
)
display(df)

This gives me the result in Codebook app on Workspace.


InstrumentCUSIPLaunch DateNAVFund CompanyTracking Error for 1 Year to Last Month EndTracking Error for 5 Years to Last Month EndTracking Error for 10 Years to Last Month EndIVV4642872005/15/2000565.408456BlackRock Fund Advisors0.0028630.0019220.002309

For Lipper's historical data, you can specify dates. e.g.:

import refinitiv.data as rd
rd.open_session()
df = rd.get_data(
          universe = ['IVV'],
          fields = ['TR.FundNAV(SDate=20240801, EDate=20240825, Curn=Native)',
                   'TR.FundNAV(SDate=20240801, EDate=20240825, Curn=Native).date']
)

display(df)

Shall give you:

    Instrument    NAV    Date
0    IVV    545.988134    2024-08-01
1    IVV    535.958628    2024-08-02
2    IVV    519.919766    2024-08-05
3    IVV    525.308683    2024-08-06
4    IVV    521.263715    2024-08-07
5    IVV    533.277902    2024-08-08
6    IVV    535.832836    2024-08-09
7    IVV    535.927338    2024-08-12
8    IVV    544.960967    2024-08-13
9    IVV    547.060133    2024-08-14
10    IVV    556.046823    2024-08-15
11    IVV    557.230747    2024-08-16
12    IVV    562.706533    2024-08-19
13    IVV    561.606761    2024-08-20
14    IVV    564.011572    2024-08-21
15    IVV    558.98436    2024-08-22
16    IVV    565.408456    2024-08-23
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.