Quellcode
Verhindern Sie doppelte EA-Bestellungen, ohne gültige Signale zu blockieren
Ein schneller Strom von Ereignissen kann dieselbe Zugangsbedingung mehr als einmal auswerten, bevor sich der Kontostatus sichtbar ändert. Die Überprüfung nur der aktuellen Handelspositionsanzahl deckt möglicherweise nicht eine Anfrage ab, die noch in Bearbeitung ist.
Definieren Sie eine Signalidentität
Verwenden Sie eine aussagekräftige Kennung wie Strategie, Symbol und Signal-Preis-Kerzenzeit. Entscheiden Sie, ob ein Eintrag pro Preiskerze, ein Eintrag pro Richtung oder mehrere Einträge vorgesehen sind. Die Definition gehört zur Strategie.
Verfolgen Sie den Anforderungsstatus
Unterscheiden Sie klar zwischen berechtigt, eingereicht, bestätigt und abgelehnt. Gleichen Sie den Status mit Handelstransaktionen und vom Broker gehaltenen Aufträgen ab. Eine abgelehnte Anfrage sollte nicht dauerhaft als erfolgreicher Handel markiert bleiben.
Testunterbrechungen
Üben Sie eine schnelle Tick-Sequenz, eine verzögerte Ausführung und einen Terminal-Neustart aus. Bestätigen Sie, dass bei der Wiederherstellung weder eine abgeschlossene Aktion wiederholt noch das nächste legitime Signal blockiert wird. Sorgen Sie für eine unkomplizierte Transaktionsabwicklung.
Passen Sie das Verhalten an
MQLume-Quellprojekte machen den Eintragslebenszyklus überprüfbar. Dies ist ein praktischer Ort, um die Protokollierung und Kontrolle zu verbessern, anstatt nur einen langen Schlaf hinzuzufügen, der das Rennen verdecken kann, ohne es zu lösen.
Referenz und weiterführende Literatur
Beginnen Sie mit einem kostenlos bearbeitbaren EA-Projekt·Entdecken Sie den MQLume-Quellcode
Zurück nach oben