Hab was übersehn:
Du benötigst ja auch den Index für das Array und der beginnt bei 0.
Darum wär es doch besser int u=0 und die Bedingung u<20 verwenden. Damit hast du den Index für das Array. Bei der Indikator abfrage musst du dann aber den Index u+1 verwenden, damit er dann beim Indikator bei 1 beginnt.
Code:
for(int u=0;u<20;u++)
{
MACDtip[u]=iMACD(NULL,0,MACDWert1,MACDWert2,9,PRICE_CLOSE,MODE_MAIN,u+1);
...
}
Es gäbe auch noch die möglichkeit für das Array einen eigenen Zähler zu verwenden aber Das ist doch eine sauberere Lösung.