For example, it seemed like RDP is the easier option as it works if we use rd.get_history('0#.FTSE'), but if it is rd.get_history('0#TFMBM:') then I get error "No data to return"...
Asking on behalf of client, thanks.
For example, it seemed like RDP is the easier option as it works if we use rd.get_history('0#.FTSE'), but if it is rd.get_history('0#TFMBM:') then I get error "No data to return"...
Asking on behalf of client, thanks.
hi @candice.ting ,
Thank you for your participation in the forum. Is the reply below satisfactory in resolving your query?
If so please can you click the 'Accept' text on the left side of the appropriate reply? This will guide all community members who have a similar question.
Thanks,
AHS
Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.
Thanks,
AHS
It looks like the rd.get_history method is unable to expand this chain RIC (0#TFMBM:). We need to find a way to expand this RIC. If the client uses a desktop session, the client can use ek.get_data method to expand this chain RIC.
import refinitive.data.icon as ek ek.set_app_key('<app key>') df, err = ek.get_data(['0#TFMBM:'], ['DSPLY_NAME']);
The output is:
Then, I removed '/' from RICs and sent the list to the rd.get_history method.
instrument_list = df["Instrument"] instrument_list = map( lambda x: x if x[0]!='/' else x[1:], instrument_list) instrument_list = list(instrument_list) rd.get_history(universe=instrument_list)
The output is:
Hi Jirapongse,
Thank you for your answer. Can you also help incorporate the function to include start/end date parameters so user can specify the date range himself?
Thank you again,
Candice
The client can run help(rd.get_history) to see the available parameters of this method.
Parameters ---------- universe: str | list instruments to request. fields: str | list, optional fields to request. interval: str, optional The consolidation interval. Supported intervals are: tick, tas, taq, minute, 1min, 5min, 10min, 30min, 60min, hourly, 1h, daily, 1d, 1D, 7D, 7d, weekly, 1W, monthly, 1M, quarterly, 3M, 6M, yearly, 1Y start: str or date or datetime or timedelta, optional The start date and timestamp of the query in ISO8601 with UTC only end: str or date or datetime or timedelta, optional The end date and timestamp of the query in ISO8601 with UTC only adjustments : str, optional The adjustment count : int, optional The maximum number of data returned. Values range: 1 - 10000 use_field_names_in_headers : bool, optional Return field name in headers instead of title Returns ------- pandas.DataFrame Examples -------- >>> get_history(universe="GOOG.O") >>> get_history(universe="GOOG.O", fields="tr.Revenue", interval="1Y") >>> get_history( ... universe="GOOG.O", ... fields=["BID", "ASK", "tr.Revenue"], ... interval="1Y", ... start="2015-01-01", ... end="2020-10-01", ... )
To specify the date range, the client can use the start and end parameters. For example:
rd.get_history(universe=instrument_list, start="2022-06-01", end="2022-06-30")
The output is: