cis3296f24 / applebaum-final-project-section-005-applebaum

cis3296f24-classroom-applebaum-final-project-project-proposal-template created by GitHub Classroom
0 stars 0 forks source link

Financial Models #14

Open tur97019 opened 3 weeks ago

tur97019 commented 3 weeks ago

Keywords Section 005 Data Visualization of Finance Models and Stocks Python SQL frontend using vite? Visual Studio Code workspace

Project Abstract

This document proposes a novel application of a financial analytics website that grabs financial data about stocks and presents insights on the data through interactive graphs and charts. The user selects stocks to grab data on and then can run the data through select financial models. The output of the financial models will then be presented on the website using graphs and charts that the user can analyze key metrics and make more informed financial decisions.

High Level Requirement

Users can create accounts and then log-in. Then users will be enabled to analyze stocks by selecting specific financial assets, retrieving real-time and historical data, and running financial models like Discounted Cash Flow and Black-Scholes. Users configure model parameters and view the results as interactive visualizations that display key metrics, trends, and insights. A backend processes data for accurate calculations, and an SQL database stores user data for a personalized experience. The responsive, user-friendly interface supports in-depth exploration, helping users make informed financial decisions through clear, customizable charts and graphs.

Conceptual Design

The application will consist of both frontend and backend components, supported by a database for data storage.

The operating system will be with Windows systems.

The frontend will be built with Javascript and Vite, and the user-interface will be done with React.js. The backend will be designed as a RESTful API using Python (python has great data visualization libraries and tools). Some of the libraries will include NumPy and Pandas. We will most likely do Web scraping if we can't find an API that has all the data we need (Yahoo Finance has an API, but I'm not sure how robust it is yet).

Proof of Concept

https://github.com/ColeDirnbeck/FinancialModelsProject

Download all of the files in the repository, and then you can test the programs in the JupyterNotebook file BSModel.ipynb

Background

We want to use Python to develop several financial models. One of the financial models that we want to create is the Discounted Cash Flow Model, that computes the 'fair value' price of S&P 500 stocks. Another is the Black-Scholes Model, that computes the 'fair value' price of options contracts. We want to leverage web scraping techniques to collect relevant & live financial data from sources such as Yahoo Finance and other websites and stored the real data in a SQL database. After storing the financial data in a SQL database, we will use Python to process and analyze the data by applying our financial models. The SQL database will facilitate efficient data retrieval and storage, allowing us to update stock prices, financial metrics, and other key data points in real time. Once the data is processed, we will deploy a web application that visualizes the results of these financial models.

This web application will allow users to select stocks and options of interest, configure model parameters, and view outputs in interactive graphs and charts. Users data will be stored in a database to track their login information and possibly history.

Required Resources

I don't think we will need any outside-of-class resources.

omarshakir8 commented 3 weeks ago

This project is exciting because it combines finance, data visualization, and web development into a working tool by which users can inform their financial decisions. I also love the way it weaves together financial models from DCF to Black-Scholes with live data, offering meaningful insights through interactive charts. The balance of technical depth and real-world value is something particularly appealing, while the use of Python for the backend calculations together with Vite and React on the frontend perfectly aligns with technologies I enjoy working with.

I would love to make sure that my contributions will help improve how data retrieval is processed, try out APIs like Alpha Vantage for reliable stock data, and optimize SQL queries for speed. I would also be there to make the frontend more interactive, with customizable charts and real-time notification of market fluctuations. I would be very helpful in implementing secure login features and personalized dashboards to track user activities by balancing functionality and seamless user experience. The project has great potential, and I am excited about the opportunity to help bring it to life.

Gunlords commented 3 weeks ago

This project is truly impressive, and I would love the opportunity to contribute to your team. The way you’ve integrated finance, data visualization, and web technologies makes this a powerful tool for financial decision-making. I’m especially excited about the use of models like Discounted Cash Flow and Black-Scholes combined with live data, which will provide meaningful insights through interactive charts.

khanhquocng2801 commented 3 weeks ago

Hi Cole, I really like the idea of integrating other class on to this project. Since it's a financial/ machine learning integration app, I would love to join your team on making this one because I had have a chance to sneak into some of machine learning class, principle of data science class. I think your project is pretty decent enough, we just need to enhance UI and front end to make it a super good looking website!

tus29603 commented 3 weeks ago

I like the idea of this project and think it has a lot of potential! I’d be interested in working on it because I have some experience in app development. If we end up working together, I’d be happy to contribute to either the front end or the database part based on my experience. I’m also open to learning new things, so I’m flexible in terms of what I can take on to make this project a success.