question

Upvotes
Accepted
3 0 1 2

ESG Scores and Pillar Scores for M&A Target and Acquierer

HI,

I am using the Eikon API in Python. I am trying to get the ESG scores of the target companies at the day of the deal announcement and the acquirer scores on the deal announcement as well as 6 months after the deal is closed.

I have the following code that partially works (I am not getting the exact date as per the M&A announcement) How can I get this?

Also, it seems odd to me that doing this for Target and Acquirer, I only get a dataset of around 150 deals, shouldn't there be more?

Thanks in advance


#split dataset in two as otherwise too large for request

MA1 = ek.get_data("SCREEN(U(IN(DEALS)/*UNV:DEALSMNA*/), TR.MnAPctHeldAtAnnDate<50, TR.MnAPctOfSharesOwnedPostMerger>=50, IN(TR.MnAStatus,""U"",""C""), BETWEEN(TR.MnAAnnDate,20100101,20141231)/*dt:Date*/, IN(TR.MnAPubStatus,""V"",""P""), NOT_IN(TR.MnAMacroIndustry(DealPartRole=T:A),'GOVAGY'), TR.MnAIsForFinancialPurpose==false, TR.MnAIsSelfTender==false, 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='|')"])


#Check for ESG score of Target company at deal announcement (MA1)

Companies = [str(i) for i in MA1[0]["Target PermID"]]

Fields = ['TR.RIC',

'TR.CommonName',

'TR.HeadquartersCountry',

'TR.TRBCEconomicSector',

'TR.TRESGScore',

'TR.TRESGScore.date',

'TR.TRESGCScoreGrade',

'TR.TRESGCScoreGrade.date',

'TR.EnvironmentPillarScore',

'TR.EnvironmentPillarScore.date',

'TR.AnalyticEnvControv',

'TR.AnalyticEnvControv.date',

'TR.EnvMaterialsSourcing',

'TR.EnvMaterialsSourcing.date',

'TR.SocialPillarScore',

'TR.SocialPillarScore.date',

'TR.GovernancePillarScore',

'TR.GovernancePillarScore.date',

'TR.MnATotalDealValue',

'TR.MnATotalDealValue.date',

'TR.MnAConsiderationPercent',

'TR.MnAConsiderationPercent.date',

'TR.MnAConsiderationStructure',

'TR.MnAConsiderationStructure.date',

'TR.MnAStatus',

'TR.MnAStatus.date',

'TR.MnAAnnDate']

targetesg1, err = ek.get_data(instruments = Companies,

fields = Fields,

parameters = {'SDate' : "0",

'EDate' : "0",

'Period' : 'FY0',

'Frq' : 'FY'})

targetesg1.dropna(subset=['ESG Score'], inplace=True)

targetesg1

refinitiv-dataplatform-eikon#productrdp-apiesgpoint-in-time
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
7.2k 23 3 6

Hi @benedikt.von_boehmer,

1. With regards to getting exact dates as per the M&A announcement: I wrote an article related to this subject called 'Investigating the effect of Company Announcements on their Share Price following COVID-19 '; let me know if t helps. Otherwise, may I ask you if you looked for the relevent fields you are after in the DIB or using Search? (N.B.: Search uses the RD library which you have access to, but you may have to install it on your kernel.)

2. When it comes to the number of answers for your requests using EDAPI, I am thinking that you may reach the single-call limit... You can find details on this here (which I found here). Do let me know if this is not enough to explain the lack of data retrieved in your use case.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
3 0 1 2

Hi @jonathan.legrand ,

Thank you for the reply, it was very helpful. One remark for others facing a similar problem. The filter TR.MnAPctHeldAtAnnDate<50 seems to be removing most of the deals of interest as they have no value (N/A) in Refinitv instead of 0. Therefore, the filter also removes those. Should you want to apply the filter you can use it after downloading the dataset.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hi, I also want to pull M&A deal data and consider the criterion that the acquirer holds less than 50% shares of the target before the deal announcement and more than 50% shares of the target after the deal. What is the filter in Eikon that can be applied to consider this criterion, or what is the variable that needs to be added to the dataset to filter on this criterion later? I couldn't find it. Thank you for your help!

Hi @annalenadigeronimo, To find the right screener string to use in your call, please use the SCREENER app, as per the article:


Find Your Right Companies with SCREENER | Eikon Data APIs (Python) | Devportal (lseg.com)

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.