- Установка Python и пакета MetaTrader5
- Обзор функций пакета MetaTrader5 для Python
- Подключение скрипта Python к терминалу и счету
- Проверка ошибок: last_error
- Получение информации о торговом счете
- Получение информации о терминале
- Получение информации о финансовых инструментах
- Подписка на стакан цен
- Чтение котировок
- Чтение истории тиков
- Вычисление маржинальных требований и оценка прибыли
- Проверка и отправка торгового приказа
- Получение количества и списка действующих ордеров
- Получение количества и списка открытых позиций
- Чтение истории ордеров и сделок
Проверка ошибок: last_error
Функция last_error возвращает информацию о последней ошибке Python.
int last_error()
Целочисленные коды ошибок отличаются от тех, что выделены для ошибок MQL5 и возвращаются стандартной функцией GetLastError. В следующей таблице под сокращением IPC подразумевается термин "межпроцессного взаимодействия" (Inter-Process Communication).
Константа |
Значение |
Описание |
---|---|---|
RES_S_OK |
1 |
Успех |
RES_E_FAIL |
-1 |
Общая ошибка |
RES_E_INVALID_PARAMS |
-2 |
Неверные аргументы/параметры |
RES_E_NO_MEMORY |
-3 |
Ошибка выделения памяти |
RES_E_NOT_FOUND |
-4 |
Запрошенная история не найдена |
RES_E_INVALID_VERSION |
-5 |
Версия не поддерживается |
RES_E_AUTH_FAILED |
-6 |
Ошибка авторизации |
RES_E_UNSUPPORTED |
-7 |
Метод не поддерживается |
RES_E_AUTO_TRADING_DISABLED |
-8 |
Алготрейдинг отключен |
RES_E_INTERNAL_FAIL |
-10000 |
Общая внутренняя ошибка IPC |
RES_E_INTERNAL_FAIL_SEND |
-10001 |
Внутренняя ошибка отправки данных IPC |
RES_E_INTERNAL_FAIL_RECEIVE |
-10002 |
Внутренняя ошибка отправки данных IPC |
RES_E_INTERNAL_FAIL_INIT |
-10003 |
Внутренняя ошибка инициализации IPC |
RES_E_INTERNAL_FAIL_CONNECT |
-10003 |
IPC отсутствует |
RES_E_INTERNAL_FAIL_TIMEOUT |
-10005 |
Таймаут IPC |
В следующем скрипте (MQL5/Scripts/MQL5Book/Python/init.py) в случае ошибки при подключении к терминалу, выводим код ошибки и завершаем работу.
import MetaTrader5 as mt5
|