ctrader-mcp-server
cTrader MCP Server
Автономный сервер протокола контекста модели (MCP), позволяющий ИИ-ассистентам взаимодействовать с торговой платформой cTrader.
🚀 Что это такое?
Этот MCP-сервер позволяет ИИ-ассистентам, таким как Claude, совершать сделки, анализировать рынки и управлять позициями в cTrader с помощью общения на естественном языке.
Примеры диалогов:
"Покажи баланс моего счета" → Получает баланс, средства, позиции
"Купи 0.01 лота EURUSD со стопом на 1.08" → Открывает сделку
"Рассчитай RSI для GBPUSD" → Анализирует технические индикаторы
"Закрой все убыточные позиции" → Управляет рисками
✨ Функции
Торговые операции
✅ Рыночные ордера - Исполнение немедленно по текущей цене
✅ Лимитные ордера - Ордер по конкретному ценовому уровню
✅ Стоп-ордера - Стоп-лосс или стоп-вход ордера
✅ Управление позициями - Полное или частичное закрытие позиций
✅ Управление ордерами - Отмена отложенных ордеров
Рыночные данные и анализ
✅ Исторические данные - Свечи OHLCV (9 таймфреймов: M1, M5, M15, M30, H1, H4, D1, W1, MN1)
✅ Технические индикаторы - RSI, MACD, EMA, SMA, Полосы Боллинджера, ATR, Stochastic
✅ Тики в реальном времени - Подписка на потоки цен в реальном времени
✅ Поиск символов - Просмотр более 100 торговых инструментов
Информация об аккаунте
✅ Статус счета - Баланс, средства, маржа, свободная маржа
✅ Отслеживание позиций - Все открытые позиции с P&L
✅ Отслеживание ордеров - Все отложенные ордера
✅ Анализ P&L - Детальная разбивка прибыли/убытка
🎯 Доступные инструменты (всего 14)
Инструмент | Описание |
| Просмотр баланса, средств, маржи и P&L |
| Список всех открытых позиций с деталями |
| Показать все отложенные лимитные/стоп-ордера |
| Получить детальную разбивку P&L |
| Исполнить сделку по текущей рыночной цене |
| Разместить ордер по конкретной цене |
| Разместить стоп-лосс или стоп-вход ордер |
| Закрыть позицию полностью или частично |
| Отменить отложенный ордер |
| Просмотр доступных торговых инструментов |
| Получить данные свечей OHLCV |
| Рассчитать технические индикаторы |
| Подписаться на обновления цен в реальном времени |
| Отписаться от обновлений цен |
📋 Предварительные требования
Python 3.10 или выше
Аккаунт cTrader (демо или реальный)
API-учетные данные cTrader
🔧 Установка
1. Получение API-учетных данных cTrader
Посетите https://help.ctrader.com/open-api/creating-new-app/
Создайте приложение, чтобы получить:
CLIENT_IDCLIENT_SECRET
Сгенерируйте токен доступа:
ACCESS_TOKEN
Найдите ID своего счета в cTrader:
ACCOUNT_ID
2. Установка сервера
# Clone or download this repository
cd ctrader-mcp-server
# Run installation script
./install.sh3. Настройка учетных данных
Создайте файл .env в корне проекта:
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=demoВажно: Используйте HOST=demo для тестирования!
4. Тестирование сервера
# Activate virtual environment
source venv/bin/activate
# Run tests
python test_server.pyВы должны увидеть:
✓ Bot initialized and authenticated
✓ Account status retrieved
✓ Found X EUR symbols
...
All Tests Completed Successfully! ✓🤖 Настройка ИИ-ассистента
Claude Desktop
Найдите файл конфигурации:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Добавьте эту конфигурацию:
{
"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"
}
}
}Перезапустите Claude Desktop
Другие MCP-клиенты
Этот сервер реализует стандартный протокол MCP и должен работать с любым MCP-совместимым клиентом.
💬 Примеры диалогов
После настройки вы можете взаимодействовать естественным образом:
Проверка счета:
Вы: "Сколько денег у меня на счете cTrader?"
ИИ: "На вашем счете баланс $10,000, средства $10,250, открыто 3 позиции с общим P&L +$250."
Открытие сделки:
Вы: "Купи 0.01 лота EURUSD со стоп-лоссом на 1.08 и тейк-профитом на 1.10"
ИИ: "Ордер исполнен! Куплено 0.01 лота EURUSD по цене 1.09245 со стоп-лоссом 1.08000 и тейк-профитом 1.10000."
Анализ рынка:
Вы: "Рассчитай RSI для GBPUSD на 15-минутном графике"
ИИ: "RSI(14) для GBPUSD на M15 сейчас составляет 65.3, что указывает на приближение пары к зоне перекупленности."
Управление рисками:
Вы: "Закрой все позиции, убыток по которым превышает $50"
ИИ: "Найдена 1 позиция с убытком более $50. Закрыта позиция по GBPUSD (убыток: -$62.50)."
📚 Документация
Руководство по быстрому старту - Начните за 5 минут
Полное руководство - Исчерпывающая справка
Архитектура - Технические детали
Конфигурация - Параметры настройки
Справочник API - Документация по всем инструментам
🔐 Безопасность
Демо против реальной торговли
Конфигурация по умолчанию использует демо-счета
Явно установите
HOST=liveв.envдля реальной торговлиВсегда тщательно тестируйте на демо перед переходом на реальный счет
Управление рисками
Все ордера поддерживают стоп-лосс и тейк-профит
Закрытие позиций может быть частичным или полным
Объем указывается в лотах (0.01 = микро-лот)
Безопасность учетных данных
Учетные данные хранятся в файле
.env(никогда не добавляются в репозиторий)Переменные окружения никогда не отображаются в логах
Состояние аутентификации проверяется перед выполнением операций
🚨 Важные предупреждения
⚠️ Торговля сопряжена со значительным риском. Вы можете потерять деньги. ⚠️ Всегда сначала тестируйте на демо-счетах ⚠️ Начинайте с небольших позиций при переходе на реальный счет ⚠️ Используйте стоп-лоссы для ограничения риска ⚠️ Никогда не передавайте свои учетные данные или токены доступа
🛠️ Разработка
Структура проекта
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.mdЗапуск тестов
# 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.pyДобавление новых инструментов
Чтобы добавить новые инструменты:
Добавьте определение инструмента в
server.pyвhandle_list_tools()Реализуйте обработчик в
_execute_tool()Добавьте соответствующий метод в
ctrader_bot.py, если нужноОбновите документацию
📊 Производительность
Время запуска: 5-10 секунд (аутентификация + загрузка символов)
Исполнение ордера: <100 мс (рыночные ордера)
Исторические данные: 1-5 секунд (100 свечей)
Расчет индикатора: <1 секунды
Использование памяти: ~50-100 МБ
🌐 Ограничения частоты запросов
cTrader API ограничивает:
50 запросов/секунду для торговых операций
5 запросов/секунду для исторических данных
Сервер автоматически соблюдает эти ограничения.
🐛 Устранение неполадок
Ошибки "Bot not ready"
Проверьте учетные данные в файле
.envПроверьте интернет-соединение
Убедитесь, что аккаунт cTrader активен
Проверьте логи сервера на наличие ошибок аутентификации
Символ не найден
Используйте инструмент
list_symbols, чтобы увидеть доступные символыИмена символов чувствительны к регистру
У разных брокеров могут быть разные названия символов
Ордер отклонен
Проверьте баланс счета и маржу
Убедитесь, что символ доступен для торговли
Убедитесь, что объем соответствует минимальным требованиям
Проверьте, открыт ли рынок
Проблемы с подключением
Проверьте правильность API-учетных данных
Проверьте, активен ли аккаунт
Убедитесь, что брандмауэр не блокирует порт 5035 (демо) или 5034 (реальный)
🔗 Ресурсы
📄 Лицензия
Лицензия MIT - подробности см. в файле LICENSE
⚖️ Отказ от ответственности
Это программное обеспечение предоставляется "как есть" без каких-либо гарантий. Торговля сопряжена со значительным риском, и вы можете потерять деньги. Используйте на свой страх и риск. Всегда тестируйте на демо-счетах перед реальной торговлей.
🤝 Участие в разработке
Вклад приветствуется! Пожалуйста:
Сделайте форк репозитория
Создайте ветку для новой функции
Внесите изменения
Добавьте тесты, если применимо
Отправьте pull request
📧 Поддержка
📖 Проверьте документацию
🐛 Сообщайте об ошибках на GitHub
💬 Присоединяйтесь к сообществу cTrader
Сделано с ❤️ для алготрейдеров
Готовы начать? Запустите ./install.sh и следуйте инструкциям выше!
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/akinabudu/ctrader-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server