Index funds robo-advisor

In recent years, there has been a strong trend towards considering target or passive management funds, which aim for a specific return or replicate a stock index. It has been proven over the decades that adapting to the market is much safer and more profitable in the long run than trying to beat it. Although indexed funds represent one of the safest long-term investments, managing them manually is costly and not scalable. Plus, they still require active management and lack professional corrections, so you must be on the lookout to switch products.

The objective of this project is to replicate an indexed fund chosen by the user, and for the platform to make a purchase of the stocks according to the weights of each company in the index and subsequently make the necessary adjustment every so often to maintain those weights and be able to maintain the long-term investment with minimal management.

Graph representing the types of management over time
Problem

Managing funds manually can be tedious and complicated, and at times you may lose sight of the final objective with so many business variables.

The problem with indexed funds is that one is entirely dependent on platforms or banks that do not offer all the options. That is, there are significant limitations regarding the existing funds to which one can subscribe.

Indexed funds offered by the largest platforms in Spain
Proposed solution

Unlike conventional platforms, where there are several predefined funds assigned based on the investor profile, on our platform, it will be possible to upload a customized dataset with its list of corresponding companies in a selected index, and then purchase it through a broker. In this way, we can replicate a fund of choice, and the offer is unlimited (as long as most stocks are available at the broker).

The method used to address this problem is to develop an application in Python and Django that connects with data APIs and links to the Alpaca Markets broker to make an automatic purchase. After a set period (established as an example in one week), a rebalancing button of the index will appear, which will carry out the same process but adjusting the necessary weights to update the information to the current moment. There will also be useful investment tracking charts using the Matplotlib library, and the data API can be changed through a subscription made with a payment on PayPal.

Resources used for the implementation
Main features
Introductory video