REDI API L1 Stream
Hello Community,
This question is related to REDI API Python application on Windows using win32com.
I've been trying to stream L1 pricing data for a single instrument but keep getting the following error message. Would appreciate any guidance you may be able to offer. Thank you, Berat Pehlivanoglu.
(mach) PS C:\code\redi> & C:/Users/BeratPehlivanoglu/anaconda3/envs/mach/python.exe "c:/code/redi/Market Data Subscriber.py"
Traceback (most recent call last):
File "C:\Users\BeratPehlivanoglu\anaconda3\envs\mach\lib\site-packages\win32com\client\dynamic.py", line 86, in _GetGoodDispatch
IDispatch = pythoncom.connect(IDispatch)
pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "c:\code\redi\Market Data Subscriber.py", line 37, in <module>
q = win32com.client.Dispatch("REDI.CacheControl")
File "C:\Users\BeratPehlivanoglu\anaconda3\envs\mach\lib\site-packages\win32com\client\__init__.py", line 117, in Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch, userName, clsctx)
File "C:\Users\BeratPehlivanoglu\anaconda3\envs\mach\lib\site-packages\win32com\client\dynamic.py", line 106, in _GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "C:\Users\BeratPehlivanoglu\anaconda3\envs\mach\lib\site-packages\win32com\client\dynamic.py", line 88, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(
pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)
I have no issues when requesting L1 data;
(mach) PS C:\code\redi> & C:/Users/BeratPehlivanoglu/anaconda3/envs/mach/python.exe c:/code/redi/l1.py
2023-01-31 11:36:56 Symbol=135.30 Last=IBM success=True
2023-01-31 11:36:56 Symbol=20.07 Ask=T success=True
2023-01-31 11:36:56 Symbol=207.20 Bid=BA success=True
2023-01-31 11:36:56 Symbol=207.20 InvalidSymbol=InvalidSymbol success=False
(mach) PS C:\code\redi>
or when sending an order;
(mach) PS C:\code\redi> & C:/Users/BeratPehlivanoglu/anaconda3/envs/mach/python.exe "c:/code/redi/Order Entry - Equities & Futures.py"
True
win32com.client.VARIANT(16396, None)
(mach) PS C:\code\redi>
Best Answer
-
Thanks for reaching out to us.
According to this discussion, in Python, you will be able to consume L1 via get. CacheControl is not supported in Python.
Basic Python example code can be found on GitHub: https://github.com/Refinitiv-API-Samples/Example.REDI.Python.BasicExamples.
0
Answers
-
Hi @Jirapongse,
I had been working on the attached code sample that was available in the FTP site: sftp.redi.com. Attaching the file for your review. Abandoning the CacheControl route on Python, will explore the GetL1Value route to stream and circle back.
Thank you.
0 -
The code should look like this: https://github.com/Refinitiv-API-Samples/Example.REDI.Python.BasicExamples/blob/master/l1.py.
The output is:
0 -
@Jirapongse, I have run this code and have received the same response. Is there a line that could keep say Last for Symbol=IBM streaming on either an as updated basis or a certain period to be specified, say every 1 minute.
Thanks.
0 -
symbolVar.value = "IBM"
ret = q.GetL1Value(symbolVar, "Last", tgtVarName)
print(strftime("%Y-%m-%d %H:%M:%S", gmtime()) + " Symbol=" + tgtVarName.value + " Last" + "=" + str(symbolVar.value) + " success=" + str(ret))This is the line I'm looking to keep getting the value as the price changes.
0
Categories
- All Categories
- 6 AHS
- 37 Alpha
- 161 App Studio
- 4 Block Chain
- 4 Bot Platform
- 16 Connected Risk APIs
- 47 Data Fusion
- 30 Data Model Discovery
- 608 Datastream
- 1.3K DSS
- 577 Eikon COM
- 4.9K Eikon Data APIs
- 7 Electronic Trading
- Generic FIX
- 7 Local Bank Node API
- Trading API
- 2.7K Elektron
- 1.3K EMA
- 236 ETA
- 519 WebSocket API
- 33 FX Venues
- 10 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 20 Messenger Bot
- 2 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 59 Open Calais
- 264 Open PermID
- 39 Entity Search
- 2 Org ID
- PAM
- PAM - Logging
- 8.4K Private Comments
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 20 RDMS
- 1.4K Refinitiv Data Platform
- 367 Refinitiv Data Platform Libraries
- 3 Refinitiv Due Diligence
- LSEG Due Diligence Portal API
- 3 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.1K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 10 World-Check Customer Risk Screener
- 990 World-Check One
- 44 World-Check One Zero Footprint
- 45 Side by Side Integration API
- Test Space
- 3 Thomson One Smart
- 1.2K TR Internal
- Global Hackathon 2015
- 2 Specialists Who Code
- 10 TR Knowledge Graph
- 150 Transactions
- 142 REDI API
- 1.7K TREP APIs
- 4 CAT
- 21 DACS Station
- 117 Open DACS
- 1.1K RFA
- 103 UPA
- 172 TREP Infrastructure
- 224 TRKD
- 886 TRTH
- 5 Velocity Analytics
- 5 Wealth Management Web Services
- 59 Workspace SDK
- 9 Element Framework
- 5 Grid
- 13 World-Check Data File
- Yield Book Analytics
- 46 中文论坛