>> P[0]= NormalizeDouble( iCustom(Symbol(),0,"Pivot",0,0),Digits );
У Вас в терминале индикатор как называется, "Pivot"?
>> P[0]= NormalizeDouble( iCustom(Symbol(),0,"Pivot",0,0),Digits );
У Вас в терминале индикатор как называется, "Pivot"?
Да. Вариант Fix такой же только с пропуском "воскресных" баров вот и всё.
Я вроде разобрался в чем дело. Ошибка эта возникает только в тестере. Онлайн всё работает отлично. При обращении к индикатору тестер рассчитывает сразу 1000 баров.
Потом по мере продвижения переменная counted_bars начинает возрастать но увеличивается и количество Bars. Переменная limit при этом получается всё время равна "1". В результате процедура попытки пересчета PP выполняется 2 раза. Причем на второй раз происходит тот самый глюк с определением даты. Почему не знаю :-). Наверное все таки баг но я не уверен.
Вылечил я это заменой "1" на "2" в строке. Хорошо бы разработчики это как то откомментировали......
limit=(Bars-counted_bars)-2;
Разработчики чего?
Обратитесь к автору пользовательского индикатора "Pivot". Этот индикатор не является стандартным и не входит в комплект поставки даже в виде примера
Разработчики чего?
Обратитесь к автору пользовательского индикатора "Pivot". Этот индикатор не является стандартным и не входит в комплект поставки даже в виде примера
Разработчики всего :))) Процедура расчета PP имеется в примере в руководстве пользователя MT4. Но она там "голая" просто ).
В общем это чисто алгоритмическая ошибка. Я вспомнил что утром и на графике была такая же лабуда которая появляется в тестере.
Как я уже писал процедура пересчета PP выполняется 2 раза а должна 1. Поэтому в тестере и онлайн возникает описанный выше косяк который не проявляется когда первый раз "бросаешь" индюк на котировки.
Так что всем спасибо. Я как обычно сам задал вопрос и сам же на него ответил ))).
З.Ы. Кстати хорошо бы индикатор PP был хотя бы в качестве нормального рабочего примера в MT4. Он ведь довольно широко используется.....
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем салют !
Чет уже голову сломал на ровном месте.
Имеется стандартный индикатор PivotPoints.
Я считываю в тестере значения P на M15 вначале каждого нового бара.
На выходе получается такая непонятка. Первый день выдает нормальные результаты а со второго и последующих только на барах со временем 0:00. На 0:15 появляются какие то "левые" значения и так до конца дня. Причем отрисовывается индикатор как положено.
0 23:53:39 2015.07.22 00:15 MyPivot GBPUSD,M15: P=1.55571
0 23:53:39 2015.07.22 00:30 MyPivot GBPUSD,M15: P=1.55571
0 23:53:39 2015.07.22 00:45 MyPivot GBPUSD,M15: P=1.55571
0 23:53:39 2015.07.22 01:00 MyPivot GBPUSD,M15: P=1.55571
.........
..........
0 23:53:39 2015.07.22 23:30 MyPivot GBPUSD,M15: P=1.55571
0 23:53:39 2015.07.22 23:45 MyPivot GBPUSD,M15: P=1.55571
0 23:53:39 2015.07.23 00:00 MyPivot GBPUSD,M15: P=1.55999
0 23:53:39 2015.07.23 00:15 MyPivot GBPUSD,M15: P=1.56111
0 23:53:39 2015.07.23 00:30 MyPivot GBPUSD,M15: P=1.56111
0 23:53:39 2015.07.23 00:45 MyPivot GBPUSD,M15: P=1.56111
0 23:53:39 2015.07.23 01:00 MyPivot GBPUSD,M15: P=1.56111
0 23:53:39 2015.07.23 01:15 MyPivot GBPUSD,M15: P=1.56111
0 23:53:39 2015.07.23 01:30 MyPivot GBPUSD,M15: P=1.56111
......
Решил исследовать поведение индикатора Pivot при вызове из советника.
Добавил код в советник.
И такой код в индикатор.
Получилось на выходе вот такое
0 18:45:42 2015.07.23 21:30 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 21:45 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 22:00 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 22:15 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 22:30 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 22:45 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 23:00 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 23:15 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 23:30 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.23 23:45 MyPivot GBPUSD,M15: P=1.55999 timeDay0=23 timeDay1=23
0 18:45:42 2015.07.24 00:00 Pivot_fix GBPUSD,M15: Timei=24 Time.i+1=23 P=1.56
0 18:45:42 2015.07.24 00:00 MyPivot GBPUSD,M15: P=1.5561 timeDay0=24 timeDay1=23
0 18:45:42 2015.07.24 00:15 Pivot_fix GBPUSD,M15: Timei=24 Time.i+1=23 P=1.5561
0 18:45:42 2015.07.24 00:15 MyPivot GBPUSD,M15: P=1.55128 timeDay0=24 timeDay1=24
0 18:45:42 2015.07.24 00:30 MyPivot GBPUSD,M15: P=1.55128 timeDay0=24 timeDay1=24
0 18:45:42 2015.07.24 00:45 MyPivot GBPUSD,M15: P=1.55128 timeDay0=24 timeDay1=24
То есть советник определяет дату правильно а индикатор при вызове глючит и попадает снова в процедуру расчета PP. Как так получается не пойму.