Назначение кода символа для метки

Как было сказано в обзоре Объектов с привязкой ко времени и цене, метка OBJ_ARROW позволяет вывести на график произвольный символ шрифта Wingdings (полный перечень доступных символов можно найти в документации MQL5). Сам код символа для объекта определяется целочисленным свойством OBJPROP_ARROWCODE.

Продемонстрировать все символы шрифта позволяет скрипт ObjectWingdings.mq5. В нем мы создаем в цикле метки с различными символами, размещая их по одной на баре.

#include "ObjectPrefix.mqh"
   
void OnStart()
{
   for(int i = 33; i < 256; ++i) // коды символов
   {
      const int b = i - 33; // номер бара
      const string name = ObjNamePrefix + "Wingdings-"
         + (string)iTime(_Symbol, _Period, b);
      ObjectCreate(0, name, OBJ_ARROW,
         0, iTime(_Symbol, _Period, b), iOpen(_Symbol, _Period, b));
      ObjectSetInteger(0, name, OBJPROP_ARROWCODE, i);
   }
   
   PrintFormat("%d objects with arrows created", 256 - 33);
}

Как это выглядит на графике, показано на следующем скриншоте.

Символы Wingdings в метках OBJ_ARROW

Символы Wingdings в метках OBJ_ARROW