Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1426
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
Sehen Sie sich diesen Code an:
Mit freundlichen Grüßen, Vladimir.Sehen Sie sich diesen Code an:
Mit freundlichen Grüßen, Vladimir.Leider werde ich in den nächsten zwei Tagen nicht in der Lage sein, es zu überprüfen, aber ich danke Ihnen!
Danke, aber bitte beachten Sie, dass dies kein fertiger Code ist, sondern nur die Richtung meiner Gedanken. Er kann falsch sein. Sie müssen es überprüfen. Sie können eine andere Option in Betracht ziehen - entfernen Sie OnTimer und versuchen Sie den gleichen Code in OnTick(). Kurz gesagt, versuchen Sie es.
Mit freundlichen Grüßen, Vladimir.
Erfassen Sie den aktuellen Kurs und die Uhrzeit. Vergleichen Sie die Zeit mit der aktuellen Zeit bei jedem Tick, wenn es mehr als 20 Sekunden sind, merken Sie sich den zweiten Preis. Berechnen Sie die Differenz zwischen dem ersten Preis und dem zweiten Preis. Vergleichen Sie das erhaltene Ergebnis mit einer Konstante und entscheiden Sie, ob Sie eine Order eröffnen wollen.
Speichern Sie den aktuellen Preis und die Uhrzeit. Vergleichen Sie die Zeit mit der aktuellen Zeit bei jedem Tick, wenn mehr als 20 Sekunden, merken Sie sich den zweiten Preis. Berechnen Sie die Differenz zwischen dem ersten und dem zweiten Kurs. Vergleichen Sie das erhaltene Ergebnis mit einer Konstante und entscheiden Sie, ob Sie eine Order eröffnen wollen.
Verstehe ich Sie richtig: Sie müssen sich den aktuellen Preis jede Sekunde merken, um ihn mit dem aktuellen Preis zu vergleichen, wenn jeder Wert dieser Serie 20 Sekunden lang entfernt wird?
Der Vergleich sollte kontinuierlich erfolgen.
Verstehe ich Sie richtig: Sie müssen sich jede Sekunde den aktuellen Preis merken, damit Sie, wenn jeder Wert dieser Reihe 20 Sekunden lang gelöscht wird, ihn mit dem aktuellen vergleichen können?
Der Vergleich sollte kontinuierlich erfolgen.
Wenn die Ticks nicht gleichmäßig verlaufen, dann liegt die Frage im Algorithmus: Wenn es notwendig ist, alle Ticks zu überprüfen, dann sollten alle Ticks gespeichert und verglichen werden. Wenn es nach dem Algorithmus weniger oft möglich ist, dann einen Timer und nach einer Sekunde den Preis merken und nach 20 Sekunden auch merken und vergleichen. Oder man sollte sich alle Preise oder Preise in einer Sekunde innerhalb von 20 Sekunden merken und mit einem neuen Tick vergleichen.
Es kann 1 Tick pro Sekunde geben, es kann einen in 5 Sekunden geben, und es kann 100 in einer Sekunde geben. Sie müssen entscheiden, wie Sie vorgehen wollen, wenn es einen Tick pro 5 Sekunden gibt und wenn es 100 Ticks pro Sekunde gibt.
Ticks sind nicht einheitlich, die Frage ist in den Algorithmus dann, wenn Sie alle Ticks überprüfen müssen, dann sollten alle Ticks gespeichert und verglichen werden. Wenn es möglich ist, weniger häufig nach dem Algorithmus zu sein, dann einen Timer und nach einer Sekunde den Preis merken und nach 20 Sekunden auch merken und vergleichen. Oder man sollte sich alle Preise oder Preise in einer Sekunde innerhalb von 20 Sekunden merken und mit einem neuen Tick vergleichen.
Es kann 1 Tick pro Sekunde geben, es kann einen in 5 Sekunden geben, und es kann 100 in einer Sekunde geben. Sie müssen entscheiden, wie Sie vorgehen wollen, wenn es einen Tick pro 5 Sekunden gibt und wenn es 100 Ticks pro Sekunde gibt.
Es geht nicht darum, eine Option zu wählen, sondern darum, wie schwierig es für mich ist, sie aufzuschreiben.... Ich bin heute zum ersten Mal hier. Ich bin ein totaler Amateur.
Ich möchte nur meine Idee ausprobieren...
Es geht nicht darum, eine Option zu wählen, sondern darum, wie schwer es mir fällt, sie aufzuschreiben..... Ich bin heute zum ersten Mal hier. Totaler Amateur.
Ich möchte nur meine Idee ausprobieren.
Der Algorithmus muss präzise sein und die Bedingungen für seine Anwendung verstehen. Man kann den Code nicht anders schreiben. Der Code ist die Verwirklichung eines Handlungsalgorithmus, er darf nicht ungenau sein.
Und hier ist es besser, ihn zuerst selbst zu schreiben, und vielleicht werden Sie Fehler korrigieren.
Du verstehst die Vorzeichen von Gleichungen, mehr ist weniger.
Ringpuffer:
Man nehme einen Puffer - eine ausreichend große statische Anordnung von "Preis, Zeit"-Strukturen (oder zwei getrennte Anordnungen).
Wir nehmen zwei Variablen - "Zeiger" (Indizes) auf den Kopf und das Ende des Puffers.
Bei jedem Tick fügen wir dem Kopf ein Element hinzu und schieben den Zeiger vor.
Wir vergleichen die Zeit mit dem Element im Ende des Puffers und verschieben gegebenenfalls den Zeiger.
Vergleichen Sie den Preis mit dem Element im Ende des Puffers.
Wenn ein Zeiger das Ende des Arrays erreicht hat, setzen wir diesen Zeiger auf Null zurück.
Nehmen Sie zwei Variablen - "Zeiger" (Indizes) auf den Kopf und das Ende des Puffers.
Bei jedem Tick fügen wir ein Element zum Kopf hinzu und verschieben den Zeiger.
Vergleichen Sie die Zeit mit dem Element im Schwanz, wenn nötig - bewegen Sie den Zeiger.
Vergleichen Sie den Preis mit dem Element im Schwanz.
Wenn ein Zeiger das Ende des Arrays erreicht hat - diesen Zeiger auf Null zurücksetzen.