Как записать массив по поступлению нового бара

 

Мне нужно сформировать массив с записью новой строки по поступлению нового бара по GOLD:
GOLDM1c[i][0]=iClose("GOLD",PERIOD_M1,1);
GOLDM1c[i][1]=iClose("USDCHF",PERIOD_M1,1);
GOLDM1c[i][2]=iClose("USDJPY",PERIOD_M1,1);
GOLDM1c[i][3]=iClose("EURUSD",PERIOD_M1,1);
GOLDM1c[i][4]=iClose("GBPUSD",PERIOD_M1,1);
У меня получается, что строки записываются по каждому тику, а мне нужно, чтобы только по поступлению нового бара, и массив начал формироваться с текущего момента, а не по всей загруженной предистории.
И как мне добиться построчной дозаписи на диск используя FileWrite, при формировании новой строки, а не переписывать весь массив каждый раз заново при приходе нового бара.

 
Смотрим 'Особенности написания экспертов'

Лучший метод:
static datetime prevtime=0;
...
if(prevtime == Time[0]) return(0);
prevtime = Time[0];
...
Причина обращения: