EUR/USD 1.1032
GBP/USD 1.275
USD/RUB 64.297
USD/JPY 108.72
Brent 58.91
Gold 1482.8
LTC/USD 55.3
BTC/USD 8208
ETH/USD 181.2
EOS/USD 2.99
Регистрация

Язык программирования MQL. Часть 2 – Типы данных

Обучение
MetaTraderMQL
MQL4

В данной статье мы разберем основные типы данных в языке программирования MQL, а также узнаем для чего и как они используются. Постараюсь не углубляться на 100% в программирование и написать более простыми словами 😉

Предыдущие мои статьи из рубрики: 

Итак, в MQL есть следующие основные типа данных:

  • Int- это целые числа (1, 39, 49, 999);
  • double- это числа с изменяемым значением после запятой (0,1  ,  1.30);
  • bool- это логические типа данных (true/falsh);
  • string- строковые типы данных (live expert);
  • color- обозначение цвета (red,green,blue и другие);
  • datetime- обозначение вида дата/время (31.12.1999 24:00).

Разберем подробнее каждый тип данных

 

INT – ЦЕЛЫЕ ЧИСЛА

Для удобства работы в MQL целым числам присвоены следующие значения для деления их по типам и длине:

  • Ulong.
  • Ushort.
  • Long.
  • Short.
  • Uint.
  • Uchar.
  • Char.
  • Int.

В коде торгового робота такие числа показывают сколько свечей загружено на графике инструмента, расстояние в пунктах до ордеров (любых видов и настроек), а также количество открытых позиций. Не может быть открыто 1.5 ордера или загружено 2.5 бара . Именно поэтому для обозначения таких значений используются целые числа.

Как и в математике, такие числа бывают шестнадцатеричных значений, содержат латинские буквы и целые числа 0-9, в начале такого числа всегда стоит 0х или же 0Х.

Например, 0x5GH43, 0Xtu658, 0xAAA01.

И пример более знакомых всем десятичных чисел: 1.5, 11, -500, 5678, 5 и другие.

 

DOUBLE – ЦЕЛЫЕ ЧИСЛА С ДРОБНОЙ ЧАСТЬЮ

В этих числах к целому прибавляться дробная часть, имеющая дополнительное значение. Например, количество открытых сделок или установленных ордеров. Если робот открыл за неделю (5 торговых дней) 23 сделок, то мы берем F, как переменную, равную 23 (количество сделок) и деленную на 5 (торговых дней). В итоге, мы получаем значение double 4.6.  Если же выходит целое число, например, F=40 сделок / 10 торговых дней, то значение double равно 4. Но все равно это считается числом с нулями после запятой, равное 4.00000 (главное в коде обозначить точку после целого числа). Максимальное количество цифр, следующее за точкой, равно 15, например, 23,56895647582519.

Пример double в коде:

double Sin      = 100.32               // переменная double

double  A_84    = -0.5                 // переменная double

double EUR      = 10.6565484           // переменная double

 

BOOL – показатель логического типа (true/false)

Данный показатель имеет свойства правда/ложь или в 0/1, соответственно.  То есть bool в программе – это ответ вида true/false, который используется для выключения/включения торгового робота или его отдельных функций (открытие/закрытие ордеров, установка ордеров, аудио и визуальные сигналы и прочие). Пример в коде выключения функции программы:

bool Trading_Disable=1; // Выключение

Вместо 1 можно использовать обозначение true .

 

STRING – строковые типы данных

Данный тип данных позволяет добавить заметку или другие данные в виде символов или цифр к переменной. Выделяется такая строка в коде двойными кавычками:

string s="Пример” ; // Переменная типа string со значением Пример

При этом, максимальная длина составляет 255 символом, а в случае превышения длины программа сама «обрежет» лишние символы и выдаст предупреждение. Также переменной этого типа данных можно дать имя:

string Prefix = “Пример”; // Переменная Prefix типа string в коде

 

COLOR – ЦВЕТ

Это наиболее простой и самый знакомый раздел практически всем пользователям, которые сталкивались с языками программирования или конструкторами сайтов. И, если в обычной константе значение – это целые или дробные числа, то тут значение будет цвет. В MQL это выражено в числовых значениях или названием цвета.

В коде красный цвет , например, выглядит вот так:

color Red      =   0xFF3300;             // Красный цвет

Или:

color Red      = Red ;                   //  Красный цвет

Язык программирования MQL. Часть 2 - Типы данных Язык программирования MQL. Часть 2 - Типы данных

 

DATETIME – ОБОЗНАЧЕНИЕ ДАТЫ И ВРЕМЕНИ

Из названия понятно, что обозначает данный тип данных. Как правило, даты отображают в формате YYYY.MM.DD, то есть год/месяц/день.

Например, 2019.08.28.

Или в виде DD.MM.YYY, то есть день/месяц/год.

Например, 28.08.2019.

Чтобы переменная получила вид DATETIME ставим в начале объявления переменной datetime. При этом, нам доступно обозначение любого момента времени с 1 января 1970 года по 31 декабря 2037 года. Начинается обозначение с символа (D`) с одинарной кавычкой. Дату не всегда обязательно писать полностью, можно обозначить год и число без времени или нулевое время. Посмотрим, как это выглядит в коде:

datetime Omega   =   D`25.08.2019   10:00:50`;        // Воскресенье

datetime Omega2  =   D`2019.08.25   10:00:50`;        // Воскресенье

 

 

Мы закончили рассмотрение основных типов данных в MQL. Надеюсь было информативно. Спасибо, что дочитали до конца. Буду рад обратной связи в комментариях.

0

Автор публикации

не в сети 1 неделя

Andriod Trader

0
Поторгуем?
Комментарии: 1Публикации: 26Регистрация: 31-05-2019
Поделиться публикацией
  • https://www.forex.blog/jazyk-programmirovanija-mql-chast-3-peremennye-i-konstanty/ Язык программирования MQL. Часть 3 – Переменные и константы

    […] Язык программирования MQL. Часть 2 – Типы данных. […]

    0