How to get average WACC per quarter for list of ISINs

Hello,
I have a list of ISINs, for which I'd like to obtain a quarterly time series of the Weighted Average Cost of Capital (WACC) for each ISIN. I'm aware that the WACC is available on a daily basis from Eikon; therefore, I'm looking for a function that will compute the average of the WACC within each quarter, for each firm in my list.
So far, my approach has been to download daily WACC data for my list of ISINs, and then to perform the quarterly averaging directly within Python. However, I don't really need the daily data; so spending the time to download it first just for the purposes of aggregating, and then discarding what took so much time to download, takes unnecessary resources (and also I worry about exceeding any limits in Eikon on download volumes).
The formula I'm using is the following (assuming I want five years of data)
data, error = ek.get_data(isinlist, ['TR.WACC.date', 'TR.WACC'],{'SDate':datetime.today().strftime('%Y-%m-%d'),'EDate':'Y-5','Frq':'D'})
I guess I'm looking for something like the following:
data, error = ek.get_data(isinlist, ['TR.WACC.date', QUARTERLYAVG('TR.WACC')],{'SDate':datetime.today().strftime('%Y-%m-%d'),'EDate':'Y-5','Frq':'D'})
Would you by any chance know if this is possible?
Thank you very much in advance!
Best Answer
-
The code snippet provided by @jason.ramchandani01 returns the value of WACC at the end of each quarter. I cannot think of a way to retrieve quarterly averages for WACC as timeseries. As an alternative to retrieving daily timeseries for WACC and aggregating them into quarterly averages in your code you could request a quarterly average. However this needs to be done separately for each quarter, which would reduce the volume of data you retrieve, but increase the number of requests you need to send as well as the retrieval time. Here's an example retrieving quarterly averages for the last 4 fiscal quarters
df = pd.DataFrame()
instr_list = ['IBM.N','F.N']
for i in range(4):
wacc_fld = f'AVG(TR.WACC(SDate=FQ{str(-i)},Frq=D,EDate=FQ{str(-i-1)}))'
tmp_df,err = ek.get_data(instr_list,
[f'TR.SMPeriodEndDate(Period=FQ{str(-i)})',
wacc_fld])
tmp_df.rename(columns={tmp_df.columns[-1]: 'Quarterly average WACC'},
inplace = True)
df = tmp_df.append(df)
df0
Answers
-
@AAMZ is this the kind of thing you were looking for?:
df, err = ek.get_data(
instruments = [
'VOD.L',
'GOOGL.O'
],
fields = ['TR.WACC(Frq=FQ,SDate=0,EDate=-9).date','TR.WACC(Frq=FQ,SDate=0,EDate=-9)']
)I hope this can help
0 -
@jason.ramchandani01 many thanks for the quick response
To understand better: does this function compute the average of the daily data within each quarter, before returning it as a quarterly time series? Or is returning the value of the WACC at the end of each quarter?
0 -
@Alex Putkov.1 Unfortunately I was out of office until now, and could not respond sooner. But I just wanted to thank you for this useful clarification and answer.
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
- 279 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
- 716 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 中文论坛