Inspiration

India has 2 stock markets called BSE and NSE. We made an observation that the same stock is sometimes listed in both exchanges at different prices. For example a stock 'Tata Motors' is listed at 423.55 rupees in BSE while it is at 423.00 rupees in NSE. By buying the stock in NSE and selling it in BSE, an investor can make a relatively safe profit of 0.55 rupees. When this transaction takes place, it helps equalize the markets further contributing to market efficiency.

What it does

The program grabs data for several selected stocks from both NSE and BSE and compares the differences in price. It then ranks stocks in the order of potential profit so that the investor can make an easy decision. It also helps a user search an individual stock.

How we built it

We used the nsepython and bsedata web scraping python libraries to pull data from the respective websites. Using various python functions, we sorted and arranged the data to make it appealing to the user.

Challenges we ran into

The pre built webscrapers that were used in this project were very rudimentary and had to be modified to suit our needs. The difference in indexing between NSE and BSE made it difficult to create a truly unlimited database to access.

Accomplishments that we're proud of

We modified the bsedata library to suit our needs. This was our first time modifying a library.

What we learned

We learnt the inner parts of a library and we enhanced our skills in python. We learnt a lot about multiple stock exchanges, arbitrage and financial markets.

What's next for SULE Arbitration Project

To create custom webscrapers to make a truly unlimited and automatic arbitrage system and expand into the USA market. Create an AI bot to take into account trading fees and lot size and available margin to automatically execute trades at specific times to maximise profit and minimise risk.

Built With

Share this project:

Updates