StockVision is a web application built using Streamlit that provides tools for stock analysis and prediction using machine learning and financial data visualization techniques.
StockVision allows users to:
- 🧠 Predict Stock Prices: Use historical data and a trained machine learning model to forecast future prices.
- 📊 Interactive Charts: Visualize historical closing prices and moving averages (100-day and 200-day).
- 📈 Financial Ratios: Analyze key financial ratios such as P/E ratio, P/B ratio, and market capitalization.
- 📉 Candlestick Charts: Generate candlestick charts for both historical and predicted stock prices.
- 📰 Latest News and Sentiment Analysis: Get the latest news headlines and sentiment analysis for selected stock tickers.
- Predictive Modeling: Utilizes a machine learning model to forecast stock prices for the next 10 days based on historical trends.
- Interactive Charts: Offers interactive plots for closing prices, moving averages, and financial ratios.
- Candlestick Charts: Provides visualization of stock price movements using candlestick charts for historical and predicted data.
- Financial Analysis: Displays key financial ratios to assist in fundamental analysis.
- Latest News and Sentiment Analysis: Fetches the latest news headlines and provides sentiment analysis for the selected stock tickers.
To run StockVision locally:
- Clone this repository:
git clone <repository_url> cd StockVision
- Install the required Python packages:
pip install -r requirements.txt
- Run the Streamlit app:
streamlit run app.py
- Find the Ticker in:
Ticker.txt file
- Access the application in your web browser at http://localhost:8501.
- Streamlit
- Pandas
- Matplotlib
- NumPy
- yfinance
- Keras (for loading the machine learning model)
- scikit-learn (for data preprocessing and linear regression)
- mplfinance (for candlestick charts)
- StockNews (for fetching latest news)
- Enter Stock Ticker: Input the stock ticker symbol (e.g., INFY.BO) in the text box.
- Predictions: View predicted stock prices for the next 10 days along with trend analysis.
- Time Series Analysis: Explore historical closing prices and moving averages for different time periods (1 month, 3 months, 6 months, 1 year, 5 years, or full data).
- Financial Ratios: Analyze key financial ratios like P/E ratio, P/B ratio, and market capitalization.
- Latest News and Sentiment Analysis: Get the latest news headlines and sentiment analysis for the selected stock ticker.
- Predictions vs Original: Compare predicted stock prices with actual prices for validation.
- Trend Analysis: Determine whether the stock is in an uptrend or downtrend based on predicted prices.
- Candlestick Charts: Visualize stock price movements using candlestick charts for both historical and predicted data.
- Latest News and Sentiment Analysis: Stay updated with the latest news headlines and understand the market sentiment related to your stock ticker.