Inspiration
We are all enthralled by the finance sector. We realized that accessible end-to-end financial backtesters that evaluate the effectiveness of an investment strategy simply do not exist. Thus, we implemented Volidity, an open-source financial backtester.
What it does
Our product provides a backtesting framework which allows users to test different trading strategies over historical data. First, we collected stock data from CSVs sourced from reputable sources such as yahoo finance api. Next, we allow the user to enter specified parameters that represent their trading strategy. These parameters include whether the trade is long or short and the bounds to buy or sell. Our trade expressions support foreign exchange pairs, commodities, and stocks and foreign income. Within each trade, we have risk management orders to support the needs of the user. To store and fetch data in a JSON format, we also use MongoDB Atlas. To see how the trades executed, our framework displays a variety of interactive and comprehensive graphs. These graphs visualize key metrics like volatility, profit, and more.
How we built it
We used open source frameworks to collect and compile data to be used in our project. We coded our backend in python, where we implemented classes and functions that display the accuracy of various trade algorithms. From there, we used seaborn and matplotlib to visualize the data.
Challenges we ran into
It was quite difficult to create universal units that were utilized by all functions. For example, standard deviations, which are fundamental to the product, have different meanings depending on the iteration.
Accomplishments that we're proud of
We are proud of the accuracy of Volidity and its ability to demonstrate a trade's accuracy over time. Additionally, we are proud of the way that we handled our codebase, which grew quite large and required critical thinking to merge and combine.
What we learned
We learned quite a lot about the mechanics of trades, utilizing trading data, and managing large repositories.
What's next for Volidity
As for future steps, we will integrate machine learning models to predict the optimal parameters for trading strategy. Additionally, we will develop a full-stack website to provide users with an interface, allowing people to create and save trading strategies and view the analyzed results on the web.
Log in or sign up for Devpost to join the conversation.