ESG Scores for M&A Targets
Hi,
How do I match my M&A deals screen with the targets ESG score? I would like to know the targets' ESG scores one year before the M&A deal (e.g. deal done in 2018, score for 2017).
I have done a screen of M&A deals made between 2010-2019 and need the targets ESG scores. However I cannot find an effective and quick way to do this.
Best Answer
-
Hi @hanken1,
I wrote up an example file for you, you may find it attached. Sheet1 replicates your screen search similarly to how one may code it in python as per this article. Sheet2 uses the PermIDs in Sheet1 to give ESG data where available. I only used some ESG metrics as an example, but you can use any relevant one.
To open the file, please rename it from 'ESG from Screener.txt' to 'ESG from Screener.xlsx'.
This Excel Workbook's Sheet1 has the following code in cell A1:
=TR("SCREEN(U(IN(DEALS)/*UNV:DEALSMNA*/), IN(TR.MnANationHQ,""FI""), BETWEEN(TR.MnARankDate,20100101,20190101)/*dt:Date*/, IN(TR.MnAPubStatus,""P""), CURN=USD)","TR.MnASDCDealNumber;TR.MnAAnnDate;TR.MnARankDate;TR.MnARankValueIncNetDebt(Scale=6);TR.M"&"nATarget;TR.MnATargetPermId;TR.MnATargetMacroInd;TR.MnATargetMidInd;TR.MnATargetNation;TR.MnAAcquiror;TR.MnAAcquirorPermId;TR.MnAAcquirorMacroInd;TR.MnAAcquirorMidInd;TR.MnAAcquirorNation;TR.MnATargetFinAdvisor(Concat='|');TR.MnAAcquirorFinAdvisor(Co"&"ncat='|');TR.MNADealId","CH=Fd")
And the following in Sheet2's cell B1:
=TR(Sheet1!F2:F192,"TR.RIC, TR.CommonName, TR.TRESGScore, TR.TRESGScore.date, TR.TRESGCScoreGrade, TR.TRESGCScoreGrade.date","Period=FY0 Frq=FY SDate=0 EDate=-4 CH=Fd RH=IN;fperiod",C2)
1
Answers
-
Hi @hanken1,
You may search for historical ESG data such as 'TR.TRESGScore', 'TR.TRESGCScoreGrade', 'TR.AnalyticEnvControv', or 'TR.EnvMaterialsSourcing' among others (that you can find in the Data Item Browser - a good overview of which can be found here).
This kind of search can be done for any chosen company; you may specify the company in question via its 'PermID' - which can be found in your M&A deals screen.
Would you mind telling us where you are trying to collect such information? In Python? Excel?
If in Python, you may want to use the Eikon Excel's Screener add-in (an example of which can be found here) to find the code needed to collect the data found in your M&A deals screen and then try the following as an example of how to collect the data you are looking for in CodeBook (a good overview of which can be found here):import refinitiv.dataplatform.eikon as ek
ek.set_app_key('DEFAULT_CODE_BOOK_APP_KEY')
test = ek.get_data("SCREEN(U(IN(DEALS)/*UNV:DEALSMNA*/), BETWEEN(TR.MnAAnnDate,20201217,20201218)/*dt:Date*/, IN(TR.MnAPubStatus,""P""), IN(TR.MnATargetRegionAndSubRegion,""WE"",""NM""), CURN=USD)",
["TR.MnASDCDealNumber;TR.MnAAnnDate;TR.MnARankDate;TR.MnATarget;TR.MnATargetPermId;TR.MnATargetMacroInd;TR.MnATargetMidInd;TR.MnATargetNation;TR.MnAAcquiror;TR.MnAAcquirorPermId;TR.MnAAcquirorMacroInd;TR.MnAAcquirorMidInd;TR.MnAAcquirorNation;TR.MnATargetFinAdvisor(Concat='|');TR.MNADealId;TR.MnATargetRegionAndSubRegion(Concat='|')"])
Companies = [str(i) for i in test[0]["Target PermID"]]
Fields = ['TR.RIC',
'TR.CommonName',
'TR.HeadquartersCountry',
'TR.TRBCEconomicSector',
'TR.TRESGScore',
'TR.TRESGScore.date',
'TR.TRESGCScoreGrade',
'TR.TRESGCScoreGrade.date',
'TR.AnalyticEnvControv',
'TR.AnalyticEnvControv.date',
'TR.EnvMaterialsSourcing',
'TR.EnvMaterialsSourcing.date']
df, err = ek.get_data(instruments = Companies,
fields = Fields,
parameters = {'SDate' : '0',
'EDate' : '-2',
'Period' : 'FY0',
'Frq' : 'FY'})
dfNote that - as per this example, not all companies have historical ESG data. The code above ought to return such data where available.
0 -
Hi,
Thank you for the answer. I am using Excel so do you have any idea how to do it there? @jonathan.legrand
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 中文论坛