This application is a stock trading and portfolio management system, providing a comprehensive platform for users to manage their stock investments. It includes functionalities for user management, share trading, portfolio management, and accessing real-time stock market news.
- User Registration, Login, and Management
- Bank Account Management
- Buy and Sell Shares
- Portfolio Management
- Watchlist Management
- Transaction History
- Real-Time Share Value Updates
- News Fetching from External API
Frontend: Angular, TypeScript Backend: Node.js, Express.js Database: MySQL API Integration: Marketaux API Others: CORS, Body Parser
Ensure you have the following installed: Node.js MySQL Server npm
- POST /api/user/signup: Register a new user
- POST /api/user/login: Login user
- POST /api/user/logout: Logout user
- POST /api/user/updateUser: Update user details
- POST /api/user/deleteUser: Delete a user
- POST /api/user/addBankAccount: Add a bank account
- POST /api/user/getBalance: Get user balance
- POST /api/shares/buys: Buy shares
- POST /api/shares/sells: Sell shares
- POST /api/shares/getPortfolio: Get user portfolio
- POST /api/shares/getTransactionsTable: Get user transactions
- POST /api/shares/getMostProfitable: Get most profitable shares
- POST /api/shares/calculatePortfolioProfit: Calculate portfolio profit
- POST /api/shares/calculateRealisedProfit: Calculate realized profit
- POST /api/shares/getAllOrders: Get all orders
- POST /api/shares/cancelOrder: Cancel an order
- POST /api/shares/addToWatchlist: Add a stock to the watchlist
- POST /api/shares/deleteStockFromWatchList: Delete a stock from the watchlist
- POST /api/shares/getWatchList: Get user watchlist
- GET /api/shares/getAllShares: Get all shares data
- GET /api/shares/updateShareValue: Update share values every 2 minutes
- POST /api/shares/getShareChartData: Get share chart data
- POST /api/getNews: Fetch latest stock market news
- POST /api/shares/getNewsletters: Get personalized newsletters