Hilfe benötigt: Ungültige Preise und Stop-Loss-Abstände in meinem EA

 

Hallo zusammen,

ich habe ein Problem mit meinem Expert Advisor (EA) in MetaTrader 5 und hoffe, dass mir jemand helfen kann. Mein EA berechnet ungültige Preise und Stop-Loss-Abstände, was zu ständigen Fehlermeldungen führt. Hier sind einige Details zu meinem Problem:

Problem:

  • Mein EA berechnet negative Preise und Stop-Loss-Abstände.
  • Dies führt zu Fehlermeldungen wie "Ungültiger Preis oder Stop-Loss-Abstand".
  • Der aktuelle Preis () und der berechnete Stop-Loss-Abstand () sind negativ. currentPrice stopLossDistance

Debugging-Ausgaben:

Code

Fehler: Ungültiger Preis oder Stop-Loss-Abstand. Aktueller Preis: -8934025.12 Stop-Loss-Abstand: -89340.2512

Codeauszug:

MQL5
            void OnTick()
{
    double currentPrice = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
    double stopLossDistance = currentPrice * (DistancePercent / 100.0);

    // Überprüfen, ob der Preis und der Stop-Loss-Abstand gültig sind
    if (currentPrice <= 0 || stopLossDistance <= 0)
    {
        Print("Fehler: Ungültiger Preis oder Stop-Loss-Abstand.");
        Print("Aktueller Preis: ", currentPrice);
        Print("Stop-Loss-Abstand: ", stopLossDistance);
        return;
    }

    // Restliche Logik...
} 

Frage:
Könnte das Problem mit den Tickdaten zusammenhängen? Wenn ja, wie kann ich sicherstellen, dass die Tickdaten korrekt sind und keine negativen Werte enthalten? Gibt es vielleicht einen EA - Binance, der dieses Problem bereits löst oder eine bewährte Methode, um solche Fehler zu vermeiden?

Ich wäre sehr dankbar für jede Hilfe oder Hinweise, die ihr mir geben könnt.

Vielen Dank im Voraus!

 

Verwende den Debugger, um zu verstehen, woher und warum die negativen Preise entstehen:

Code debugging:  https://www.metatrader5.com/de/metaeditor/help/development/debug
Error Handling and Logging in MQL5:  https://www.mql5.com/de/articles/2041
Tracing, Debugging and Structural Analysis of Source Code, scroll down to: "Launching and Debuggin": https://www.mql5.com/de/articles/272

Code debugging - Developing programs - MetaEditor Help
Code debugging - Developing programs - MetaEditor Help
  • www.metatrader5.com
MetaEditor has a built-in debugger allowing you to check a program execution step by step (by individual functions). Place breakpoints in the code...
 

Hallo Allerseits,

in diesem Artikel ist alles beschrieben: https://www.mql5.com/de/articles/2555


Gruß Igor

Welche Überprüfungen der Handelsroboter vor der Veröffentlichung in Market bestehen soll
Welche Überprüfungen der Handelsroboter vor der Veröffentlichung in Market bestehen soll
  • www.mql5.com
Alle Markets Produkte vor der Veröffentlichung bestehen eine obligatorische vorläufige Überprüfung, um eine Standarte Qualität zu haben. In diesem Artikel werden wir von den häufigsten Fehlern erzählen, die die Hersteller in den Handelsrobotern und den technischen Indikatoren machen. Auch werden wir zeigen, wie man sein Produkt vor der Sendung in Market selbständig überprüfen soll.