import refinitiv.dataplatform as rdp import datetime rdp.open_desktop_session("your app key") def display_refreshed_fields(streaming_price, instrument_name, fields): current_time = datetime.datetime.now().time() print(current_time, "- Refresh received for", instrument_name, ":", fields) def display_updated_fields(streaming_price, instrument_name, fields): current_time = datetime.datetime.now().time() print(current_time, "- Update received for", instrument_name, ":", fields) def display_status(streaming_price, instrument_name, status): current_time = datetime.datetime.now().time() print(current_time, "- Status received for", instrument_name, ":", status) def display_complete_snapshot(streaming_prices): current_time = datetime.datetime.now().time() print(current_time, "- StreamingPrice is complete. Full snapshot:") display(streaming_prices.get_snapshot()) streaming_prices = rdp.StreamingPrices( universe = ['EURSWFSR=', 'EUR1MFSR=', 'EUR2MFSR=', 'EUR3MFSR='], fields = ['BID', 'ASK', 'PRIMACT_1'], on_refresh = lambda streaming_price, instrument_name, fields : display_refreshed_fields(streaming_price, instrument_name, fields), on_update = lambda streaming_price, instrument_name, fields : display_updated_fields(streaming_price, instrument_name, fields), on_status = lambda streaming_price, instrument_name, status : display_status(streaming_price, instrument_name, status), on_complete = lambda streaming_price : display_complete_snapshot(streaming_price) ) streaming_prices.open() streaming_prices.close()