A user-friendly stock price prediction application powered by Machine Learning and Technical Analysis.
- π― Enhanced Predictions with Technical Indicators (RSI, MACD, SMA, EMA)
- π Smart Trading Day Detection - Predicts for next market open (handles weekends & holidays)
- π Flexible Training Periods - Choose 90, 180, or 360 days (90 recommended)
- π Clear Instructions - Built-in guide on startup
- π Smart Autocomplete - Search stocks as you type
- π Visual Charts - Interactive price charts with moving averages
Double-click: Run_Stock_Predictor.bat
bash run_stock_predictor.shpip install -r requirements.txt
cd Predictor
python stock_predictor_gui.pyWhen you start the app, you'll see clear instructions on the left side:
- Type in the "Stock Ticker Symbol" field
- Watch suggestions appear as you type
- Click on a suggestion or press Enter
Examples: AAPL (Apple), MSFT (Microsoft), TSLA (Tesla)
Choose how many days of historical data to use:
- 90 days (Recommended) - Best balance of speed and accuracy
- 180 days - More accurate, uses more history
- 360 days - Maximum accuracy, best for stable stocks
Select which data points to include in the prediction:
- β Price Change - Daily price movement (Recommended)
- β Trading Volume - Number of shares traded
- β Technical Indicators - RSI, MACD, SMA, EMA (Recommended)
Wait a few seconds for the prediction.
- Predicted Price - Closing price for the next trading day
- Current Price - Current market price
- Visual Chart - 90-day price history with moving average
Our prediction engine now uses professional technical analysis indicators:
- Measures momentum and identifies overbought/oversold conditions
- Range: 0-100 (70+ = overbought, 30- = oversold)
- Shows trend direction and momentum
- Helps identify buy/sell signals
- 20-day average price
- Shows overall price trend
- 12-day weighted average
- Responds faster to recent price changes
These indicators help the machine learning algorithm make more accurate predictions by providing additional market context.
| Ticker | Company | Sector |
|---|---|---|
| AAPL | Apple Inc. | Technology |
| MSFT | Microsoft | Technology |
| GOOGL | Technology | |
| AMZN | Amazon | Consumer |
| TSLA | Tesla | Automotive |
| META | Meta (Facebook) | Technology |
| NVDA | NVIDIA | Semiconductors |
| NFLX | Netflix | Entertainment |
| AMD | AMD | Semiconductors |
| DIS | Disney | Entertainment |
Tip: Type any ticker to search - we have 100+ stocks in our database!
- Best for: Most stocks, beginners
- Pros: Fast, good accuracy, captures recent trends
- Cons: May miss long-term patterns
- Best for: Stable stocks, seasonal patterns
- Pros: More accurate, sees medium-term trends
- Cons: Slower, may include outdated trends
- Best for: Long-term investments, stable companies
- Pros: Maximum accuracy, sees yearly patterns
- Cons: Slowest, may be influenced by old data
Recommendation: Start with 90 days and experiment with longer periods for better results.
- Python 3.8 or higher
- Internet connection (for real-time stock data)
- Any modern computer (Windows, Mac, or Linux)
Download from python.org
pip install -r requirements.txtRequired packages:
yfinance- Stock data from Yahoo Financescikit-learn- Machine learning algorithmsmatplotlib- Chart visualizationnumpy- Numerical computationspandas- Data analysis
cd Predictor
python stock_predictor_gui.pypip install -r requirements.txt- Check internet connection
- Verify ticker symbol on finance.yahoo.com
- Market may be closed (weekend/holiday)
- Try different training periods (90, 180, 360 days)
- Enable more features (Technical Indicators recommended)
- Remember: predictions are probabilistic, not guaranteed
pip install matplotlib- Data Collection - Fetches historical prices from Yahoo Finance
- Technical Analysis - Calculates RSI, MACD, SMA, EMA indicators
- Feature Engineering - Combines price data with technical indicators
- Machine Learning - SVM algorithm learns patterns from historical data
- Prediction - Forecasts next trading day's closing price
- Smart Scheduling - Automatically skips weekends and market holidays
AI-Project/
βββ Predictor/
β βββ stock_predictor_gui.py # Main GUI application
β βββ predictor.py # Core ML prediction logic
β βββ get_historical.py # Historical data + technical indicators
β βββ current_trading_day.py # Current day data processing
β βββ trading_day.py # Trading calendar & holidays
β βββ normalize.py # Data normalization
β βββ company_name.py # Company lookups
βββ Run_Stock_Predictor.bat # Windows launcher
βββ run_stock_predictor.sh # Mac/Linux launcher
βββ requirements.txt # Python dependencies
βββ README.md # This file
- Prakash Dhimal (@pdhimal1)
- Kevin Sanford
- β Technical indicators (RSI, MACD, SMA, EMA)
- β 90/180/360 day training options
- β Built-in usage instructions
- β Smart next-trading-day detection
- β Modern dark UI
- β Autocomplete for stocks
- β Visual charts
- β Easy launcher scripts
- β Basic command-line interface
- β Python 2.7 support
This software is for educational purposes only.
- Stock predictions are never 100% accurate
- Past performance doesn't guarantee future results
- Always consult a financial advisor before investing
- The authors are not responsible for any financial losses
Remember: Never invest money you cannot afford to lose.
- Start with 90 days - It's the sweet spot for most stocks
- Enable Technical Indicators - They significantly improve accuracy
- Try Popular Stocks First - AAPL, MSFT, GOOGL have good historical data
- Compare Different Periods - Run predictions with 90, 180, and 360 days
- Check the Chart - Visual trends often tell more than numbers
Happy Predicting! ππ
