[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 177
![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Frage1 - Schreiben Sie in der Funktion "Suche und Auftragsprüfung
if(TimeCurrent()-OrderOpenTime()>18*3600)OrderClose(...);
Frage 2 - so haben Sie den Code geschrieben
if(Close[0]>Close[1]&&Close[0]>Close[2]&&Close[1]>Close[2])
Ich danke Ihnen. Ihre Informationen sind interessant, aber für mich bisher schwierig.
So stellen Sie diese Zeitbedingung ein.
Gehen Sie die offenen Aufträge durch und schließen Sie sie, wenn die Differenz zwischen OpenOrderTime und dem aktuellen Zeitpunkt mehr als 18 Stunden (60*60*18 Sekunden) beträgt.
https://docs.mql4.com/ru/trading/OrderOpenTime
https://docs.mql4.com/ru/dateandtime/TimeCurrent
Es ist besser, die Balkenanzahl oder den höchsten Wert zu ermitteln.
Beides. Vielen Dank für Ihre Antwort!
MetaEditor --> MQL4 Referenz --> Zugriff auf Zeitreihen --> iHighest:
Beispiel: double val;
//Berechnung des maximalen Preiswertes an 20 aufeinanderfolgenden Balken
// von Index 4 bis einschließlich Index 23 im aktuellen Diagramm
val=High[iHighest(NULL,0,MODE_HIGH,20,4)];
Danke, das war's. Ich verstehe nicht wirklich, warum Index 4 bis einschließlich Index 23 auf dem aktuellen Chart, wenn die Berechnung für 20 Balken ist.
Jetzt müssen wir nur noch herausfinden, welche Bar wirklich zu diesem Preis zu haben ist.
Danke, das ist genau das, was ich brauchte. Aber ich verstehe nicht wirklich, warum Index 4 bis Index 23 auf dem aktuellen Diagramm, wenn die Berechnung für 20 Bars ist.
Jetzt müssen wir nur noch die Bar finden, die diesen Preis hat.
Es gibt einen Link zu der Beschreibung in der Dokumentation, Sie müssen nur auf den Link klicken und ihn lesen. Beginnend mit 4 Takten bei 23 Takten.... ist es, 20 Takte zu durchlaufen, wie es in den Parametern angegeben ist. Sie müssen 20 Takte ab dem vierten Takt durchsuchen. Mit der angegebenen Code-Zeile können Sie sowohl die Bar-Nummer als auch den Preis abrufen.
Preis: val=High[iHighest(NULL,0,MODE_HIGH,20,4)];
Taktzahl: val=iHighest(NULL,0,MODE_HIGH,20,4);
Wie kann man einen Indikator (egal welchen) dazu bringen, seine Linien nur während der letzten N Kerzen (N - Indikatorparameter) zu zeichnen, und alles davor einfach aus dem Diagramm zu löschen?