As Wikipedia says: "Mergers and acquisitions (M&A) are transactions in which the ownership of companies, other business organizations or their operating units are transferred or combined. As an aspect of strategic management, M&A can allow enterprises to grow, shrink, and change the nature of their business or competitive position."
Many traders and investors are interested in predicting M&As in order to adjust their strategy according to an M&A upcoming event.
Having a rationally big dataset of company and M&A information we can try to analyze it and build a predictive model using different machine learning (ML) techniques. The model can be wrapped in a web application available for traders and investors.
- To collect a dataset of company and M&A information from Crunchbase (see the next section).
- Analyze the dataset and build a predictive model of M&A.
- Wrap the model into a web app that will display predictions of future M&A.
Crunchbase is a database of the startup ecosystem consisting of investors, incubators and start-ups, which comprises around 500,000 data points profiling companies, people, funds, fundings and events.
The good thing about Crunchbase is it provides a full-fledged API to the start-ups data it has. Please refer this page to learn more about the API.
A paid Crunchbase account can be provided by Crystalnix if it is necessary.
The project will consist of three major stages each of which depends on the previous one:
- Collecting the data.
- Building the model.
- Implementing a web app.
The data is supposed to be collected by using Crunchbase API. Less interesting but still viable option is to use the full 2013 dataset.
It would be nice to avoid using a lot of computational power (such as Amazon EMR) to produce the model. However we are not sure how large the dataset is going to be. In case additional computational power is necessary it is advised to contact to the project manager responsible for the project.
The web app can be described by the following user stories:
- As a user I can register to the application using my email and password or by using a social account (Google, Facebook, Twitter, etc).
- As a user after login I can see the dashboard with company names and probabilities they will be acquired.
Example of the app dashboard:
Comany Name | Chance to Be Acquired, % |
---|---|
Religare Health insurance | 69.97 |
Supremia Grup | 9.16 |
Alpine Jan-San | 55.58 |
Fitzroy Communications | 9.99 |
Connextions, Inc. | 40.04 |
No design work for the first version of the app is considered.
The preferable technologies are:
- Python scientific stack for data analysis and ML.
- Django for the web app.
- Deploy on Amazon Web Services infrastructure.
The requirements are not touch and are subject to discussion.
- It is possible to get data from Crunchbase via the REST API.
- The dataset is reasonably small in informative to be processed on a single machine.
- Collecting and processing data doesn't violate any Crunchbase license terms.
In case of any issues they should be reported as soon as possible. We prefer to make and spot mistakes quickly while it's cheap to do them and adjust the direction.
For purpose of our work CLI application has been developed. For run application just use 'python acquisition_prediction.py'.
For install application clone this repository in folder you need and run 'pip install -r requirements.txt'.
acquisition_prediction.py [-h] [--extract | --fit] [--user USER] [--password PASSWORD] [--scheme SCHEME]
Option | Description |
---|---|
--extract | Extract features from database and save them in files located by paths in settings.py. Also you should specify database credentials. |
--fit | Build prediction model and print best params and scores. |
Database credentials:
Credential | Description |
---|---|
--user USER | Database user |
--password PASSWORD | Database user password |
--scheme SCHEME | Database scheme |