Get All Mergers and Acquisitions on the Python API

I am trying to get All Mergers and Acquisitions on the Python API, I am wondering if there's a Symbol or instrument to just get all of them, this is the code I am using at the moment.

names_list = ['TR.DealDate;TR.DealStatus;TR.DealAcquiror;TR.DealTarget;TR.DealType;TR.DealSynopsis; TR.DealAnnouncementDate;TR.DealPercentSought;TR.DealPercentOwned, ']
start_date = str(20060101)
end_date = str(20180812)
df, error = ek.get_data(ALLCOMPANIESCODEHERE, names_list, {"SDate": start_date, "EDate": end_date})


cheers.

Best Answer

  • @luis22
    The deals screener has been released recently, which allows you to search for M&A deals based on a criteria set. To explore the deals screener click on the Screener button under Thomson Reuters tab in Excel ribbon. The screener defaults to the universe of public companies. You want to change the universe to Deals and then follow the wizard to construct the screener expression and insert it into Excel worksheet. Then you can copy & paste the screener expression into your Python script. E.g. the following call returns all deals announced between two dates:

    ek.get_data("SCREEN(U(IN(DEALS)),BETWEEN(TR.MnAAnnDate,20181101,20181103))",["TR.MnAAnnDate","TR.MnATarget","TR.MnATargetPermId","TR.MnAAcquiror","TR.MnAAcquirorPermId"])
    See also my comments on this thread.

Answers

  • @luis22, unfortunately not, you will have to build the list of companies manually.

  • Hi @Zhenya Kovalyov , So there is not a simple way of just getting all the most recent deals of the market? as you do here in your web app:

    image

  • The capability to search for deals is coming up shortly to the Screener app in Eikon Excel and to Eikon Data APIs. I'm afraid I don't have the exact timeframe, but it should be imminent.

  • Thanks a lot for this answer Alex. I just trying to add one more criteria to that search (Just want to get UK deals between a period of time) and I don't have available Excel to get the query so I am trying to build it manually, What I am doing wrong here?

    ek.get_data("SCREEN(U(IN(DEALS)),BETWEEN(TR.MnAAnnDate,20181101,20181103),IN(TR.MnATargetNation.code='GB'))",["TR.MnAAnnDate","TR.MnATarget","TR.MnATargetPermId","TR.MnAAcquiror","TR.MnAAcquirorPermId"]))

    Thanks in advance!

  • TR.MnATargetNation.code is not a valid criteria in deals screener expression. Here's the expression that returns deals announced between two dates where either the target or the acquirer is headquartered in the UK:
    "SCREEN(U(IN(DEALS)),BETWEEN(TR.MnAAnnDate,20181101,20181203),IN(TR.MnANationHQ(DealPartRole=T:A),'GB'))"
    I suggest to always construct the screener expression using the screener wizard in Excel and then copy & paste it from =TR function in Excel into Python script.

  • Your answers have been extremely helpful, thanks very much Alex.