Быстрый старт с MT5 REST API
Выберите язык и запустите полный пример: создайте новый демосчёт, подключитесь, получите данные счёта, откройте демопозицию EURUSD объёмом 0,01 лота, просмотрите её, закройте, проверьте закрытие и отключитесь. Торговля ведётся только демосредствами. При использовании собственного API-ключа расходуется баланс сервиса.
Полный цикл демо
/DemoAccount/OpenСоздайте демо-счёт MetaQuotes. Не раскрывайте полученные данные для входа. Этот шаг не пополняет реальный торговый счёт.
/ConnectExПодключите демо-счёт и сохраните ID терминала. API-ключ определяет ваш аккаунт MRPC, а ID терминала — это подключение.
/AccountSummaryПолучите данные подключённого счёта. Успешный ответ подтверждает, что интеграция работает. Этот запрос не открывает сделок.
/OrderSendПокупка 0,01 лота EURUSD. Проверяйте код ответа брокера: HTTP 200 сам по себе не подтверждает исполнение.
/OpenedOrderspositionInfos содержит открытые позиции, а openedOrders — отложенные ордера. Для закрытия берите тикет позиции из этого ответа.
/OrderClose → /OpenedOrdersЗакройте позицию по её тикету и объёму, затем снова запросите OpenedOrders и убедитесь, что её больше нет.
/DisconnectЗакройте подключение, даже если предыдущий запрос завершился ошибкой. В примерах для скачивания есть очистка ресурсов и резервное ограничение срока работы терминала до пяти минут.
Авторизация и чтение данных счета
Передайте свой ключ API в заголовке APIKey. ConnectEx возвращает terminalInstanceGuid — передавайте это значение в заголовке id для AccountSummary и Disconnect. Это разные идентификаторы. Запрос ниже читает данные уже подключенного счета.
curl --request GET "https://mt5.mrpc.pro/AccountSummary" \
--header "APIKey: YOUR_API_KEY" \
--header "id: YOUR_TERMINAL_ID"
Отключение после запроса
Вызывайте Disconnect в блоке finally — даже если чтение завершилось ошибкой. На всякий случай пример запрашивает терминал со сроком жизни пять минут. Полный пример для вашего языка программирования можно скачать выше.
Если подключиться не удалось
Проверьте ключ API, имя сервера брокера, логин и пароль. Если ConnectEx завершился ошибкой и не вернул ID терминала, не вызывайте AccountSummary. Проверьте баланс сервиса и ограничения пробного доступа; не выводите учетные данные в логи.
Запустить пример →