Da nur der Buffer 0 ausgelesen wird, ist u.a. die for-Schleife im ersten Code völlig überflüssig, zumal richtigerweise festgestellt wurde, dass es keinen Buffer mit -1 gibt.
Der Code von @yytrader ist aber leider auch nicht ganz zielführend, weil erstens der Index count nicht incrementiert wird und zweitens das Shift i nur von 0 bis 9 läuft. Shift i muß allerdings solange incrementiert werden, bis count auf den Wert 9 incrementiert wurde. Erst dann darf die gesamte while-Schleife verlassen werden. Anzumerken sei hier, dass es auch das Feld ZIGZAG[0] mit einem Wert gibt, welches aber nicht im Chart abgebildet wird.
Daher:
Code:
double ZIGZAG[9];
int start()
{
int i = 0;
double value = 0;
int count = 0;
while (count < 9)
{
value = iCustom(Symbol(),0,"ZigZag",5,5,3,0,i);
if (value > 0)
{
ZIGZAG[count] = value;
count++;
}
i++;
}
}
traderdoc