metatrader-mcp-server
README.md
# ๐ Riffmax-TradingBot-AI-RiffEx
> **Autonomous AI Trading Agent powered by Python and MetaTrader 5 (MT5) MCP** โ real-time market structure analysis, automated signal generation, intelligent order execution, and strict risk guardrails.
[](https://python.org)
[](https://www.mql5.com/)
[](https://modelcontextprotocol.io/)
[](LICENSE)
[]()
---
## ๐ What it does
**Riffmax-TradingBot-AI-RiffEx** is an autonomous trading agent that operates directly on **MetaTrader 5 (MT5)** using Python and the **Model Context Protocol (MCP)**:
- ๐ **Real-Time Market Analysis** โ Ingests live tick data, OHLCV candles, order books, and open positions directly through MT5 MCP tools.
- ๐ง **AI Decision Engine** โ Analyzes price action, market liquidity, and volatility metrics using Python-based quantitative models and LLM agent reasoning.
- โก **Direct Order Execution** โ Places, tracks, modifies, and closes market and pending orders programmatically via the MT5 MCP interface.
- ๐ก๏ธ **Autonomous Risk Guardrails** โ Enforces dynamic lot sizing based on account equity, automatic stop-loss (SL), take-profit (TP), maximum drawdown thresholds, and spread filtering.
- ๐ **Structured Logging & Auditing** โ Records all signal evaluations, execution payloads, and deal receipts in JSON/CSV audit trails.
---
## ๐๏ธ Architecture
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ AI Agent Decision Layer (Python) โ
โ โข Technical Analysis โข Price Action โข Volatility โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
Model Context Protocol (MCP)
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MT5 MCP Server โ
โ โข get_candles_latest โข get_account_info โ
โ โข place_market_order โข modify_position โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MetaTrader 5 (MT5) Terminal โ
โ Broker Execution ยท Live Market Liquidity โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
---
## ๐ ๏ธ Stack
| Component | Technology | Description |
|---|---|---|
| **Language** | Python 3.10+ | Core trading engine and quantitative analysis |
| **Execution Protocol** | MT5 Model Context Protocol (MCP) | Tool-based interface for market data & order dispatch |
| **Broker Platform** | MetaTrader 5 (MT5) | Multi-asset execution terminal (Forex, Indices, Crypto) |
| **Data Processing** | NumPy, Pandas | Candle parsing, moving averages, volatility metrics |
| **Risk Management** | Custom Python Engine | Lot sizing, trailing stops, daily loss limits |
| **Configuration** | `.env` + `config.yaml` | Secure credential isolation |
---
## ๐ Quick Start
### Prerequisites
- Python 3.10+
- MetaTrader 5 terminal installed and logged into your broker account
- MT5 MCP server configured
### 1. Clone & Install
```bash
git clone https://github.com/Riffmax2030-hub/Riffmax-TradingBot-AI-RiffEx.git
cd Riffmax-TradingBot-AI-RiffEx
pip install -r requirements.txt
```
### 2. Configure Environment
```bash
cp .env.example .env
# Edit .env with your credentials โ NEVER commit real .env files
```
`.env.example` template:
```env
MT5_ACCOUNT=your_account_number
MT5_PASSWORD=your_password
MT5_SERVER=your_broker_server
MAX_RISK_PER_TRADE_PERCENT=1.0
MAX_DAILY_DRAWDOWN_PERCENT=3.0
```
### 3. Run the Trading Agent
```bash
python main.py
```
---
## ๐ Project Structure
```
Riffmax-TradingBot-AI-RiffEx/
โโโ agent/
โ โโโ market_analyzer.py # Price action & indicator analysis
โ โโโ decision_engine.py # Signal generation logic
โ โโโ mcp_bridge.py # MT5 Model Context Protocol interface
โ โโโ risk_guard.py # Dynamic lot sizing & risk limits
โโโ config/
โ โโโ config.yaml # Symbol lists, timeframe, max spread
โโโ logs/ # Trade logs & audit trails (gitignored)
โโโ tests/
โ โโโ test_market_analyzer.py
โ โโโ test_risk_guard.py
โโโ .env.example # Template with placeholders
โโโ .gitignore # Excludes credentials, logs, caches
โโโ requirements.txt
โโโ README.md
```
---
## ๐ Security & Risk Disclaimer
> [!CAUTION]
> **Financial & Credential Security:**
> - Never hardcode broker account numbers, server details, or passwords in code or commits.
> - All sensitive configurations are loaded strictly via environment variables.
> - Trading financial markets carries risk. Use a demo account for testing before any live deployment.
---
## ๐ License
MIT ยฉ [Sherif Akanmu](https://github.com/Riffmax2030-hub)
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo issues