[Archiv!] Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht daran vorbei. Könnte nirgendwo ohne dich hingehen - 2. - Seite 172

 
100yan:
Es wird nach einem Integer-Wert gefragt, aber ein Array kann auch als Variable deklariert werden?!

Wissen Sie, was eine Variable ist? Sie ist eine Zelle im Speicher, die verändert werden kann. int ist ein Typ einer Variablen.

https://book.mql4.com/ru/basics/vars

https://book.mql4.com/ru/basics/types

 
Um ein Handelssystem in MT4 anhand historischer Daten zu testen, muss ich ein Archiv mit Kursen laden, das gewünschte Währungspaar auswählen, alle Zeitrahmen, einschließlich des Minutenzeitrahmens, auswählen und das Archiv laden. Bei den Tests gibt es keine Abweichungen von den Diagrammen, aber es gibt ein Problem, das die Ergebnisse der Tests und der Optimierung erheblich beeinträchtigt. In den Kursen gibt es oft zeitliche Lücken, z.B. im H1-Chart nach der Kerze vom 7. Mai 2010 eine Kerze vom 8. Juli 2010, also eine Lücke von 1 Monat. Das wiederholte Herunterladen des Angebotsarchivs bringt keine Lösung. Ich habe mehr als genug freien Speicherplatz auf meiner Festplatte, um die Zitate herunterzuladen.

Die Frage: Wie kann ich alle Kurse ohne Zeitlücken korrekt in den MT4 laden?
 
polsvv:

Können Sie mir sagen, was dieser Mist in den Protokollen zu bedeuten hat? Wie kann ich sie vermeiden? Der Expert Advisor handelt mit diesem Indikator, nach einem Fehler friert der Handel ein, bis Sie das Terminal neu starten, da ein Neustart des Expert Advisors zu einem erneuten Absturz führen kann.

22:39:53 +ZigZag_Levels CLJ1,M5: uninit Grund 3
22:39:53 Zickzack CLJ1,M5: Uninit Grund 1

22:39:53 Zickzack CLJ1,M5: entfernt

Vielleicht liegt es daran, dass ich das Terminal gleichzeitig auf einem Remote-Server und auf meinem eigenen Computer verwende?

https://docs.mql4.com/ru/constants/uninit Überprüfen Sie die Gründe für die Deinitialisierung, es sieht so aus, als ob Sie den Zeitraum/Symbol-Chart bei laufendem EA ändern, daher die Abstürze.
 
wizmon:
Frage: Wie kann man in MT4 alle Kurse korrekt und ohne Zeitlücken herunterladen?

+ vor dem Hochladen (wenn Sie solche Löcher haben), ist es ratsam, den bestehenden Verlauf zu löschen

+ Stellen Sie die Verlaufstiefe in den Einstellungen auf mindestens 10 000 000 Takte ein.

+ Nach dem Laden der Historie müssen Sie erneut auf die Schaltfläche "Laden" klicken und die Neuberechnung aller TFs bestätigen.

 
polsvv:

Expert Trades mit diesem Indikator, nach einem Fehler wird der Handel gestoppt

Wahrscheinlich ein geschleifter Code.
 
polsvv:

Können Sie mir sagen, was dieser Mist in den Protokollen zu bedeuten hat? Wie kann ich sie vermeiden? Der Expert Advisor handelt mit diesem Indikator, nach einem Fehler friert der Handel ein, bis Sie das Terminal neu starten, da ein Neustart des Expert Advisors zu einem erneuten Absturz führen kann.

22:39:53 +ZigZag_Levels CLJ1,M5: uninit Grund 3
22:39:53 Zickzack CLJ1,M5: Uninit Grund 1

22:39:53 Zickzack CLJ1,M5: entfernt

Vielleicht liegt es daran, dass ich das Terminal gleichzeitig auf dem Remote-Server und auf meinem PC verwende?

Ich glaube nicht, dass der Code eine Schleife enthält. Was bedeutet der Uninit-Grund 1 oder 3 überhaupt? Haben Sie eine Dekodierung?

EA hat 2 Tage lang normal gehandelt.

Ich möchte noch einmal die Frage nach den Terminals wiederholen.

Wenn ich ein Terminal mit EA auf einem entfernten Server habe und dasselbe Terminal auf meinem PC betreibe, erledige ich meine Geschäfte damit. Ich optimiere sie und so weiter. Ich möchte darauf hinweisen, dass der EA nicht im Fenster eines Trading-Tools im Home-Terminal angezeigt wird, da er lokal auf meinem (entfernten) Computer und nicht auf dem Server des Brokers läuft.

Kann der EA also scheitern, wenn er in einem Terminal läuft, das 2 Mal gleichzeitig läuft?

 
polsvv:

Ich glaube nicht, dass der Code eine Schleife enthält. Was bedeutet der Uninit-Grund 1 oder 3 überhaupt? Gibt es eine Entschlüsselung?

lesen Sie meine obige Antwort
 
polsvv:

Ich glaube nicht, dass der Code eine Schleife enthält. Was bedeutet der Uninit-Grund 1 oder 3 überhaupt? Irgendeine Dekodierung?


REASON_REMOVE1Das Programm wird aus der Tabelle entfernt
REASON_CHARTCHANGE3Diagrammsymbol oder Periode wurde geändert
 
alsu:
https://docs.mql4.com/ru/constants/uninit Überprüfen Sie die Gründe für die Deinitialisierung, es sieht so aus, als würden Sie die Periode/Symbol des Graphen ändern, während der EA läuft, daher die Abstürze.
Ja, das ist offenbar der Grund dafür. Danke für den Tipp!
 

Hallo.

Den Laguerre-Indikator zu zerlegen und zu modifizieren, funktioniert nicht besonders gut. Bitte helfen Sie mit dem Code.

Am Ende startete Laguerre seinen Code.

i=CountBars-1;
   while(i>=0)
   {
      L0A = L0;
      L1A = L1;
      L2A = L2;
      L3A = L3;
      L0 = (1 - gamma)*Close[i] + gamma*L0A;
      L1 = - gamma *L0 + L0A + gamma *L1A;
      L2 = - gamma *L1 + L1A + gamma *L2A;
      L3 = - gamma *L2 + L2A + gamma *L3A;

      CU = 0;
      CD = 0;
      
      if (L0 >= L1) CU = L0 - L1; else CD = L1 - L0;
      if (L1 >= L2) CU = CU + L1 - L2; else CD = CD + L2 - L1;
      if (L2 >= L3) CU = CU + L2 - L3; else CD = CD + L3 - L2;

      if (CU + CD != 0) LRSI = CU / (CU + CD);
      val1[i] = LRSI;
          i--;
        }
for(int a=0; a<Bars; a++ )
{if(LRSI[i]>0.45)
   LastLag++;
  
  }
 

Soweit ich weiß, wird die Indikatorlinie selbst als LRSI bezeichnet.

Ich kann ihm also keinen Zählwert zuweisen. Wenn die Linie zum Beispiel 0,45 nach oben überschreitet, wird LastLag um eins erhöht.

Bisher besteht das einzige Problem darin, einen Zählwert zuzuweisen. Ich kann die ganze Idee später schreiben. Ich danke Ihnen.

Dateien:
laguerre.mq4  4 kb
Grund der Beschwerde: