Здравствуйте. Подскажите, почему при запросе свойств трендовой линии переменная res всегда true, хотя в ручную ставлю флаг показ только W1, или только MN1?
Необходимо что-бы она показывалась только на одном из таймов.
Неверное количество параметров, вы вызываете функцию как 1 вариант, а надо как второй или сравнивать результат.
TheLiteShadow: Так-то оно так, но получается, что при каждом новом баре обязательно "чистить" все последние "индексы" заданных буферов? Спрашивается зачем? В МТ4 такой ситуации не было, я понимаю, при первичной инициализации я его почистил, но потом по идее это должен делать сам МТ, впрочем по идее и при инициализации это должен делать МТ, а не программист, с какой целью буфер индикатора - это просто выделение памяти я не совсем понимаю...
Когда я несколько лет назад задавал этот вопрос, мне ответили, что так сделано в целях оптимизации. Вы проинициализируете ровно столько, сколько нужно. А если вы сразу заливаете туда какие-то рассчетные данные, то и вовсе не нужно предварительно записывать нули. МТ5 отличается от МТ4 во многом.
marketeer: Когда я несколько лет назад задавал этот вопрос, мне ответили, что так сделано в целях оптимизации. Вы проинициализируете ровно столько, сколько нужно. А если вы сразу заливаете туда какие-то рассчетные данные, то и вовсе не нужно предварительно записывать нули. МТ5 отличается от МТ4 во многом.
То что МТ4 отличается от МТ5 понимают все, но насчёт оптимизации я бы не согласился, а программисту слишком много того, что приходится отслеживать дополнительно, не сравнимо с языками низкого уровня, но по мне так лишнее, в общем ясно, спасибо...
TheLiteShadow: Неверное количество параметров, вы вызываете функцию как 1 вариант, а надо как второй или сравнивать результат.
Пробовал и так. Хотя реально флаги работают (линия кажет только на одном тайме), а эксперт видит что оба флага включены.
long res;
ObjectGetInteger(0,"line",OBJPROP_TIMEFRAMES,OBJ_PERIOD_W1|OBJ_PERIOD_MN1,res);
if((bool)res) Alert("линия line показывается на OBJ_PERIOD_W1 и OBJ_PERIOD_MN1");
svds75: Пробовал и так. Хотя реально флаги работают (линия кажет только на одном тайме), а эксперт видит что оба флага включены.
А чего вы собственно хотите? Вы же запрашиваете видимость на недельном ИЛИ месячном таймфрейме. Так что программа вам вернет true если хотя бы один из них включен.
Здравствуйте. Подскажите, почему при запросе свойств трендовой линии переменная res всегда true, хотя в ручную ставлю флаг показ только W1, или только MN1?
Необходимо что-бы она показывалась только на одном из таймов.
Потому что линия всегда существует, потому и всегда считывается значение. Невидимость линии не означает ее отсутсвия.
Здравствуйте. Подскажите, почему при запросе свойств трендовой линии переменная res всегда true, хотя в ручную ставлю флаг показ только W1, или только MN1?
Необходимо что-бы она показывалась только на одном из таймов.
Так-то оно так, но получается, что при каждом новом баре обязательно "чистить" все последние "индексы" заданных буферов? Спрашивается зачем? В МТ4 такой ситуации не было, я понимаю, при первичной инициализации я его почистил, но потом по идее это должен делать сам МТ, впрочем по идее и при инициализации это должен делать МТ, а не программист, с какой целью буфер индикатора - это просто выделение памяти я не совсем понимаю...
Когда я несколько лет назад задавал этот вопрос, мне ответили, что так сделано в целях оптимизации. Вы проинициализируете ровно столько, сколько нужно. А если вы сразу заливаете туда какие-то рассчетные данные, то и вовсе не нужно предварительно записывать нули. МТ5 отличается от МТ4 во многом.
Неверное количество параметров, вы вызываете функцию как 1 вариант, а надо как второй или сравнивать результат.
Пробовал и так. Хотя реально флаги работают (линия кажет только на одном тайме), а эксперт видит что оба флага включены.
А чего вы собственно хотите? Вы же запрашиваете видимость на недельном ИЛИ месячном таймфрейме. Так что программа вам вернет true если хотя бы один из них включен.
Запрашиваейте раздельно через 2 вызова.
Пробовал и так. Хотя реально флаги работают (линия кажет только на одном тайме), а эксперт видит что оба флага включены.
Так может Вам нужно прямо задавать видимость?
Здравствуйте. Подскажите, почему при запросе свойств трендовой линии переменная res всегда true, хотя в ручную ставлю флаг показ только W1, или только MN1?
Необходимо что-бы она показывалась только на одном из таймов.
Так может Вам нужно прямо задавать видимость?
Нет задавать мне нужно в ручную, а проверять программно.
Вот так:
Если флаг видимости на H1 установлен, будет true.