Wieso speichert mein Array immer nur den Wert null?

Einloggen oder registrieren, um einen Kommentar zu schreiben
Gspandelino1410
100
Gspandelino1410  

Guten tag

ïch wollte ein array programmieren das bei jeder neuen kerze den aktuellen Bid wert in einem Array speichert und ich das Array immer wieder von der grösse her anpasse. Leider speichert es immer nur einen 0 im array irgendetwas mache ich falsch habe herausgefunden das es am Arrayresize liegt. Weiss aber nicht genau wie ich es lösen muss. ich will einfach das bei jeder neuen kerze der Bid wert gespeichert wird und das Array immer nur so gross ist wie die Anzahl an Werte die im Array sind. Hoffe jemand kann mir helfen und danke schon mal. Ich verwende MQL4.

   static double Downarray[500];
   
   static int DownarrayCounter = 0;

   
int start(){

static double OldZeit;
double NewZeit=iClose(NULL,0,1);

if(NewZeit!=OldZeit){

        Downarray[DownarrayCounter] = Bid;
        DownarrayCounter = DownarrayCounter + 1;
        ArrayResize(Downarray,DownarrayCounter);
         

}

OldZeit=NewZeit;

}
Carl Schreiber
Moderator
7391
Carl Schreiber  
  1. Wenn Du suchst, findest Du sicherlich eine Lösung, die in etwa das bietet, was Du brauchst. Motto: es gibt fast nix, was nicht bereits für MT4/5 bereits programmiert wurde!
  2. Zu: "static double Downarray[500];"
    a) Im globalen Kontext brauchst Du Kein static, ist sowie so;
    b) so definierst Du ein Array, dessen Größe nicht veränderbar ist! Lies dazu in der Ref. des Editors ArrayResize und richte Dich nach dem Beispiel dort (siehe 1. => Motto: ..)
Einloggen oder registrieren, um einen Kommentar zu schreiben