A comprehensive stock portfolio analysis and forecasting application built with Streamlit, featuring advanced analytics, risk management, and market sentiment analysis.
- Portfolio Tracking: Monitor your stock portfolio performance in real-time
- Advanced Forecasting: Multiple forecasting models including:
- ARIMA
- GARCH
- XGBoost
- LightGBM
- Ensemble Methods
- Polynomial Regression
- LSTM
- Risk Management:
- Value at Risk (VaR) calculations
- Maximum Drawdown analysis
- Stop-loss recommendations
- Risk-adjusted performance metrics
- Technical Analysis:
- RSI
- Moving Averages
- MACD
- Bollinger Bands
- Market Analysis:
- Sector performance tracking
- Market breadth indicators
- Market sentiment analysis
- News Analysis:
- Real-time news aggregation
- Sentiment analysis
- Source filtering
- Portfolio Optimization:
- Modern Portfolio Theory
- Efficient Frontier
- Risk-adjusted returns
- Python 3.8+
- pip (Python package installer)
- Clone the repository:
git clone https://github.com/gamzeakkurt/stock-forecasting-portfolio.git
cd stock-forecasting-portfolio
- Create a virtual environment (recommended):
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
- Install required packages:
pip install -r requirements.txt
- Run the application:
streamlit run app.py
The project uses the following main libraries:
- Streamlit
- yfinance
- pandas
- numpy
- scikit-learn
- plotly
- prophet
- tensorflow
- talib
- xgboost
- lightgbm
- textblob
- vaderSentiment
- Launch the application using
streamlit run app.py
- Configure your portfolio in the sidebar
- Select forecasting models and parameters
- View various analyses and visualisations
- Export reports in your preferred format
- Add/remove stocks
- Set quantity for each stock
- Track portfolio value over time
- Calculate returns and performance metrics
- Multiple model options for different forecasting needs
- Customizable forecast periods
- Confidence intervals
- Model comparison and evaluation
- Comprehensive risk metrics
- Portfolio optimisation
- Stop-loss recommendations
- Risk-adjusted performance analysis
- Sector performance tracking
- Market breadth indicators
- Sentiment analysis
- News impact analysis
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Project Link: https://github.com/gamzeakkurt/stock-forecasting-portfolio