[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 129
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
Wie einfach das ist! M5 ist offen und sein oberer Teil ist ein wenig beschmutzt, und M1 darunter zeigt die gewünschten Kommentare.
Wie man so schön sagt: Morgens ist es immer besser! Guten Morgen!
Hier werden Fragen gestellt und Antworten zur Softwareimplementierung gegeben.
Und Sie können die Kommentare auf einem Blatt Papier lesen ;)
Ich habe den Code für die Auftragsänderung bereits umgeschrieben, aber der Fehler bleibt.
Ich betone, dass der Fehler nicht aus dem Protokoll stammt - es gibt keinen einzigen Fehler im Protokoll.
Ich habe den Fehler in den Ergebnissen gefunden, als ich einen Test durchführte.
Beispiel:
Ich habe eine Kaufposition (Ordernummer 1) zum Preis von 1,4654 eröffnet
dann steht in den Ergebnissen: "Ändern (Ordernummer 1) Preis 1,4654 und TakeProfit 1,4752"
dann steht in den Ergebnissen: "Schließen (Ordernummer 1) Preis 1,4704 und TakeProfit 1,4752"
Gewinn = 50,00
Beispiel für eine Verlustposition, obwohl ich nur zum TakeProfit schließen sollte, weil ich keinen Stop Loss gesetzt habe.
Ich habe eine Kaufposition (Auftragsnummer 271) bei 1,4820
eröffnet und in den Ergebnissen steht: Ändern (Auftragsnummer 271) Preis 1,4820 und TakeProfit 1,4918
und in den Ergebnissen steht: Schließen (Auftragsnummer 1) Preis 1,4737 und TakeProfit 1,4918
Gewinn = - 83,46
Ich habe überall einen TakeProfit von 100 gesetzt.
Ich habe keinen StopLoss gesetzt.
Ich weiß nicht, wie man das repariert.
Beim Kompilieren dieses EA-Codes = 0 Fehler und 0 Warnungen.
Ich habe diesen Code zum Ändern von Aufträgen verwendet:
Können Sie mir sagen, wo der Fehler liegt - ich kann ihn nicht finden.
Ich habe den Code für die Auftragsänderung bereits umgeschrieben, aber der Fehler bleibt bestehen.
Ich betone, dass der Fehler nicht aus dem Protokoll stammt - es gibt keinen einzigen Fehler im Protokoll.
Ich habe den Fehler in den Ergebnissen während des Tests gefunden.
Beispiel:
Ich habe eine Kaufposition (Auftragsnummer 1) bei 1,4654 eröffnet.
Als Nächstes wird in den Ergebnissen angezeigt, dass (Auftragsnummer 1) der Preis 1,4654 und der TakeProfit 1,4752 geändert wurde.
Als nächstes wird in den Ergebnissen der Schlusskurs (Auftragsnummer 1) von 1,4704 und der TakeProfit von 1,4752 angezeigt.
Gewinn = 50,00
Ein Beispiel für eine Verlustposition, die ich aber nur bei Take Profit schließen sollte, weil ich keinen Stop Loss gesetzt habe.
Ich habe eine Kaufposition (Auftragsnummer 271) bei 1,4820 eröffnet.
Als Nächstes steht in den Ergebnissen ändern (Auftragsnummer 271) Preis 1,4820 und TakeProfit 1,4918
Als nächstes wird in den Ergebnissen der Schlusskurs (Auftragsnummer 1) von 1,4737 und der TakeProfit von 1,4918 angezeigt.
Gewinn = - 83,46
Ich habe den TakeProfit überall auf 100 gesetzt.
Ich habe keinen StopLoss gesetzt.
Ich weiß nicht, wie man das repariert.
Beim Kompilieren dieses EA-Codes = 0 Fehler und 0 Warnungen.
Ich habe diesen Code zum Ändern von Aufträgen verwendet:
Bitte helfen Sie mir, die Werte von
1 Maximale tägliche Volatilität (Tageshöchstwert minus Tiefstwert) während der letzten X=5 Tage .
2 Durchschnittliche tägliche Volatilität über dieletzten X=130 Tage
3 Und wie können diese Werte in die Bedingung geschrieben werden, wenn die maximale tägliche Volatilitätim Bereich A=75 bis B=150- durchschnittliche tägliche Volatilitätliegt ?
1. Ermitteln Sie zunächst, wie viele Balken Sie im Fenster https://docs.mql4.com/ru/windows/WindowBarsPerChart benötigen .
2. Dann erhalten Sie das Datum des ersten Balkens https://docs.mql4.com/ru/windows/WindowFirstVisibleBar.
3. Wenn Sie diesen Anfangsbalken und die Anzahl der Balken kennen, gehen Sie diese Balken durch und bestimmen den Höchst- und Tiefstwert unter ihnen.
4. Gewinn
Variante 2
https://docs.mql4.com/ru/windows/WindowPriceMaxтво
https://docs.mql4.com/ru/windows/WindowPriceMinВторой Variante
Ich neigte zur ersten Option, aber ich wusste nicht, wie ich die Anzahl der Balken im Fenster berechnen sollte. Die zweite Option ist lakonischer.
Aber wie kann man das letzte Maximum und Minimum des vorherigen Balkens "abfangen"? Vielen Dank im Voraus!
Aber wie kann man den letzten Höchst- und Mindestwert des vorherigen Balkens "abfangen"?
Sie brauchen sich nur den Höchst- und Tiefstwert des aktuellen Balkens zu merken, und wenn ein neuer Balken erscheint und zum vorherigen Balken wird, übernehmen Sie den Höchst- und Tiefstwert aus den gespeicherten Variablen.
Sie brauchen sich nur den Höchst- und Tiefstwert des aktuellen Balkens zu merken, und wenn ein neuer Balken erscheint und zum vorherigen Balken wird, übernehmen Sie den Höchst- und Tiefstwert aus den gespeicherten Variablen.
deklarieren Sie die zet-Variable als statisch oder deklarieren Sie sie in der globalen Zone.
Bevor Sie ihm einen neuen Wert zuweisen, prüfen Sie, ob ein neuer Balken vorhanden ist, und prüfen Sie die Differenz zwischen seinem Wert und dem aktuellen Wert, und weisen Sie ihm dann einen neuen Wert zu.
Wenn das Schließen von Trades im Tester so geschrieben wird, wie Sie es aufgelistet haben, ist es höchstwahrscheinlich das Ergebnis der Orderclose-Funktion (TP und SL haben nichts damit zu tun)
Danke, aber es scheint keine Fehler im Code zu geben: