MQL для чайников, программирование на MQL4, MQL5
23 Фев
Для того чтобы написать программу на языке MQL — необходимо знать как в ней хранятся данные, ведь программа должна их где-то хранить.
Константа в MQL - это составная часть программы; объект, имеющий значение. Понятие «константа» в программе аналогично тому же понятию, используемому в математических уравнениях. Это — неизменная величина.
Встретив в программе 2+2 мы понимаем что происходит сложение двух чисел. Так как их в процессе работы программы изменить нельзя, то они являются константами. Встретив другой пример 2+x уже нельзя сказать однозначно: с чем складывается число (с константой или переменной)? Дело в том, что константам можно присвоить имя и использовать ее не по значению, а по имени. Для присвоения имени константе используется #define.
Например:
#define x 2
2+x
Переменная в MQL — это составная часть программы, имеющая значение и название. Понятие переменной в языке MQL4 аналогично понятию переменной, принятому в математике.
Переменные очень похожи на константы, но их значение можно изменять. Например сложим 2+2 и сохраним значение в переменной:
x=2+2
Так как переменная может изменять свои значения в процессе работы программы, то необходимо указывать ее тип. Иначе компилятор MT4 не будет знать что в ней хранить (число, строку и т.д.). Поэтому при описании переменной указывают ее тип.
В языке MQL4 различают следующие типы данных:
int — целые числа (например: 1).
double — действительные числа (например: 0.1).
bool — значения логического типа (например: true).
string — значения строкового типа (например: «Super Expert»).
color — значения цветового типа (например: White).
datetime — значение даты и времени (например: 01.01.2010 12:00).
Наш пример для сложения чисел приобретет свой окончательный вид:
int x=2+2;
Мы сложили два числа (константы) и поместили результат в переменную x целого типа.
Какие еще операции существуют в языке MQL4?
В языке MQL4 различают следующие виды операций:
• арифметические операции;
• операции присваивания;
• операции отношения;
• логические операции;