Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1901
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Dies wird seit jeher bei der Datenübertragung verwendet.
Bequem. Dem kann man nicht widersprechen. Aber wie ich schon sagte, sollten Sie immer bedenken, wie viele Daten Sie zurücksetzen können.
Nehmen wir ein Beispiel, das zum Thema passt
Es gibteinen Code für das Upgrade
Das wird in diesem Code nicht funktionieren, weil der Indikatorpuffer unabhängig von uns lebt und wir darin keinen Ringpuffer organisieren - es gibt keine Möglichkeit, diesen MT zu erklären.
Mit ArrayCopy können Sie nur Daten von einem anderen Array übertragen. Aber man kann sie nicht verschieben.
Wer hat Ihnen diesen Blödsinn erzählt?
Lesen Sie genau, wie es gemacht wird.
Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests
Alle Fragen von Neulingen auf MQL4 und MQL5, jede Hilfe und Diskussion über Algorithmen und Codes
Alexey Viktorov, 2022.02.13 18:21
In diesem Code müssen Sie ein Array angeben
Von welchem Index geschrieben und welcher kopiert werden soll, hängt von der Richtung des Array-Offsets ab. Wenn also Index 0 immer frische, neue Daten enthalten soll, kopieren Sie von 0 und schreiben Sie von 1. Somit sind die Werte in Index 0 und 1 identisch, und anschließend wird ein neuer Wert in 0 kopiert.
Und ich bezweifle sehr, dass ArrayCopy() die gleiche Schleife enthält wie die Benutzerschleife. Wenn Sie also ein Array mit einer bestimmten Größe haben, wird es bei jedem Tick um 1 verschoben und dann in den Indikatorpuffer kopiert, der als Zeile angezeigt wird...
Es wird in diesem Code nicht funktionieren, weil der Indikatorpuffer unabhängig von uns lebt und wir keinen Ringpuffer in ihm organisieren - es gibt keine Möglichkeit, dieses MT zu erklären.
Ich verstehe.
Nun, es funktioniert - lassen Sie es so weit funktionieren, noch kein Ergebnis, wir müssen auf unsere "Freunde" aus dem Pindos warten, bis der Markt öffnet, und es ist nicht bald.
Ich werde sehen, was ich arbitrieren kann.
oder sogar
Und niemand hat die Fuge bemerkt!
Und niemand hat die Fuge bemerkt!
Ich sehe es immer noch nicht.
Ich verstehe es immer noch nicht.
i sollte am Ende der Schleife, nach der Verwendung, inkrementiert werden.
Sie können aber auch am Ende der Schleife und am Anfang der nächsten Schleife prüfen, ob das Array überläuft.
Wer hat Ihnen so einen Unsinn erzählt?
Lesen Sie genau, wie es gemacht wird.
Ich wusste nicht, dass diese Funktion so universell ist. Aber selbst wenn das der Fall ist, was macht das für einen Unterschied? ArrayCopy verschiebt Daten schneller als eine normale Schleife?
Der Code funktioniert jetzt, aber wegen des Zyklus gibt es Zweifel an der Geschwindigkeit.
Was wird es sein?
Ich möchte einige Küchen für Arbitrage-Möglichkeit zu testen, wird der Indikator die Differenz der Werte zeichnen, arbeitet auf Timer einmal in 100ms. Verzögerungen bei der Codeausführung sind in dieser Situation kritisch.
Dann weiß ich es nicht. Versuchen Sie ArrayCopy. Die Funktion scheint in der Lage zu sein, Daten zu verschieben. Aber es wird kaum schneller gehen als eine normale Schleife. Nun, wer weiß... Sie müssen es probieren.
Dann weiß ich es nicht. Versuchen Sie ArrayCopy. Die Funktion scheint in der Lage zu sein, Daten zu verschieben. Aber es ist unwahrscheinlich, dass es schneller geht als eine normale Schleife. Nun, wer weiß... Sie müssen es probieren.
Ich weiß nicht, wo ich anfangen soll