MDPS v2.0 is a comprehensive trading system that combines advanced machine learning models, real-time market analysis, and sophisticated risk management in a powerful PyQt desktop application.
- Multi-Model Prediction Engine: LSTM, XGBoost, Random Forest, SVM, and Neural Networks
- Real-time Market Data Processing: Direct MetaTrader 5 integration
- Advanced Technical Analysis: Chart patterns, indicators, and market structure analysis
- Risk Management System: Portfolio optimization and position sizing
- Strategy Backtesting: Historical performance evaluation and optimization
- Live Performance Monitoring: System resources and trading metrics
- Professional Trading Dashboard: Multi-tab interface with real-time updates
- Advanced Charts: Interactive PyQtGraph-based visualization
- System Monitoring: Real-time CPU, memory, and network monitoring
- Model Management: Train, test, and deploy ML models with performance tracking
- Connection Manager: Enhanced MT5 connection with auto-reconnect and monitoring
- Customizable Settings: Comprehensive configuration management
- Chart Pattern Recognition: Automated detection of key patterns
- Market Structure Analysis: Support/resistance levels and trend analysis
- External Factors Integration: Economic indicators and market sentiment
- Data Quality Monitoring: Real-time data validation and cleaning
- Knowledge Graph Visualization: Relationship mapping between market factors
- Python 3.9 or higher
- MetaTrader 5 (for live trading)
- Windows/Linux/macOS (tested on all platforms)
-
Clone the repository
git clone https://github.com/your-repo/mdps.git cd mdps -
Install dependencies
pip install -r requirements.txt
-
Launch MDPS
# Preferred unified entrypoint python -m mdps # Or legacy UI launcher python launch_mdps.py
If you prefer to install dependencies manually:
# Core dependencies
pip install PyQt5>=5.15.0 numpy>=1.21.0 pandas>=1.3.0 scikit-learn>=1.3.0
# UI and visualization
pip install pyqtgraph>=0.13.0 matplotlib>=3.4.0 plotly>=5.0.0
# Trading and data
pip install MetaTrader5>=5.0.45 ccxt>=3.1.0 yfinance>=0.2.0
# Machine learning
pip install tensorflow>=2.13.0 torch>=2.0.0 xgboost>=1.7.0 lightgbm>=4.0.0
# System monitoring
pip install psutil>=5.9.0
# Additional utilities
pip install python-dotenv loguru aiohttp websocketsRun the enhanced launcher with splash screen:
python launch_mdps.py- Open the MT5 Connection & Control tab
- Enter your MT5 credentials:
- Login ID
- Password
- Server name
- Click Connect to MT5
- Monitor connection status in the Monitoring tab
- Use the menu: File โ Start MDPS (Ctrl+S)
- Or click the Start MDPS button in the toolbar
- Monitor system status in the System Monitor tab
- Go to the Model Comparison tab
- Navigate to Live Predictions โ Settings
- Configure:
- Prediction interval
- Confidence threshold
- Active models
- Ensemble method
MDPS System
โโโ Data Collection & Acquisition
โ โโโ MT5 Connection Manager
โ โโโ External Data Feeds
โ โโโ Real-time Data Streams
โโโ Data Processing Pipeline
โ โโโ Data Cleaning & Validation
โ โโโ Feature Engineering
โ โโโ Signal Processing
โโโ Analysis Engines
โ โโโ Technical Analysis
โ โโโ Chart Pattern Recognition
โ โโโ Market Structure Analysis
โ โโโ External Factors Integration
โโโ Prediction Engine
โ โโโ Machine Learning Models
โ โโโ Model Ensemble
โ โโโ Performance Tracking
โโโ Strategy & Decision Layer
โ โโโ Signal Generation
โ โโโ Risk Management
โ โโโ Position Sizing
โโโ User Interface
โโโ Real-time Dashboard
โโโ Analysis Tools
โโโ Model Management
โโโ System Monitoring
- Main Window: Central control hub with tabbed interface
- MT5 Connection Widget: Enhanced connection management with monitoring
- System Monitor: Real-time system resources and MDPS status
- Prediction Engine: Live predictions with model comparison
- Trading Interface: Order management and position tracking
- Analytics Dashboard: Performance metrics and visualizations
- File Menu: Start/stop MDPS, configuration, exit
- View Menu: Full screen, refresh all views
- Tools Menu: Quick access to system monitor and data quality
- Help Menu: About information
Ctrl+S: Start MDPSCtrl+T: Stop MDPSCtrl+P: ConfigurationF5: Refresh all viewsF11: Toggle full screenCtrl+Q: Exit application
-
MT5 Connection & Control
- Connection management
- Account monitoring
- Symbol tracking
- Connection logs
-
Market
- Real-time price data
- Market overview
- Symbol selection
-
Technical
- Technical indicators
- Chart analysis
- Pattern recognition
-
Trading
- Order entry
- Position management
- Risk controls
-
Analytics
- Performance metrics
- Strategy analysis
- Reporting tools
-
System Monitor
- CPU, memory, disk usage
- MDPS component status
- Performance metrics
- System controls
-
Model Comparison
- Live predictions
- Model management
- Performance analysis
- Settings
-
Additional Tabs
- Knowledge Graph
- External Factors
- Market Structure
- Pattern Recognition
- Strategy Simulator
- Risk Management
- Data Quality
# MT5 Settings
mt5_settings = {
"server": "MetaQuotes-Demo",
"timeout": 60000,
"reconnect_attempts": 3
}
# Trading Settings
strategy_settings = {
"risk_per_trade": 0.02,
"max_open_positions": 3,
"stop_loss_atr_factor": 2.0
}Access through: File โ Configuration or use the Settings tabs in each component.
- LSTM Neural Networks: Time series prediction
- XGBoost: Gradient boosting for classification
- Random Forest: Ensemble decision trees
- Support Vector Machines: Pattern classification
- Deep Neural Networks: Multi-layer perceptrons
- Transformer Models: Attention-based architectures
- Training: Automated training on historical data
- Testing: Backtesting with performance metrics
- Deployment: Live prediction deployment
- Monitoring: Real-time performance tracking
- Comparison: Side-by-side model analysis
- CPU and memory usage
- Network I/O
- Disk utilization
- Process monitoring
- Prediction accuracy
- Signal success rate
- Processing time
- Error tracking
- Live performance charts
- Component status indicators
- Connection health monitoring
- Resource utilization graphs
1. MT5 Connection Failed
Solution:
- Check credentials
- Verify server name
- Ensure MT5 is running
- Check network connection
2. Missing Dependencies
Solution:
pip install -r requirements.txt
3. PyQt5 Import Error
Solution:
pip install PyQt5>=5.15.0
# or
conda install pyqt
4. System Monitor Not Working
Solution:
pip install psutil>=5.9.0
Enable detailed logging by setting the log level in launch_mdps.py:
logging.basicConfig(level=logging.DEBUG)repo-root/
โโโ mdps/
โ โโโ __init__.py # Aggregates all MDPS sections
โ โโโ __main__.py # python -m mdps entrypoint
โ โโโ main.py # Pipeline driver
โโโ config.py # Root configuration (reused)
โโโ run_mdps.py # Convenience runner
โโโ launch_mdps.py # PyQt UI launcher
โโโ trading_ui/ # PyQt interface (unchanged)
โโโ Data_Collection_and_Acquisition/
โโโ Data Cleaning & Signal Processing/
โโโ Preprocessing & Feature Engineering/
โโโ Advanced Chart Analysis Tools/
โโโ Market_Context_Structural_Analysis/
โโโ Labeling & Target Engineering/
โโโ Prediction Engine (MLDL Models)/
โโโ Strategy & Decision Layer/
- Fork the repository
- Create a feature branch
- Implement changes with tests
- Submit a pull request
- Follow PEP 8 style guidelines
- Use type hints where applicable
- Add docstrings to all functions
- Include unit tests for new features
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: Check this README and inline documentation
- Issues: Create a GitHub issue for bugs or feature requests
- Discussions: Use GitHub Discussions for questions
- Email: mdps-support@example.com
- Website: https://mdps-trading.com
- Documentation: https://docs.mdps-trading.com
- Enhanced chart analysis tools
- Advanced strategy optimization
- Portfolio management features
- Cloud deployment options
- Mobile companion app
- Web-based interface
- Advanced AI models
- Multi-broker support
- Distributed processing
- Real-time collaboration
- Advanced risk analytics
- Institutional features
MDPS v2.0 - Bringing professional-grade trading technology to desktop applications with the power and flexibility of PyQt5.
Happy Trading! ๐