Использование констант в эксперте
В прошлом выпуске я выложил код нашего первого эксперта.
Вначале разберем, что означают следующие строчки:
#define STATE_SQUARE 0 #define STATE_LONG 1 #define STATE_SHORT 2
Эти строчки дают возможность вместо написания малоинформтивных чисел 0, 1 или 2 использовать более понятные имена STATE_SQUARE, STATE_LONG или STATE_SHORT. Результат будет абсолютно таким же - если программа встретит в тексте STATE_SQUARE, STATE_LONG или STATE_SHORT, она заменит их на 0, 1 и 2 соответственно. Такая программа будет более читаемой.
Также константы используются в тех случаях, когда какое-то значение использует в нескольких местах программы и существует вероятность, что трейдеру может понадобиться изменить это значение в будущем. Если использовать константу, достаточно будет это сделать только в одном месте - в директиве #define.
Для объявления константы используйте следующую конструкцию:
#define имя значение
Примеры констант:
#define AUTHOR "Vedikhin Andrey" #define Lots 1.1 #define ItemsNumber 77
Следующие две строчки абсолютно идентичны, но первая - более читаема:
for(x=1;x<=ItemsNumber;x++) Print(Lots*x); for(x=1;x<=77;x++) Print(1.1*x);
Константа может быть любого типа: int, bool, datetime, double, color, string - см. описание типов в выпуске "Настраиваем параметры нового эксперта".
В следующем выпуске я расскажу о переменных.
Все статьи по теме "Пишем советников для MetaTrader 4".
- Механическая торговая система - миф или реальность?
- С чего начать при написании советника:
- Создаем нового советника - Настраиваем параметры. - Язык MetaQuotes Language 4: