Inspiration
People that are rich can afford expensive analysts that build personal portfolios for them. However, people with less money don't have access to this option. Investing can be hard and scary for these people. This draws them away from investing, leaving them vulnerable to inflation, and market changes. We want to create a platform that makes investing easy for these people and gives them a good strategy based on their goals.
What it does
CaptiaList takes certain information about what your goals are and how you want to invest. Things like risk, available capital, and time frame. On the back end, we have clustered stocks according to key financial indicators using k-means clustering. Our program matches an investor's profile to a certain cluster and then recommends multiple stocks based on that cluster.
How we built it
We first used a financial api to import financial data into pandas data frames to do analysis on. Then, using python we implemented a clustering machine learning algorithm to find stocks that shared characteristics. We then had a mechanism to convert user preferences to choose the cluster that would fit them the best. That took most of the analytical work. We then created a REST API with django to inject our python code into a website. On the front end we used javascript to created a website that allows users to input their preferences and receive recommendations.
Challenges we ran into
We ran into a lot of trouble with getting pandas, keras, and sckit-learn to work properly. We had to tune many of the parameters of our clustering algorithm to get usable results. At first, all the stocks would go into one cluster or there would be too many clusters. Eventually we were able to find some parameters that matched. We also spent many hours trying to implement an LSTM into our model that would give better results, but in the end we were not able to make it usable by the deadline.
Accomplishments that we're proud of
We have a very clean front-end design that runs well. The machine learning we did accomplish also runs well.
What we learned
We learned a lot about machine learning and ways of implementing good systems.
What's next for CapitaList
We can include more robust analysis and more features. We can also get the predictive machine learning working better.
Log in or sign up for Devpost to join the conversation.