Skip to main content
Glama

MCP Hybrid Forecasting

by j1c4b
setup_smart_system.pyโ€ข5.3 kB
# setup_smart_system.py - Setup script for smart trading system import subprocess import sys from pathlib import Path def install_package(package): """Install a package using pip.""" try: subprocess.check_call([sys.executable, "-m", "pip", "install", package]) return True except subprocess.CalledProcessError: return False def check_package(package_name, import_name=None): """Check if a package is installed and importable.""" if import_name is None: import_name = package_name try: __import__(import_name) return True except ImportError: return False def main(): """Setup the smart trading system.""" print("๐Ÿš€ SMART TRADING SYSTEM SETUP") print("=" * 50) # Required packages required_packages = [ ("yfinance", "yfinance"), ("pandas", "pandas"), ("numpy", "numpy"), ("scikit-learn", "sklearn"), ("matplotlib", "matplotlib"), ("seaborn", "seaborn"), ("arch", "arch"), # For ARIMA-GARCH ("statsmodels", "statsmodels") # For enhanced ARIMA ] print("๐Ÿ“ฆ Checking dependencies...") missing_packages = [] for package, import_name in required_packages: if check_package(package, import_name): print(f" โœ… {package}") else: print(f" โŒ {package} - missing") missing_packages.append(package) if missing_packages: print(f"\n๐Ÿ”ง Installing missing packages: {', '.join(missing_packages)}") for package in missing_packages: print(f" Installing {package}...") if install_package(package): print(f" โœ… {package} installed successfully") else: print(f" โŒ Failed to install {package}") else: print("\nโœ… All dependencies are already installed!") # Check file structure print(f"\n๐Ÿ“ Checking file structure...") required_dirs = [ "models", "config", "results", "results/smart_trading" ] for dir_path in required_dirs: path = Path(dir_path) if path.exists(): print(f" โœ… {dir_path}/") else: path.mkdir(parents=True, exist_ok=True) print(f" ๐Ÿ“ Created {dir_path}/") # Check config file config_file = Path("config/trading_config.json") if config_file.exists(): print(f" โœ… config/trading_config.json") else: print(f" โš ๏ธ config/trading_config.json not found") print(f" Create this file with your portfolio configuration") # Test imports print(f"\n๐Ÿงช Testing critical imports...") try: import yfinance as yf print(" โœ… yfinance") import pandas as pd print(" โœ… pandas") import numpy as np print(" โœ… numpy") from sklearn.ensemble import RandomForestRegressor print(" โœ… scikit-learn") try: import arch print(" โœ… arch (ARIMA-GARCH available)") garch_available = True except ImportError: print(" โš ๏ธ arch (ARIMA-GARCH not available)") garch_available = False try: import statsmodels print(" โœ… statsmodels") except ImportError: print(" โš ๏ธ statsmodels (enhanced ARIMA not available)") except ImportError as e: print(f" โŒ Import test failed: {e}") return False # Test basic functionality print(f"\n๐Ÿ”ฌ Testing basic functionality...") try: # Test data download print(" Testing data download...") data = yf.download("AAPL", period="5d", progress=False) if not data.empty: print(" โœ… Data download works") else: print(" โŒ Data download failed") except Exception as e: print(f" โŒ Data download test failed: {e}") # Final status print(f"\n๐ŸŽฏ SETUP SUMMARY:") print("=" * 50) if garch_available: print("โœ… Full ARIMA-GARCH functionality available") print("๐Ÿง  Smart model selection: ARIMA + ARIMA-GARCH") else: print("โš ๏ธ Limited functionality - ARIMA only") print("๐Ÿ’ก Install 'arch' package for full ARIMA-GARCH support") print(f"\n๐Ÿš€ READY TO USE:") print(" python enhanced_main.py # Show portfolios") print(" python enhanced_main.py lenny_golub # Smart analysis") print(" python enhanced_main.py all # Analyze all stocks") if not config_file.exists(): print(f"\nโš ๏ธ NEXT STEP: Create config/trading_config.json with your portfolios") sample_config = { "tickers": { "example_portfolio": ["AAPL", "MSFT", "GOOGL"], "lenny_golub": ["COIN", "GBTC", "HOOD", "MSTR", "PYPL"] } } print(" Sample config:") import json print(json.dumps(sample_config, indent=2)) if __name__ == "__main__": main()

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/j1c4b/mcp-hybrid-forecasting'

If you have feedback or need assistance with the MCP directory API, please join our Discord server