Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Интересует заработок в MQL5 Cloud Network? Загляни в профиль!
angela
1575
angela 2012.01.15 14:16 
Возникла проблема, не могу решить. Индикатор рисует линию сопротивления (аналогично сделаю и для линии поддержки), но при поступлении новых баров происходят скачки на уже рисовавшиеся ранее уровни, как сделать, что-бы не было откатов назад, а рисование шло только по вновь поступившим барам?
Файлы:
indps.mq4 5 kb
Nikolaj
305
Nikolaj 2012.01.15 15:24  

max1=0; while (max1==0) {.... ... i++; ??}

в init цикл без смысла - функция выполняется один раз

angela
1575
angela 2012.01.15 16:37  
nikost:

max1=0; while (max1==0) {.... ... i++; ??}

в init цикл без смысла - функция выполняется один раз


Смысл в том, что этим устанавливаются начальные значения, но вопрос не в этом. Если Вы посмотрели работу в тестере в режиме визуализации, то видно перескакивание линии то вперед, то назад, вопрос, как от этого избавиться?
Vladyslav Goshkov
2050
Vladyslav Goshkov 2012.01.15 17:07  
iClose(NULL,"PERIOD", i+1)

?

double iClose( string symbol, int timeframe, int shift) 
Возвращает значение цены закрытия указанного параметром shift бара с соответствующего графика (symbol, timeframe). 
В случае ошибки функция возвращает 0. Для получения дополнительной информации об ошибке необходимо вызвать функцию GetLastError().
Для текущего графика информация о ценах закрытия находится в предопределенном массиве Close[]. 
Параметры:
symbol   -   Символьное имя инструмента. NULL означает текущий символ. 
timeframe   -   Период. Может быть одним из периодов графика. 0 означает период текущего графика. 
shift   -   Индекс получаемого значения из таймсерии (сдвиг относительно текущего бара на указанное количество периодов назад). 

Пример:
  Print("Current bar for USDCHF H1: ",iTime("USDCHF",PERIOD_H1,i),", ",  iOpen("USDCHF",PERIOD_H1,i),", ",
                                      iHigh("USDCHF",PERIOD_H1,i),", ",  iLow("USDCHF",PERIOD_H1,i),", ",
                                      iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));

 
Nikolaj
305
Nikolaj 2012.01.15 17:41  
Angela:

Смысл в том, что этим устанавливаются начальные значения, но вопрос не в этом. Если Вы посмотрели работу в тестере в режиме визуализации, то видно перескакивание линии то вперед, то назад, вопрос, как от этого избавиться?
Файлы:
indps_1.mq4 3 kb
angela
1575
angela 2012.01.15 19:15  
VladislavVG:

?


Период устанавливается в настройках:

extern int PERIOD =PERIOD_M1;

Sceptic Philozoff
Модератор
17846
Sceptic Philozoff 2012.01.15 19:18  
Ну хорошо, а зачем PERIOD в кавычки-то ставите, Angela?
angela
1575
angela 2012.01.15 19:26  
nikost:


И что это значит? Нельзя первую и вторую координату трендовой линии искать в одном диапазоне (берется одно и тоже значение для обеих координат), нельзя ограничивать диапазон поиска 7 барами, может и не найтись отвечающая условиям точка.
angela
1575
angela 2012.01.15 19:33  
Mathemat:
Ну хорошо, а зачем PERIOD в кавычки-то ставите, Angela?

Да, Вы правы, кавычки лишние, но суть проблемы это не решает, убрала кавычки - все работает точно также, дерганье вперед - назад осталось.
Nikolaj
305
Nikolaj 2012.01.16 05:50  
Angela:

И что это значит? Нельзя первую и вторую координату трендовой линии искать в одном диапазоне (берется одно и тоже значение для обеих координат), нельзя ограничивать диапазон поиска 7 барами, может и не найтись отвечающая условиям точка.
если честно,то в логику не вникал. просто что покузалось лишним убрал. 7 оставил, так как она гдето была в вашем индикаторе. ещё нужно убрать буферы - проглядел, извиените. ...
angela
1575
angela 2012.01.16 08:41  
nikost:
если честно,то в логику не вникал. просто что покузалось лишним убрал. 7 оставил, так как она гдето была в вашем индикаторе. ещё нужно убрать буферы - проглядел, извиените. ...

Извиняю, но больше ничего не убирайте! А то, не видать Вам моего прощения!
/ /12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий