Александр Нечаев – Основы MQL5 программирования. Разработка технических индикаторов и торговых советников (страница 4)
Пример 3. Варианты значений переменных типа enum
// – —
ClosePosition (PositionTicket);
3.2 Область видимости и время жизни переменных
Переменные в рамках MQL5 программ могут быть разделены на три типа
– Локальные переменные – это переменные, которые созданы внутри какой-либо функции. Они будут видимы только внутри этой функции и при ее окончании – они будут уничтожены для повторного создания при следующей итерации. Локальные переменные будут видны только далее по коду после их создания.
Пример 4. Пример локальной переменной
– Глобальные переменные – это переменные, которые созданы на одном уровне с функциями, то есть на глобальном уровне. Они будут существовать до момента деинициализации приложения.
– Глобальные переменные терминала – это переменные, которые могут быть созданы в любом приложении, но их время жизни не заканчивается деинициализацией создавшего их приложения. Глобальные переменные терминала используются для общего использования из разных приложений. Базовым примером работы с глобальными переменными терминала может быть использование выгрузки сложных и объемных расчетов из одного продукта, их отправки в глобальные переменные. Далее этими данными смогут пользоваться все остальные продукты. Это хороший инструмент оптимизации работы масштабных проектов, состоящих из нескольких десятков приложений, работающих в одной связке.
3.3 Операции и выражения
– Выражения – Выражения оканчиваются точкой с запятой. Выражения могут быть длинными или короткими и не зависимо от величины выражения, любое будет оканчиваться точкой с запятой. Одно выражение может занимать несколько строк или наоборот в одной строке может быть несколько выражений.
– Операции – Все операции всегда следую друг за другом слева на право. Операции имеют свой уровень приоритета. Операции с более высоки приоритетом, будут выполняются первыми. Приоритет операций умножения и деления выше, чем в операциях сложения и вычитания, как и в стандартных правилах математики. Компилятор использует приоритет операторов для определения порядка обработки выражений.
–
Пример 5. Логические операции
–
Пример 6. Инкременты
–
Пример 7. Присваивание
Следующие операции объединяют арифметические или побитовые операции с операцией присваивания:
Пример 8. Арифметика с присваиванием
–
Пример 9. Отношение переменных
– Логические операции – этот тип похож на операции отношения, но имеет более сложную структуру. Если операторы отношения используются для проверки условия: ложь или истина. Иногда, необходимо протестировать несколько условий одновременно. Например, узнать есть ли хоть одно истинное значение из множества. Также иногда нам нужно знать, является ли хоть одно из нескольких условий истинным.
— Логическое отрицание – обозначается с помощью восклицательного знака»!».
Пример 10. Логическое отрицание
– Логическая операция «или» – обозначается с помощью двух вертикальных линий "||». Возвращает true или выполняет последующее действие в случае выполнения одного из указанных условий. То есть необходимо выполнение хотя бы одного из условий.
Пример 11. Логическая операция «или»