Я сделал proof-of-concept советника, взаимодействующего с индикатором через временные глобальные переменные, изменяемые с помощью различных нажатий клавиш.
Углы действительно работают, но нужно помнить, что нижние углы находятся относительно фрейма индикатора, а не временной шкалы - см. видео.
К сожалению, загрузка видео не работает на этом форуме :(
не могли бы вы изменить код таким образом, чтобы индикатор просто выводил какой-то текст в правом верхнем углу,
пример, который можно использовать для каждого индикатора в отдельном окне.
Я разместил код с поясняющими комментариями
BR,
Investeo
//+------------------------------------------------------------------+//| UpperRightCornerText.mq5 |//| Copyright 2010, Investeo.pl |//| http://Investeo.pl |//+------------------------------------------------------------------+#property copyright "2010, Investeo.pl"#property link "http://Investeo.pl"#property version "1.00"#property indicator_separate_window#property indicator_plots 1string label_info="label1";
int window=-1;
//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+int OnInit()
{
//--- initialize a label in upper right corner// find indicator's window handleif((ENUM_PROGRAM_TYPE)MQL5InfoInteger(MQL5_PROGRAM_TYPE)==PROGRAM_INDICATOR)
window=ChartWindowFind();
// check if label object does not already exist and create itif(ObjectFind(0,label_info)<0)
{
// Create label in indicator's window ObjectCreate(0,label_info,OBJ_LABEL,window,0,0);
// Set X and Y distance from UPPER RIGHT CORNERObjectSetInteger(0,label_info,OBJPROP_XDISTANCE,200);
ObjectSetInteger(0,label_info,OBJPROP_YDISTANCE,20);
ObjectSetInteger(0,label_info,OBJPROP_CORNER, CORNER_RIGHT_UPPER);
// Set text properties: colour, font and font sizeObjectSetInteger(0,label_info,OBJPROP_COLOR,LightPink);
ObjectSetString(0,label_info,OBJPROP_FONT,"Arial");
ObjectSetInteger(0,label_info,OBJPROP_FONTSIZE,14);
// Set text to displayObjectSetString(0,label_info,OBJPROP_TEXT,"HELLO I am a label");
} elsePrint("label_info already exists");
//---return(0);
}
//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+int OnCalculate(constint rates_total,
constint prev_calculated,
constdatetime& time[],
constdouble& open[],
constdouble& high[],
constdouble& low[],
constdouble& close[],
constlong& tick_volume[],
constlong& volume[],
constint& spread[])
{
//---//--- return value of prev_calculated for next callreturn(rates_total);
}
//+------------------------------------------------------------------+void OnDeinit(constint reason)
{
//---if(!ObjectFind(0,label_info)<0)
ObjectDelete(0, label_info);
}
Я сделал proof-of-concept советника, взаимодействующего с индикатором через временные глобальные переменные, изменяемые с помощью различных нажатий клавиш.
Углы действительно работают, но нужно помнить, что нижние углы находятся относительно фрейма индикатора, а не временной шкалы - см. видео.
К сожалению, загрузка видео не работает на этом форуме :(
На данный момент я разместил его на
http://www.youshare.com/Guest/c94bb3e9cfe6a424.flv.html
(смотрите в полноэкранном режиме для достижения наилучших результатов)
наилучшие результаты,
Привет
К этому видео не было приложено аудио.
Не могли бы вы выложить код SampleTextIndicator?
С уважением,
Привет
К этому видео не было приложено аудио.
Не могли бы вы выложить код SampleTextIndicator?
С уважением,
Привет
Видео не содержит звуковой дорожки. Я выложу код сегодня вечером, потому что я оставил его на другом ноутбуке.
Код может быть не очень элегантным, но работает правильно
Привет
Спасибо, что выложили код,
не могли бы вы изменить код таким образом, чтобы индикатор просто выводил какой-то текст в правом верхнем углу,
пример, который можно использовать для каждого индикатора в отдельном окне
Привет
Спасибо, что выложили код,
не могли бы вы изменить код таким образом, чтобы индикатор просто выводил какой-то текст в правом верхнем углу,
пример, который можно использовать для каждого индикатора в отдельном окне.
Я разместил код с поясняющими комментариями
BR,
Investeo
Мне нужен совет по простому индикатору:
Close > EMA 34 = зеленая гистограмма или ....line или....arrow...
Close< EMA 34 = язычковая гистограмма или...линия или....arrow...
Спасибо за помощь
Я поместил код с поясняющими комментариями
БР,
Investeo
Здравствуйте, Investeo
Большое спасибо, ваш код работает, т.е. ярлык отображается, но значение не обновляется. Я допустил ошибку?
Вот мой код.
Мне нужен совет по простому индикатору:
Close > EMA 34 = зеленая гистограмма или ....line или....arrow...
Close< EMA 34 = язычковая гистограмма или...линия или....arrow...
Спасибо за помощь
Вы можете попробовать MACD для этих целей
Да, но не должен следовать "кривой индикатора", а только показывать изменение цвета.
Спасибо, Вальб
Да, но не должны следовать "кривой индикатора", а только указывать на изменение цвета.
Спасибо Walb
Индикатор для МТ4 называется russian colors, вы хотите
/go?link=https://www.forexfactory.com/showthread.php?t=173962
Вам нужно только заменить HMA на EMA34.