ctrader-mcp-server
cTrader MCP Server
Ein eigenständiger Model Context Protocol (MCP) Server, der es KI-Assistenten ermöglicht, mit der cTrader-Handelsplattform zu interagieren.
🚀 Was ist das?
Dieser MCP-Server ermöglicht es KI-Assistenten wie Claude, Trades auszuführen, Märkte zu analysieren und Positionen auf cTrader durch natürlichsprachliche Konversationen zu verwalten.
Beispielkonversationen:
"Zeige mir meinen Kontostand" → Ruft Kontostand, Eigenkapital und Positionen ab
"Kaufe 0,01 Lots EURUSD mit Stop bei 1,08" → Platziert einen Trade
"Berechne den RSI für GBPUSD" → Analysiert technische Indikatoren
"Schließe alle verlustbringenden Positionen" → Verwaltet das Risiko
Related MCP server: 3commas-mcp
✨ Funktionen
Handelsoperationen
✅ Market Orders - Sofortige Ausführung zum aktuellen Preis
✅ Limit Orders - Order zu einem bestimmten Preisniveau
✅ Stop Orders - Stop-Loss- oder Stop-Entry-Orders
✅ Positionsverwaltung - Positionen vollständig oder teilweise schließen
✅ Orderverwaltung - Ausstehende Orders stornieren
Marktdaten & Analyse
✅ Historische Daten - OHLCV-Kerzen (9 Zeitrahmen: M1, M5, M15, M30, H1, H4, D1, W1, MN1)
✅ Technische Indikatoren - RSI, MACD, EMA, SMA, Bollinger Bänder, ATR, Stochastic
✅ Echtzeit-Ticks - Live-Preise abonnieren
✅ Symbolsuche - Durchsuche über 100 Handelsinstrumente
Kontoinformationen
✅ Kontostatus - Kontostand, Eigenkapital, Margin, freie Margin
✅ Positionsverfolgung - Alle offenen Positionen mit GuV
✅ Orderverfolgung - Alle ausstehenden Orders
✅ GuV-Analyse - Detaillierte Gewinn-/Verlustaufschlüsselung
🎯 Verfügbare Tools (insgesamt 14)
Tool | Beschreibung |
| Kontostand, Eigenkapital, Margin und GuV anzeigen |
| Alle offenen Positionen mit Details auflisten |
| Alle ausstehenden Limit-/Stop-Orders anzeigen |
| Detaillierte GuV-Aufschlüsselung abrufen |
| Trade zum aktuellen Marktpreis ausführen |
| Order zu einem bestimmten Preis platzieren |
| Stop-Loss- oder Stop-Entry-Order platzieren |
| Position vollständig oder teilweise schließen |
| Eine ausstehende Order stornieren |
| Verfügbare Handelsinstrumente durchsuchen |
| OHLCV-Kerzendaten abrufen |
| Technische Indikatoren berechnen |
| Echtzeit-Preis-Updates abonnieren |
| Preis-Updates abbestellen |
📋 Voraussetzungen
Python 3.10 oder höher
Ein cTrader-Konto (Demo oder Live)
cTrader API-Zugangsdaten
🔧 Installation
1. cTrader API-Zugangsdaten abrufen
Erstelle eine Anwendung, um Folgendes zu erhalten:
CLIENT_IDCLIENT_SECRET
Generiere ein Zugriffstoken:
ACCESS_TOKEN
Finde deine Konto-ID in cTrader:
ACCOUNT_ID
2. Server installieren
# Clone or download this repository
cd ctrader-mcp-server
# Run installation script
./install.sh3. Zugangsdaten konfigurieren
Erstelle eine .env-Datei im Projektstammverzeichnis:
CLIENT_ID=your_client_id_here
CLIENT_SECRET=your_client_secret_here
ACCESS_TOKEN=your_access_token_here
ACCOUNT_ID=your_account_id_here
HOST=demoWichtig: Verwende HOST=demo zum Testen!
4. Server testen
# Activate virtual environment
source venv/bin/activate
# Run tests
python test_server.pyDu solltest Folgendes sehen:
✓ Bot initialized and authenticated
✓ Account status retrieved
✓ Found X EUR symbols
...
All Tests Completed Successfully! ✓🤖 KI-Assistent konfigurieren
Claude Desktop
Finde deine Konfigurationsdatei:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Füge diese Konfiguration hinzu:
{
"mcpServers": {
"ctrader": {
"command": "/absolute/path/to/ctrader-mcp-server/venv/bin/python",
"args": [
"/absolute/path/to/ctrader-mcp-server/server.py"
],
"cwd": "/absolute/path/to/ctrader-mcp-server"
}
}
}Starte Claude Desktop neu
Andere MCP-Clients
Dieser Server implementiert das Standard-MCP-Protokoll und sollte mit jedem MCP-kompatiblen Client funktionieren.
💬 Beispielkonversationen
Sobald konfiguriert, kannst du natürlich interagieren:
Konto prüfen:
Du: "Wie viel Geld habe ich auf meinem cTrader-Konto?"
KI: "Dein Konto hat einen Kontostand von 10.000 $, ein Eigenkapital von 10.250 $ und 3 offene Positionen mit einer gesamten GuV von +250 $."
Trade platzieren:
Du: "Kaufe 0,01 Lots EURUSD mit Stop-Loss bei 1,08 und Take-Profit bei 1,10"
KI: "Order ausgeführt! 0,01 Lots EURUSD gekauft bei 1,09245 mit Stop-Loss bei 1,08000 und Take-Profit bei 1,10000."
Markt analysieren:
Du: "Berechne den RSI für GBPUSD auf dem 15-Minuten-Chart"
KI: "Der GBPUSD RSI(14) auf M15 liegt aktuell bei 65,3, was darauf hindeutet, dass sich das Paar einem überkauften Bereich nähert."
Risiko verwalten:
Du: "Schließe alle Positionen, die mehr als 50 $ Verlust machen"
KI: "1 Position gefunden, die mehr als 50 $ Verlust macht. GBPUSD-Position geschlossen (Verlust: -62,50 $)."
📚 Dokumentation
Quick Start Guide - In 5 Minuten starten
Vollständiger Leitfaden - Umfassende Referenz
Architektur - Technische Details
Konfiguration - Einrichtungsoptionen
API-Referenz - Alle Tools dokumentiert
🔐 Sicherheit & Schutz
Demo vs. Live-Handel
Die Standardkonfiguration verwendet Demokonten
Setze explizit
HOST=livein der.envfür den Live-HandelTeste immer gründlich auf dem Demokonto, bevor du live gehst
Risikomanagement
Alle Orders unterstützen Stop-Loss und Take-Profit
Das Schließen von Positionen kann teilweise oder vollständig erfolgen
Das Volumen wird in Lots angegeben (0,01 = Mikrolot)
Sicherheit der Zugangsdaten
Zugangsdaten werden in der
.env-Datei gespeichert (niemals committen)Umgebungsvariablen werden niemals in Protokollen angezeigt
Authentifizierungsstatus wird vor Operationen validiert
🚨 Wichtige Warnungen
⚠️ Handel birgt erhebliche Risiken. Du kannst Geld verlieren. ⚠️ Teste immer zuerst auf Demokonten ⚠️ Beginne mit kleinen Positionen, wenn du live gehst ⚠️ Verwende Stop-Losses, um das Risiko zu begrenzen ⚠️ Teile niemals deine Zugangsdaten oder Zugriffstoken
🛠️ Entwicklung
Projektstruktur
ctrader-mcp-server/
├── server.py # Main MCP server
├── ctrader_bot.py # cTrader API wrapper
├── test_server.py # Testing tool
├── install.sh # Installation script
├── requirements.txt # Python dependencies
├── .env.example # Environment template
├── README.md # This file
└── docs/ # Documentation
├── QUICKSTART.md
├── GUIDE.md
├── ARCHITECTURE.md
├── CONFIGURATION.md
└── API.mdTests ausführen
# Basic functionality test
python test_server.py
# Run with specific account
ACCOUNT_ID=12345 python test_server.py
# Test with live account (careful!)
HOST=live python test_server.pyNeue Tools hinzufügen
Um neue Tools hinzuzufügen:
Tool-Definition in
server.pyunterhandle_list_tools()hinzufügenHandler in
_execute_tool()implementierenEntsprechende Methode in
ctrader_bot.pyhinzufügen, falls erforderlichDokumentation aktualisieren
📊 Leistung
Startzeit: 5-10 Sekunden (Authentifizierung + Laden der Symbole)
Orderausführung: <100ms (Market Orders)
Historische Daten: 1-5 Sekunden (100 Kerzen)
Indikatorberechnung: <1 Sekunde
Speichernutzung: ~50-100 MB
🌐 Ratenbegrenzungen
cTrader API erzwingt:
50 Anfragen/Sekunde für Handelsoperationen
5 Anfragen/Sekunde für historische Daten
Der Server hält diese Grenzen automatisch ein.
🐛 Fehlerbehebung
"Bot not ready"-Fehler
Überprüfe die Zugangsdaten in der
.env-DateiÜberprüfe die Internetverbindung
Stelle sicher, dass das cTrader-Konto aktiv ist
Überprüfe die Serverprotokolle auf Authentifizierungsfehler
Symbol nicht gefunden
Verwende das Tool
list_symbols, um verfügbare Symbole zu sehenSymbolnamen unterscheiden zwischen Groß- und Kleinschreibung
Verschiedene Broker können unterschiedliche Symbolnamen haben
Order abgelehnt
Überprüfe Kontostand und Margin
Überprüfe, ob das Symbol handelbar ist
Stelle sicher, dass das Volumen die Mindestanforderungen erfüllt
Überprüfe, ob der Markt geöffnet ist
Verbindungsprobleme
Überprüfe, ob die API-Zugangsdaten korrekt sind
Überprüfe, ob das Konto aktiv ist
Stelle sicher, dass keine Firewall den Port 5035 (Demo) oder 5034 (Live) blockiert
🔗 Ressourcen
📄 Lizenz
MIT-Lizenz - Siehe LICENSE-Datei für Details
⚖️ Haftungsausschluss
Diese Software wird "wie besehen" ohne jegliche Gewährleistung bereitgestellt. Der Handel birgt erhebliche Risiken und du kannst Geld verlieren. Nutzung auf eigene Gefahr. Teste immer auf Demokonten, bevor du live handelst.
🤝 Mitwirken
Beiträge sind willkommen! Bitte:
Forke das Repository
Erstelle einen Feature-Branch
Nimm deine Änderungen vor
Füge Tests hinzu, falls zutreffend
Reiche einen Pull Request ein
📧 Support
📖 Überprüfe die Dokumentation
🐛 Melde Probleme auf GitHub
💬 Tritt der cTrader Community bei
Mit ❤️ für algorithmische Trader gemacht
Bereit zu starten? Führe ./install.sh aus und befolge die Anweisungen oben!
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server for Gainium — manage trading bots, deals, and balances via AI assistants
MCP server exposing the Backtest360 engine API as tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol (MCP) server for the Hyperliquid decentralized exchange, enabling AI assistants to perform trading operations, manage accounts, and retrieve market data.307 PyPI3MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol (MCP) server that integrates AI assistants with the 3Commas cryptocurrency trading platform API, enabling management of DCA bots and trading strategies through natural conversation.123MIT
- AlicenseAqualityAmaintenanceAn MCP server that lets an AI agent read your MetaTrader 5 account and place trades over the Model Context Protocol, with a configurable human approval gate.1538 PyPI5MIT
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that provides AI assistants like Claude with direct access to MetaAPI trading platform. Trade forex, stocks, and commodities through natural language conversations.1-