Функция текстовой метки на языке MQL5. Должна подойти и для MQL4:
void textLabel(int index=0, string text="infoText", int x = 50, int y = 50, int corner = 0, color clr = clrWhite, string font="Arial", int font_size=15)
{
int chart_ID = 0;
string name = "infoLabel" + (string)index;
if(!ObjectCreate(chart_ID,name,OBJ_LABEL,0,0,0))
{
Print(__FUNCTION__,
": не удалось создать текстовую метку! Код ошибки = ",GetLastError());
return;
}
//--- установим координаты метки
ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);
ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);
//--- установим угол графика, относительно которого будут определяться координаты точки
ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);
//--- установим текст
ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
//--- установим шрифт текста
ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
//--- установим размер шрифта
ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
//--- установим угол наклона текста
// ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle);
//--- установим способ привязки
ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,ANCHOR_LEFT_UPPER);
//--- установим цвет
ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
//--- отобразим на переднем (false) или заднем (true) плане
ObjectSetInteger(chart_ID,name,OBJPROP_BACK,false);
//--- включим (true) или отключим (false) режим перемещения метки мышью
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,false);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,false);
//--- скроем (true) или отобразим (false) имя графического объекта в списке объектов
ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,false);
//--- установим приоритет на получение события нажатия мыши на графике
// ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
//--- успешное выполнение
}