Note- Prod doesnt have python flask server running
A comprehensive stock market application built using Next.js, Express, and Firebase. This application allows users to manage their stock portfolio, get real-time stock data, forecast stock prices, and receive stock recommendations.
- Features
- Technologies Used
- Installation
- Usage
- API Endpoints
- Project Structure
- Contributing
- License
- Frontend Pages
- User Authentication: Secure user authentication using Firebase.
- Portfolio Management: Add, view, and manage your stock portfolio.
- Real-Time Data: Get real-time stock data for your portfolio.
- Stock Forecasting: Forecast stock prices using machine learning models.
- Stock Recommendations: Receive stock recommendations based on your portfolio.
- Historical Data: View historical stock data for different time ranges.
- Frontend: Next.js, React, Chart.js
- Backend: Express, Flask
- Database: Firebase Firestore
- Machine Learning: TensorFlow, Stable Baselines3
- APIs: Yahoo Finance (yfinance)
- Node.js and npm installed
- Python and pip installed
- Firebase account and project set up
- Clone the repository:
git clone https://github.com/yourusername/stock-market-app.git cd stock-market-app/frontend
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Open http://localhost:3000 in your browser.
- Navigate to the backend directory:
cd stock-market-app/server
- Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate
- Install dependencies:
pip install -r requirements.txt
- Start the Flask server:
python main.py
1. Set up Firebase Firestore and Authentication.
2. Update the Firebase configuration in the frontend.
- Navigate to the portfolio page.
- Click on "Add Stock".
- Enter the stock symbol and quantity.
- Click "Add".
- Navigate to the real-time data page.
- View the current prices of stocks in your portfolio.
- Navigate to the forecast page.
- Select a stock from your portfolio.
- Click "Forecast" to view the forecasted prices.
- Navigate to the recommendations page.
- Click "Get Recommendations" to view the recommended actions for your portfolio.
- Navigate to the historical data page.
- Select a stock and a time range.
- Click "Fetch Data" to view the historical prices.
- /forecast: POST - Forecast stock prices.
- /recommendations: POST - Get stock recommendations.
- /historic: GET - Get historical stock data.
- /api/stock: GET - Get real-time stock data.
users can sign up for an account or log in using their name, email and password and get authenticated using Firebase.
Manage your stock portfolio by adding, viewing, and managing your stocks.
View the current prices of stocks in your portfolio in real-time.
Forecast stock prices using machine learning models.
Receive stock recommendations based on your portfolio.
View historical stock data for different time ranges.