Что неправильно?
Вот эта строка ---> Buffer[i]=iATR(NULL,PERIOD_D1,1,i); ---> усреднение по одному бару для периода D1. Или я что-то не так понимаю?
Попробуйте вот так:
Buffer[i] = iATR(NULL,PERIOD_D1,1,iBarShift(NULL,PERIOD_D1,iTime(NULL,0,i),false));
А еще лучше так:
Buffer[i] = iATR(NULL,PERIOD_D1,1,iBarShift(NULL,PERIOD_D1,Time[i],false));
Вот эта строка ---> Buffer[i]=iATR(NULL,PERIOD_D1,1,i); ---> усреднение по одному бару для периода D1. Или я что-то не так понимаю?
Попробуйте вот так:
Buffer[i] = iATR(NULL,PERIOD_D1,1,iBarShift(NULL,PERIOD_D1,iTime(NULL,0,i),false));
А еще лучше так:
Buffer[i] = iATR(NULL,PERIOD_D1,1,iBarShift(NULL,PERIOD_D1,Time[i],false));
Спасибо!
Хочу написать простой индикатор, показывающий на H1 зачение ATR(D1). Казалось бы, по логике, на всех часовых барах, принадлежащих какому-то дню, должно быть показано одно и то же значение, то есть должны быть прямые горизонтальные линии длиной 24 бара. Только этого не происходит. В чём ошибка?
Вот эта строка ---> Buffer[i]=iATR(NULL,PERIOD_D1,1,i); ---> усреднение по одному бару для периода D1. Или я что-то не так понимаю?