kon12>>: Не совсем понял? Когда рисую индикатор Kon в окне, он отлично работает. Поясните...
когда вы рисуете в окне, у вас отображаются столбики гистограммы либо оливкового, либо зеленого цвета. при этом первый соответствует буферу up, а второй dn. если на 0 баре нарисован только dn, а вы обращаетесь к индикатору iCustom(0,0,"Kon",10,0,0), т.е. параметр mode равен 0 (посмотрите у вас 0 - это буфер up - SetIndexBuffer(0,up);), то результат вызова функции будет скорее всего EMPTY_VALUE.
Вопрос совсем простой. Пытаюсь обратиться к индикатору OsMA, который есть в стандартном наборе пользовательских индикаторов. Хочу в окне индикаторов просто нарисовать линию этого индикатора. Индикатор OsMA имеет параметры 12,26,9 и рисуется по буферу 0. Что не правильно в коде? В окне индикатора рисуется линия 0 и все.
#property indicator_separate_window#property indicator_buffers 1#property indicator_level1 0.0#property indicator_color1 Olivedouble z;//+------------------------------------------------------------------+//| Custom indicator initialization function |//+------------------------------------------------------------------+int init(){SetIndexBuffer(0,z);SetIndexStyle(0,DRAW_HISTOGRAM);return(0);}//+------------------------------------------------------------------+//| Custom indicator deinitialization function |//+------------------------------------------------------------------+int deinit(){//----//----return(0);}//+------------------------------------------------------------------+//| Custom indicator iteration function |//+------------------------------------------------------------------+int start(){ z=iCustom(NULL,0,"OsMA",12,26,9,0,0);//----return(0);}
Вопрос совсем простой. Пытаюсь обратиться к функции OsMA, которая есть в стандартном наборе пользовательских индикаторов. Хочу в окне индикаторов просто нарисовать линию этого индикатора. Индикатор OsMA имеет параметры 12,26,9 и рисуется по буферу 0. Что не правильно в коде? В окне индикатора рисуется линия 0 и все.
не, так не пойдет.
z - это массив и записывать в него данные надо поэлементно, делается это как правило в цикле. Например:
Еще вопрос по моей теме. Допустим я рисую на графике кривую, например МА. Затем использую пользовательский индикатор, в котором задействована эта МА через функцию iCustom. Можно ли связать их так, чтобы при изменении периода МА на графике автоматически изменялся период МА в пользовательском индикаторе?
Не совсем понял? Когда рисую индикатор Kon в окне, он отлично работает. Поясните...
когда вы рисуете в окне, у вас отображаются столбики гистограммы либо оливкового, либо зеленого цвета. при этом первый соответствует буферу up, а второй dn. если на 0 баре нарисован только dn, а вы обращаетесь к индикатору iCustom(0,0,"Kon",10,0,0), т.е. параметр mode равен 0 (посмотрите у вас 0 - это буфер up - SetIndexBuffer(0,up);), то результат вызова функции будет скорее всего EMPTY_VALUE.
Так понятнее?
Пробовал менять номер буфера и на 1 и 2 - не помогает
проверьте, совпадает ли строка "Kon" в вызове иКастом с именем файла mq4, в том числе регистр символов
а какое вообще значение выводит функция?
Вопрос совсем простой. Пытаюсь обратиться к индикатору OsMA, который есть в стандартном наборе пользовательских индикаторов. Хочу в окне индикаторов просто нарисовать линию этого индикатора. Индикатор OsMA имеет параметры 12,26,9 и рисуется по буферу 0. Что не правильно в коде? В окне индикатора рисуется линия 0 и все.
Вопрос совсем простой. Пытаюсь обратиться к функции OsMA, которая есть в стандартном наборе пользовательских индикаторов. Хочу в окне индикаторов просто нарисовать линию этого индикатора. Индикатор OsMA имеет параметры 12,26,9 и рисуется по буферу 0. Что не правильно в коде? В окне индикатора рисуется линия 0 и все.
не, так не пойдет.
z - это массив и записывать в него данные надо поэлементно, делается это как правило в цикле. Например:
for(i=100;i>=0;i--)
{
z[i]= iCustom(NULL,0,"OsMA",12,26,9,0,i);
}
Еще вопрос по моей теме. Допустим я рисую на графике кривую, например МА. Затем использую пользовательский индикатор, в котором задействована эта МА через функцию iCustom. Можно ли связать их так, чтобы при изменении периода МА на графике автоматически изменялся период МА в пользовательском индикаторе?
Подскажите, я работаю на графике дней.
И хочу обратится к данным по минуткам. Они у меня обновляются или там старые данные?
Вопрос - как это работает (оптимизация Индикаторов):
Правильно ли я понимаю что с каждым новым тиком тот же самый прямоугольник
(одни и те же размеры при равном количестве баров) будет удаляться и перерисовываться?
СтОит ли в таком случае добавить проверку на количество баров (если баров стало больше, то только тогда и перерисовываем)
чтобы разгрузить CPU компьютера или выигрыш будет минимальный и не стоит с этим возиться?