- Состояние клиентского терминала
- Информация о запущенной MQL5-программе
- Информация об инструменте
- Информация о счете
- Статистика тестирования
Состояние клиентского терминала
Идентификаторы для получения информации о клиентском терминале функциями TerminalInfoInteger() и TerminalInfoString(). В качестве параметра эти функции принимают значения из перечислений ENUM_TERMINAL_INFO_INTEGER и ENUM_TERMINAL_INFO_STRING соответственно.
Идентификатор |
Описание |
Тип свойства |
---|---|---|
TERMINAL_BUILD |
Номер билда запущенного терминала |
int |
TERMINAL_COMMUNITY_ACCOUNT |
Флаг наличия авторизационных данных MQL5.community в терминале |
bool |
TERMINAL_COMMUNITY_CONNECTION |
Наличие подключения к MQL5.community |
bool |
TERMINAL_CONNECTED |
Наличие подключения к торговому серверу |
bool |
TERMINAL_DLLS_ALLOWED |
Разрешение на использование DLL |
bool |
TERMINAL_TRADE_ALLOWED |
bool |
|
TERMINAL_EMAIL_ENABLED |
Разрешение на отправку писем с использованием SMTP-сервера и логина, указанных в настройках терминала |
bool |
TERMINAL_FTP_ENABLED |
Разрешение на отправку отчетов по FTP на указанный сервер для указанного в настройках терминала торгового счета |
bool |
TERMINAL_NOTIFICATIONS_ENABLED |
Разрешение на отправку уведомлений на смартфон |
bool |
TERMINAL_MAXBARS |
Максимальное количество баров на графике |
int |
TERMINAL_MQID |
Флаг наличия MetaQuotes ID для отправки Push-уведомлений |
bool |
TERMINAL_CODEPAGE |
Номер кодовой страницы языка, установленного в клиентском терминале |
int |
TERMINAL_CPU_CORES |
Количество процессоров в системе |
int |
TERMINAL_DISK_SPACE |
Объем свободной памяти на диске для папки MQL5\Files терминала (агента), в MB |
int |
TERMINAL_MEMORY_PHYSICAL |
Размер физической памяти в системе, в MB |
int |
TERMINAL_MEMORY_TOTAL |
Размер памяти, доступной процессу терминала (агента), в MB |
int |
TERMINAL_MEMORY_AVAILABLE |
Размер свободной памяти процесса терминала (агента)в MB |
int |
TERMINAL_MEMORY_USED |
Размер памяти, использованной терминалом (агентом), в MB |
int |
TERMINAL_X64 |
Признак "64 битный терминал" |
bool |
TERMINAL_OPENCL_SUPPORT |
Версия поддерживаемой OpenCL в виде 0x00010002 = 1.2. "0" означает, что OpenCL не поддерживается |
int |
TERMINAL_SCREEN_DPI |
Разрешающая способность вывода информации на экран измеряется в количестве точек на линейный дюйм поверхности (DPI). Знание этого параметра позволяет задавать размеры графических объектов таким образом, чтобы они выглядели одинаково на мониторах с различной разрешающей способностью. |
int |
TERMINAL_SCREEN_LEFT |
Левая координата виртуального экрана. Виртуальным экраном является прямоугольник, охватывающий все мониторы. Если в системе имеется два монитора и их порядок задан справа налево, то левая координата виртуального экрана может оказаться на границе двух мониторов. |
int |
TERMINAL_SCREEN_TOP |
Верхняя координата виртуального экрана |
int |
TERMINAL_SCREEN_WIDTH |
Ширина терминала |
int |
TERMINAL_SCREEN_HEIGHT |
Высота терминала |
int |
TERMINAL_LEFT |
Левая координата терминала относительно виртуального экрана |
int |
TERMINAL_TOP |
Верхняя координата терминала относительно виртуального экрана |
int |
TERMINAL_RIGHT |
Правая координата терминала относительно виртуального экрана |
int |
TERMINAL_BOTTOM |
Нижняя координата терминала относительно виртуального экрана |
int |
TERMINAL_PING_LAST |
Последнее известное значение пинга до торгового сервера в микросекундах. В одной секунде миллион микросекунд |
int |
TERMINAL_VPS |
Признак того, что терминал запущен на виртуальном сервере MetaTrader Virtual Hosting (MetaTrader VPS) |
bool |
Идентификатор клавиши |
Описание |
|
TERMINAL_KEYSTATE_LEFT |
Состояние клавиши "Стрелка влево" |
int |
TERMINAL_KEYSTATE_UP |
Состояние клавиши "Стрелка вверх" |
int |
TERMINAL_KEYSTATE_RIGHT |
Состояние клавиши "Стрелка вправо" |
int |
TERMINAL_KEYSTATE_DOWN |
Состояние клавиши "Стрелка вниз" |
int |
TERMINAL_KEYSTATE_SHIFT |
Состояние клавиши "Shift" |
int |
TERMINAL_KEYSTATE_CONTROL |
Состояние клавиши "Ctrl" |
int |
TERMINAL_KEYSTATE_MENU |
Состояние клавиши "Windows" |
int |
TERMINAL_KEYSTATE_CAPSLOCK |
Состояние клавиши "CapsLock" |
int |
TERMINAL_KEYSTATE_NUMLOCK |
Состояние клавиши "NumLock" |
int |
TERMINAL_KEYSTATE_SCRLOCK |
Состояние клавиши "ScrollLock" |
int |
TERMINAL_KEYSTATE_ENTER |
Состояние клавиши "Enter" |
int |
TERMINAL_KEYSTATE_INSERT |
Состояние клавиши "Insert" |
int |
TERMINAL_KEYSTATE_DELETE |
Состояние клавиши "Delete" |
int |
TERMINAL_KEYSTATE_HOME |
Состояние клавиши "Home" |
int |
TERMINAL_KEYSTATE_END |
Состояние клавиши "End" |
int |
TERMINAL_KEYSTATE_TAB |
Состояние клавиши "Tab" |
int |
TERMINAL_KEYSTATE_PAGEUP |
Состояние клавиши "PageUp" |
int |
TERMINAL_KEYSTATE_PAGEDOWN |
Состояние клавиши "PageDown" |
int |
TERMINAL_KEYSTATE_ESCAPE |
Состояние клавиши "Escape" |
int |
Вызов TerminalInfoInteger(TERMINAL_KEYSTATE_XXX) возвращает такой же код состояния клавиши, как и функция GetKeyState() из MSDN.
Пример вычисления коэффициента масштабирования:
//--- создаём кнопку шириной 1.5 дюйма на экране
|
При таком использовании графический ресурс будет иметь одинаковый на глаз размер на мониторах с различной разрешающей способностью. При этом размеры управляющих элементов (кнопки, окна диалогов и т.д.) будут соответствовать настройкам персонализации.
Идентификатор |
Описание |
Тип свойства |
---|---|---|
TERMINAL_COMMUNITY_BALANCE |
Баланс пользователя в MQL5.community |
double |
TERMINAL_RETRANSMISSION |
Процент повторно отправляемых сетевых пакетов в TCP/IP протоколе для всех запущенных приложений и служб на данном компьютере. Даже в самой быстрой и правильно настроенной сети происходят потери пакетов и, как следствие, отсутствие подтверждений о доставке пакетов между получателем и отправителем. В таких случаях производится повторная отправка "потерянного" пакета. Не является показателем качества подключения конкретного терминала к конкретному торговому серверу, так как считается для всей сетевой активности, включая системную и фоновую. Показатель TERMINAL_RETRANSMISSION запрашивается раз в минуту из операционной системы. Сам терминал не считает этот показатель. |
double |
Файловые операции можно проводить только в двух каталогах, пути к которым можно получить при запросе свойств TERMINAL_DATA_PATH и TERMINAL_COMMONDATA_PATH.
Идентификатор |
Описание |
Тип свойства |
---|---|---|
TERMINAL_LANGUAGE |
Язык терминала |
string |
TERMINAL_COMPANY |
Имя компании |
string |
TERMINAL_NAME |
Имя терминала |
string |
TERMINAL_PATH |
Папка, из которой запущен терминал |
string |
TERMINAL_DATA_PATH |
Папка, в которой хранятся данные терминала |
string |
TERMINAL_COMMONDATA_PATH |
Общая папка всех клиентских терминалов, установленных на компьютере |
string |
TERMINAL_CPU_NAME |
Наименование процессора |
string |
TERMINAL_CPU_ARCHITECTURE |
Архитектура процессора |
string |
TERMINAL_OS_VERSION |
Наименование операционной системы пользователя |
string |
Для лучшего понимания путей, хранящихся в свойствах параметров TERMINAL_PATH, TERMINAL_DATA_PATH и TERMINAL_COMMONDATA_PATH, рекомендуется выполнить скрипт, которых сообщит эти значения для данной копии терминала, установленного на вашем компьютере.
Пример: скрипт выводит информацию о путях терминала
//+------------------------------------------------------------------+
|
В результате выполнения скрипта в Журнал Экспертов будут выведены сообщения, подобные приведенным на рисунке ниже.