MCP Hybrid Forecasting System
A professional-grade algorithmic trading system that combines advanced statistical models (ARIMA, ARIMA-GARCH) with machine learning (XGBoost) to generate stock trading signals with risk management and volatility analysis.
Features
Core Forecasting Models
ARIMA Time Series Forecasting: Professional statistical models for trend prediction with parameter optimization
ARIMA-GARCH Model: Volatility-aware forecasting for high-volatility and cryptocurrency stocks
XGBoost Hybrid Model: Machine learning residual correction with 10+ technical indicators
Hierarchical Ensemble Model: Advanced model combination for improved accuracy
Risk Management & Analysis
Volatility Classification: Automatic detection of high-volatility stocks with configurable thresholds
Confidence Scoring: Risk-managed buy/sell/hold decisions with confidence levels
Portfolio Analysis: Multi-portfolio comparison and analysis capabilities
Smart Caching: Intelligent result caching to avoid duplicate processing
MCP Server Integration
MCP Protocol Support: Full Model Context Protocol server implementation
Trading Tools: Analyze portfolios, compare strategies, find opportunities
Market Summary: Real-time market analysis and signal generation
Natural Language Queries: Find trading opportunities with intuitive queries
Production Features
Comprehensive Error Handling: Robust error handling and logging
Multi-Stock Support: Portfolio-level signal generation
Configurable Portfolios: Pre-configured portfolios (tech, defensive, emerging tech, etc.)
Flexible Output: CSV exports, charts, and detailed reports
Performance
R² Accuracy: 0.71-0.96 across major stocks
Feature Engineering: 10+ technical indicators including volume analysis, moving averages, momentum
Signal Quality: Conservative risk-managed decisions with confidence scoring
Cache Performance: 6-hour intelligent caching reduces redundant API calls
Quick Start
1. Installation
2. Basic Usage
Run Standard Analysis
Run with ARIMA-GARCH for High Volatility Stocks
MCP Server Mode
3. Configuration
Edit config/trading_config.json to customize:
Project Structure
Available Portfolios
The system includes pre-configured portfolios in config/trading_config.json:
Technology:
default
,tech_focus
,emerging_tech
,large_cap
Market Sectors:
financials
,healthcare
,energy
,utilities
,industrials
Investment Style:
growth
,defensive
,cyclical
Market Cap:
mega_cap
,large_cap
,mid_cap
,small_cap
Crypto-Related:
lenny_golub
(COIN, MSTR, HOOD, etc.)Defense:
defence
,defence1
Command Line Options
MCP Server Tools
When running as an MCP server, the following tools are available:
analyze_portfolio: Analyze specific portfolio with optional filtering
compare_portfolios: Compare multiple portfolios with analysis
find_opportunities: Natural language queries for trading opportunities
get_market_summary: Overall market analysis and signal distribution
refresh_data: Clear cache and refresh market data
Example queries:
"Find high confidence buy opportunities"
"Show defensive stocks with positive signals"
"Compare tech_focus vs defensive portfolios"
Dependencies
Core Requirements
Python 3.8+
pandas >= 2.0.0
numpy >= 1.24.0
yfinance >= 0.2.18
Modeling
scikit-learn >= 1.3.0
xgboost >= 1.7.0
statsmodels >= 0.14.0
arch >= 5.0.0 (for GARCH models)
pmdarima >= 2.0.4 (optional, for auto-ARIMA)
Visualization
matplotlib >= 3.7.0
seaborn >= 0.12.0
plotly >= 5.17.0
Development
pytest >= 7.4.0
jupyter >= 1.0.0
black >= 23.0.0
See requirements.txt for complete list.
Usage Examples
Example 1: Analyze Technology Stocks
Example 2: Compare Investment Strategies
Example 3: High Volatility / Crypto Stocks
Example 4: Custom Stock List
Output Files
Results are saved in the results/
directory:
CSV files:
trading_signals_YYYYMMDD_HHMMSS.csv
Charts: Portfolio comparison charts (if enabled)
Logs: Detailed execution logs with timestamps
Model Details
ARIMA Model
Auto-optimization of (p,d,q) parameters
Configurable order search space
AIC-based model selection
Handles non-stationary data with differencing
ARIMA-GARCH Model
Volatility modeling for high-risk stocks
Conditional heteroskedasticity handling
Automatic fallback to ARIMA if GARCH fails
Optimized for cryptocurrency and volatile tech stocks
XGBoost Hybrid
Residual-based correction
Technical indicators: RSI, MACD, Bollinger Bands
Volume-weighted features
Lag features and momentum indicators
Risk Management
The system implements multiple risk controls:
Volatility filtering: Excludes extremely volatile stocks
Confidence scoring: Only recommends high-confidence signals
Threshold-based signals: Configurable buy/sell thresholds
Position limits: Maximum position size constraints
Development
Running Tests
Code Formatting
Adding New Portfolios
Edit config/trading_config.json:
Troubleshooting
Common Issues
Import Errors
Data Fetch Failures
Check internet connection
Verify ticker symbols are valid
yfinance API may have rate limits
ARIMA-GARCH Not Available
Cache Issues
Performance Tips
Use caching: Default 6-hour cache reduces API calls
Smaller portfolios: Analyze fewer stocks for faster results
Adjust cache duration:
--cache-hours
parameter for your needsPre-optimize ARIMA: Use
preprocess_arima_params.py
for parameter tuning
Contributing
Contributions are welcome! Please:
Fork the repository
Create a feature branch
Make your changes
Add tests
Submit a pull request
License
This project is for educational and research purposes. See LICENSE file for details.
Disclaimer
This software is for educational purposes only. It is not financial advice. Always do your own research and consult with a qualified financial advisor before making investment decisions. Past performance does not guarantee future results.
Acknowledgments
Built with statsmodels, XGBoost, and yfinance
MCP protocol by Anthropic
Inspired by quantitative finance research and modern ML techniques
Contact
For questions, issues, or contributions, please open an issue on GitHub.
Version: 1.0.0 Last Updated: June 2025
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Enables algorithmic stock trading analysis by combining ARIMA, ARIMA-GARCH, and XGBoost models to generate buy/sell/hold signals with risk management, portfolio comparison, and volatility analysis for various market sectors.