Inspiration

We have many programmers with experience in finance, and we thought it would be fun to combine our knowledge about the trading market with coding. The idea of making an algorithm that detects the best broker based on their transactions seems very useful in real life and motivated us.

What it does

This Python-based algorithm takes in the given raw datasheet and assesses the market makers based on their performance in three different categories: average ask-bid spread, volume, and percent of trades filled. The program first polishes the raw data and turns them into understandable statistics. It then ranks the brokers for each criteria and gives them a score between 1 and 100 based on their ranking. It will then compute a final overall score and use it to give market makers a final ranking. The first five are given additional detail about their data for each criteria.

How we built it

Our team did research on real market analysis to make sure that the criteria are effective at ranking market makers. We came up with mathematical formulas and algorithms to calculate the efficiency of the market maker in all spheres and then a final weight-based calculation to compute their final score + rank. We mainly used Python to code the logic and generate Excel sheets with the results (data + broker name + score + rank). We included code for the algorithm to work well on multiple different operating systems. We first brainstormed the logic behind the algorithm and then determined the most important components of our code. We then split the task between us and used used a GitHub repository to glue our code together.

Challenges we ran into

The calculations for the average bid-ask spread was especially challenging because the prices fluctuates throughout the day. We solved this problem by tracking all transactions made by a broker with their reference number and calculating the average of sells and the average of buys. That way, we used a formula to calculate the average spread with a simpler method that takes into consideration all the fluctuations.

Accomplishments that we're proud of

The successful ranking of the first five brokers and the breakthrough for the average bid-ask spread algorithm.

What we learned

We learned how to use a Python-based program to output a plot-based result, like an Excel sheet. It was pretty exhilarating.

What's next for Market Maker Assessment Algorithm for NBC Challenge?

We plan on adding more details on the top five broker's performance in each criteria by adding a comparison between their data and the average of the criteria. We also want to add graphs that analyze the volume of transactions over time intervals.

Built With

Share this project:

Updates