Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1353

 
Vladimir Karputov:

Referenz:CopyRates

Wenn Daten vom Indikator angefordert werden und die angeforderten Zeitreihen noch nicht erstellt wurden oder vom Server hochgeladen werden müssen, gibt die Funktion sofort -1 zurück, aber der Lade-/Konstruktionsprozess wird gestartet

Danke, das hat es gelöst, habe nur die wirklich notwendigen Daten genommen und die Fehlerkaskade verschwand sofort, und es gab Speicherlecks und Abstürze ))

 
BillionerClub:

Vielen Dank, es löste das Problem, ich nahm nur die wirklich benötigten Daten und die Fehlerkaskade verschwand auf einmal, und es gab Speicherlecks und Abstürze))

Aber die Frage bleibt: "Warum CopyRates für das aktuelle Symbol und den Zeitrahmen im Indikator verwenden, wenn der Indikator bereits Arrays von OHLC in OnCalculate liefert"?

 
Vladimir Karputov:

Aber die Frage bleibt: "Warum CopyRates für das aktuelle Symbol und den Zeitrahmen im INDICATOR verwenden, wenn der Indikator bereits Arrays von OHLC in OnCalculate bereitstellt"?

In OnCalculate" gibt es OHLC, aber es kann kein Bar geben, wenn es zu Array Exit führen kann, in jedem Fall sollten Sie Ibarshift mit Parameter true verwenden.

 
BillionerClub:

OnCalculate" enthält OHLC, aber es darf kein Balken vorhanden sein, da dies zu einem Array-Exit führen kann, in jedem Fall müssen Sie Ibarshift mit dem Parameter true verwenden.

Nein. OnCalculate enthält alle OHLC für das aktuelle Symbol und den aktuellen Zeitrahmen. Wenn Sie aber beide Beine des Pferdes in voller Fahrt abschießen möchten, dann können Sie die Funktion CopyXXXX im TOOL INDICATOR für das aktuelle Symbol und den Zeitrahmen verwenden.

 
Vladimir Karputov:

...im vollen Galopp beide Beine eines Pferdes zu erschießen...

Ich frage mich, was das für ein Pferd ist, das auf zwei Beinen reitet?

Oder meinen Sie beide rechten Beine, oder beide Hinterbeine?

 
Vladimir Karputov:

Nein. OnCalculate enthält alle OHLC nach aktuellem Symbol und aktuellem Zeitrahmen. Aber wenn Sie beide Beine des Pferdes im vollen Galopp schießen möchten - dann ja, Sie können die CopyXXXX-Funktion im aktuellen Symbol und Zeitrahmen INDICATOR verwenden.

Ich habe es nicht gut erklärt, ich entschuldige mich. Vielen Dank für die Antworten. Ich habe überprüft, ob Sie recht haben, die Leiste hat sich einfach verirrt und ist plötzlich an einer Stelle aufgetaucht, an der ich sie nicht erwartet hätte. Aber ich habe ein Problem, wie das Laden von Daten aus einem anderen Terminal, die möglicherweise nicht übereinstimmen und für das Fehlen oder Vorhandensein in beiden Terminals. Ich konnte keine bessere Lösung als barhift finden.


 

Hallo! ... es ist schon eine Weile her, dass ich hier war)

Warum funktioniert die Funktion

PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,begin);

hat keine Auswirkungen auf den Erhalt

handle = iCustom(_Symbol,PERIOD_CURRENT,"Market indices");
if(handle != INVALID_HANDLE)
   {
    Alert("RT - ",rates_total);
    Alert("BC - ",BarsCalculated(handle));
   };


Das Problem ist, dass RT und BC dasselbe sind.


Das heißt, gibt es eine Möglichkeit, aus dem Handle zu erkennen, welchesPLOT_DRAW_BEGIN der Indikator hat?

... Ich plane, über iCustom einige Variablen mit unterschiedlichen Zeiträumen anzufordern, und es ist wichtig zu wissen, auf welchem Balken alle angeforderten Variablen berechnet werden

 
Warum ist es so schnell, ist es nicht teuer , ein Feld zu durchsuchen?
iBarShift
 
BillionerClub:
Warum ist es so schnell, ist es nicht teuer , ein Feld zu durchsuchen?
Höchstwahrscheinlich wird die Suche nicht in einer Schleife durchgeführt, sondern mit einfacher Mathematik
 

Hallo, ich habe ein Problem.

Ich habe Hieroglyphen anstelle von russischen Buchstaben.Ich habe versucht, die regionalen Einstellungen zu ändern, aber das hat nicht geholfen. Kennen Sie irgendwelche Arbeitsmethoden?

Grund der Beschwerde: