Временные глобальные переменные

В подсистеме глобальных переменных терминала существует возможность делать некоторые переменные временными: они хранятся только в памяти и не записываются на диск при закрытии терминала.

В силу своей специфики временные глобальные переменные используются исключительно для обмена данными между MQL-программами и не подходят для сохранения состояния между запусками MetaTrader 5. Одно из наиболее очевидных применений для временных переменных: различные показатели операционной деятельности (например, счетчики запущенных копий программ), которые должны динамически пересчитываться при каждом старте, а не восстанавливаться с диска.

Глобальную переменную следует объявить временной заранее, до назначения ей какого-либо значения, с помощью функции GlobalVariableTemp.

К сожалению, по имени глобальной переменной нельзя узнать, является ли она временной: MQL5 не предоставляет для этого средств.

Временные переменные могут создавать только MQL-программы. Временные переменные отображаются в окне "Глобальные переменные" наравне с обычными (персистентными) глобальными переменными, но пользователь не имеет возможности добавить свою временную переменную из GUI.

bool GlobalVariableTemp(const string name)

Функция создает новую глобальную переменную с указанным именем, которая будет существовать только до конца текущего сеанса работы терминала.

Если переменная с таким именем уже существовала, она не будет преобразована во временную.

Если же переменой до сих пор не было, она получит значение 0. После этого с ней можно работать как обычно, в частности, присваивать другие значения функцией GlobalVariableSet.

Пример для данной функции мы покажем вместе с функциями следующего раздела.