|
Свойства программ (#property)
У каждой mql5-программы можно указать дополнительные специфические параметры #property, которые помогают клиентскому терминалу правильно обслуживать программы без необходимости их явного запуска. В первую очередь это касается внешних настроек индикаторов. Свойства, описанные во включаемых файлах, полностью игнорируются. Свойства необходимо задавать в главном mq5-файле.
#property идентификатор значение |
Компилятор запишет в настройках выполняемого модуля объявленные значения.
Константа |
Тип |
Описание |
icon |
Путь к файлу с картинкой, которая будет показываться для программы EX5. Правила указания пути такие же, как и для ресурсов. Свойство должно указываться в главном модуле с исходным кодом MQL5. Файл иконки должен быть в формате ICO. |
|
link |
ссылка на сайт компании-производителя |
|
copyright |
название компании-производителя |
|
version |
версия программы, не более 31 символа |
|
description |
краткое текстовое описание mql5-программы. Может присутствовать несколько description, каждый из которых описывает одну строку текста. Общая длина всех description не может превышать 511 символов с учетом переводов строк |
|
stacksize |
размер стека для рекурсивных вызовов |
|
library |
|
библиотека; не назначается никакой стартовой функции, функции с модификатором export можно импортировать в других mql5-программах |
indicator_applied_price |
задает значение по умолчанию для поля "Apply to". Можно задавать одно из значений перечисления ENUM_APPLIED_PRICE. Если свойство не задано, то по умолчанию применяется значение PRICE_CLOSE |
|
indicator_chart_window |
|
выводить индикатор в окно графика |
indicator_separate_window |
|
выводить индикатор в отдельное окно |
indicator_height |
фиксированная высота подокна индикатора в пикселях (свойство INDICATOR_HEIGHT) |
|
indicator_buffers |
количество буферов для расчета индикатора |
|
indicator_plots |
количество графических серий в индикаторе |
|
indicator_minimum |
нижнее ограничение шкалы отдельного окна индикатора |
|
indicator_maximum |
верхнее ограничение шкалы отдельного окна индикатора |
|
indicator_labelN |
задает метку для N-ой графической серии, отображаемую в окне DataWindow. Для графических серий, требующих несколько индикаторных буферов (DRAW_CANDLES, DRAW_FILLING и другие), имена меток задаются через разделитель ';'. |
|
indicator_colorN |
цвет для вывода линии N, где N - номер графической серии; нумерация с 1 |
|
indicator_widthN |
толщина линии в графической серии, где N - номер графической серии; нумерация с 1 |
|
indicator_styleN |
стиль линии в графической серии, указываемый с помощью значения из ENUM_LINE_STYLE. N - номер графической серии, нумерация с 1 |
|
indicator_typeN |
вид графического построения, указываемый с помощью значения из ENUM_DRAW_TYPE. N - номер графической серии, нумерация с 1 |
|
indicator_levelN |
горизонтальный уровень N в отдельном окне индикатора |
|
indicator_levelcolor |
цвет горизонтальных уровней индикатора |
|
indicator_levelwidth |
толщина горизонтальных уровней индикатора |
|
indicator_levelstyle |
стиль горизонтальных уровней индикатора |
|
script_show_confirm |
|
выводить окно подтверждения перед запуском скрипта |
script_show_inputs |
|
выводить окно со свойствами перед запуском скрипта и запретить вывод окна подтверждения |
tester_indicator |
Имя пользовательского индикатора в формате "имя_индикатора.ex5". Необходимые для тестирования индикаторы определяются автоматически из вызова функций iCustom(), если соответствующий параметр задан константной строкой. Для остальных случаев (использование функции IndicatorCreate() или использование неконстантной строки в параметре, задающем имя индикатора) необходимо данное свойство |
|
tester_file |
Имя файла для тестера с указанием расширения, заключенное в двойные кавычки (как константная строка). Указанный файл будет передан тестеру в работу. Входные файлы для тестирования, если необходимы, должны указываться всегда |
|
tester_library |
Имя библиотеки с расширением, заключенное в двойные кавычки. Библиотека может быть как с расширением dll, так и с расширением ex5. Необходимые для тестирования библиотеки определяются автоматически. Однако если какая-либо библиотека используется пользовательским индикатором, то необходимо использовать данное свойство |
Пример задания описания и номера версии
#property version "3.70" // текущая версия эксперта |
Пример указания отдельной метки для каждого индикаторного буфера ("C open;C high;C low;C close")
#property indicator_chart_window |