- Simulate market/limit buy and sell orders using real-time stock data
- Create separate wallets to test different strategies
- Setup watchlists to easily view different sets of stocks
- Examine detailed information about a company and recent news related to its stock
- View insights about today's top gainers/losers, congress trading activity, AI price prediction, and more
- Communicate with other users on the community forums
This project simulates stock market activity using an Angular (TypeScript) frontend and a Django Rest Framework (python) backend. It's ideal for learning about web development, API integration, and financial technology.
Before running the project, install the following tools:
| Software | Purpose | Download Link |
|---|---|---|
| Git | To clone the project repository | https://git-scm.com/ |
| Node.js | To run the frontend (React) | https://nodejs.org/ |
| Python 3.9+ | To run the backend (Python API) | https://www.python.org/ |
| MySQL | Backend database | https://www.mysql.com/ |
| (Optional) VS Code | Recommended code editor | https://code.visualstudio.com/ |
git clone https://github.com/sean21307/stock-market-simulator.git
cd stock-market-simulatorcd frontend
npm install -f
npm startThis starts the frontend at: http://localhost:4200
cd ../backend
python -m venv venv-
Windows:
venv\Scripts\activate
-
macOS/Linux:
source venv/bin/activate
pip install -r requirements.txtCreate a .env file in the backend folder and add:
DB_PORT="3306"
DB_NAME="stock-market-schema"
DB_HOST="localhost"
DB_USERNAME="your_mysql_username"
DB_PASS="your_mysql_password"
API_KEY="your_fmp_api_key" # FMP (Financial Modeling Prep) API Key
HUGGING_FACE_TOKEN="hf_your_token" # Hugging Face API Tokenπ Replace the placeholders with your actual credentials and API keys.
Be inside the root backend folder with virtual environment activated:
python manage.py migrateBe inside the root backend folder with virtual environment activated:
python manage.py runserver- Make sure MySQL is installed and running before starting the backend.
- Frontend runs on port
4200.
After completing all the installation steps above, you can use the start_project.py script to automatically run the project. This script will launch both the frontend and backend servers for you.
Simply run:
python start_project.py- Install Python and pip
- Install MySQL and create a database
- Get a Free FMP API Key
- Get a Hugging Face Token
If you get stuck, feel free to open an issue or ask for help!





