Для всех индикаторов поддерживается пара важных свойств, не связанных с расчетами, но улучшающих опыт пользователя. Их корректная установка в обработчике OnInit стала частью стандарта разработки индикаторов.
Целочисленное свойство INDICATOR_DIGITS задается с помощью рассмотренной ранее функции IndicatorSetInteger и влияет на точность представления вещественных чисел на графике и в Окне данных. По умолчанию терминал выводит 6 разрядов после десятичной точки. Если показания индикатора связаны с ценой текущего инструмента, то имеет смысл установить данное свойство равным точности представления цен: IndicatorSetInteger(INDICATOR_DIGITS, _Digits).
В случае WPR значения представляют собой аналог процентов, и потому имеет смысл ограничить выводимые значения двумя знаками после запятой.
IndicatorSetInteger(INDICATOR_DIGITS, 2); |
Вторым общеупотребительным свойством является строковое INDICATOR_SHORTNAME — для него используется функция IndicatorSetString. Это заголовок индикатора, выводимый во всплывающих подсказках, а также в левом верхнем углу подокна, если индикатор имеет собственное окно. Когда он не задан явным образом, используется название файла индикатора. В частности, на скриншоте в предыдущем разделе мы видим заголовок "IndWPR".
В заголовке индикатора принято отображать главные входные переменные и режимы работы (если их несколько).
Например, для WPR, как правило, включают в заголовок выбранный пользователем период.
Кроме того, заголовок позволяет сократить название. Это важно, потому что длина названия ограничена 63-мя символами.
Для обновленной версии WPR будем использовать такую настройку:
IndicatorSetString(INDICATOR_SHORTNAME, "%R" + "(" + (string)WPRPeriod + ")"); |
Результаты этих усовершенствований проверим уже в следующем разделе, после того как раскрасим зоны перекупленности и перепроданности в разные цвета (см. пример IndColorWPR.mq5).