Переменные
Для составления программ на любом алгоритмическом языке очень важно знать свойства
переменных различных типов и видов. В данном разделе рассматриваются все виды переменных,
используемых в MQL4.
- Предопределённые переменные и функция RefreshRates.
В первую очередь необходимо познакомиться с предопределенными переменными. Имена предопределенных переменных зарезервированы и не могут использоваться пользователем для создания своих переменных. Именно предопределенные переменные несут основную информацию, необходимую для анализа текущей рыночной ситуации. Для обновления этой информации используется функция RefreshRates().
- Виды переменных.
Переменные играют значительную роль при написании программы. Они делятся на локальные и глобальные, внешние и внутренние. Статические переменные сохраняют свои значения между вызовами функций, это полезно для запоминания некоторых значений в локальных переменных, не прибегая к созданию глобальных переменных.
- Переменные GlobalVariable.
Кроме глобальных переменных на уровне отдельно взятой программы, значения которых доступны из любого места этой программы, существуют глобальные переменные на уровне терминала. Эти глобальные переменные называются GlobalVariables и позволяют наладить взаимодействия между независимыми программами на языке MQL4. С их помощью можно передавать значения между скриптами, индикаторами и советниками. При выключении терминала значения GlobalVariables также сохраняются, чтобы быть доступными при новом запуске MetaTrader 4. Необходимо помнить, что если к глобальной переменной не было обращения в течение 4 недель, то она уничтожается.
- Массивы.
Если Вам необходимо хранить или обрабатывать большие объемы значений одного типа, то тут без массивов не обойтись. Прежде чем использовать массив, его, как и переменную, необходимо объявить. Обращения к элементам массива происходит через указание индекса(ов) элемента, при этом индексация массивов начинается с нуля. Количество измерений массива называется его размерностью. Допускаются не более чем четрырехмерные массивы. Всегда явно инициализируйте значения массивов, чтобы не делать ошибок, которые потом очень трудно обнаружить.