Stock and Portfolio Analysis dashboard
Interactive web application
Project Overview and Objective
This interactive dashboard is a tool designed for visualizing stock and portfolio performance. It integrates real-time financial data of 25 largest stocks of the S&P based on volume. Furthermore, it allows for comparison between stocks, and portfolio performance versus a benchmark (the S&P).
I wanted to make a stock analysis dashboard. Mainly because of my financial background in my bachelor’s and because I think that building a dashboard with dynamic and real-time data would be more fun. However, many stock visualizations exist; there even is a template on the Shiny documentation website of a basic visualizer. Hence, I added the portfolio part and the option to compare multiple stocks.
In case you want to see the app immediately, the link can be found here.
Key Features
- Stock Visualization: Through visual representations, users can track the performance of individual and multiple stocks and observe market trends. The stock data can be retrieved dynamically, for a set period or custom dates.
- Portfolio Management: The dashboard enables insight into a personalized stock portfolio with monthly rebalancing. Users can add and remove stocks and compare the portfolio to the overall S&P500.
- Optimization Based on Sharpe Ratio: The application allows the user to calculate the optimal portfolio allocation based on a maximum Sharpe Ratio.
Technical Implementation and Learning Outcomes
Built using Shiny, a dynamic Python library for building interactive web applications, this project has been a deep dive into the practical aspects of dashboard creation and data visualization. I had some prior experience building UIs in Java but doing this in Python was completely new.
Throughout this project, I've gained significant expertise in:
- Dynamic Data Visualization: Crafting intuitive and informative visualizations that respond to user inputs.
- Interactive Application Design: Developing a responsive, user-friendly interface.
- General Stock Analysis using Python: Pulling data from Yahoo Finance and doing calculations in a regular and a portfolio setting.
Overall, it was very fun to do and a good challenge. Make sure to have a look at the dashboard here.