How to recreate DS.get_epit_vintage_matrix('USCONPRCE', date_from='1950-01-01') in DSWS library?

Hi,
I wish to create a vintage matrix as shown below for Economic Point in Time data. I created this using the 3rd party "pydatastream" library, with the following function:
DS.get_epit_vintage_matrix('USCONPRCE', date_from='1950-01-01').
I was advised to use the supported DSWS library instead to achieve this goal, however I am unable to do so with the limited documentation available
This vintage matrix contains all releases for this instrument, as well as all dates that this data was revised.
Could somebody please show me how to create this using the DSWS library?
Thanks!
Best Answer
-
Refer to the source code of pydatastream on GitHub, DS.get_epit_vintage_matrix uses a lot of requests to generate the data. You can translate the code that calls self.fetch to the get_data method of DatastreamDSWS.
For example, the code for get_epit_vintage_matrix looks like:
def get_epit_vintage_matrix(mnemonic, date_from='1951-01-01', date_to=None):
rel1 = ds.get_data (tickers=mnemonic,fields= ['REL1'], start=date_from, end=date_to, kind=1)
date_0 = rel1.dropna().index[0]
reld123 = ds.get_data(tickers=mnemonic, fields= ['RELD1', 'RELD2', 'RELD3'],
start=date_0, end=date_to, kind=1).dropna(how='all')
res = {}
for date in reld123.index:
try:
_tmp = ds.get_data(tickers=mnemonic, fields= ['RELV'],
start=date_0, end=date, kind=1).dropna()
except DatastreamException:
continue
res[date] = _tmp[mnemonic]
return pd.concat(res).RELV.unstack()ds represents the DSWS.Datastream.
0
Answers
-
Thanks, this worked. Just had to remove "DatastreamException" and fix one "mnuemonic" typo and it ran.
0
Categories
- All Categories
- 3 Polls
- 6 AHS
- 36 Alpha
- 166 App Studio
- 6 Block Chain
- 4 Bot Platform
- 18 Connected Risk APIs
- 47 Data Fusion
- 34 Data Model Discovery
- 690 Datastream
- 1.4K DSS
- 629 Eikon COM
- 5.2K Eikon Data APIs
- 11 Electronic Trading
- 1 Generic FIX
- 7 Local Bank Node API
- 3 Trading API
- 2.9K Elektron
- 1.4K EMA
- 255 ETA
- 559 WebSocket API
- 39 FX Venues
- 15 FX Market Data
- 1 FX Post Trade
- 1 FX Trading - Matching
- 12 FX Trading – RFQ Maker
- 5 Intelligent Tagging
- 2 Legal One
- 25 Messenger Bot
- 3 Messenger Side by Side
- 9 ONESOURCE
- 7 Indirect Tax
- 60 Open Calais
- 280 Open PermID
- 45 Entity Search
- 2 Org ID
- 1 PAM
- PAM - Logging
- 6 Product Insight
- Project Tracking
- ProView
- ProView Internal
- 23 RDMS
- 2K Refinitiv Data Platform
- 717 Refinitiv Data Platform Libraries
- 4 LSEG Due Diligence
- LSEG Due Diligence Portal API
- 4 Refinitiv Due Dilligence Centre
- Rose's Space
- 1.2K Screening
- 18 Qual-ID API
- 13 Screening Deployed
- 23 Screening Online
- 12 World-Check Customer Risk Screener
- 1K World-Check One
- 46 World-Check One Zero Footprint
- 45 Side by Side Integration API
- 2 Test Space
- 3 Thomson One Smart
- 10 TR Knowledge Graph
- 151 Transactions
- 143 REDI API
- 1.8K TREP APIs
- 4 CAT
- 27 DACS Station
- 121 Open DACS
- 1.1K RFA
- 106 UPA
- 194 TREP Infrastructure
- 229 TRKD
- 918 TRTH
- 5 Velocity Analytics
- 9 Wealth Management Web Services
- 95 Workspace SDK
- 11 Element Framework
- 5 Grid
- 19 World-Check Data File
- 1 Yield Book Analytics
- 48 中文论坛