Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 222
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
Sie können den Handelsroboter überprüfen
//+------------------------------------------------------------------+
//| Experten1.mq4 |
//| Copyright 2017, MetaQuotes Software Corp.
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#Eigenschaft Version "1.00"
#Eigenschaft streng
//+------------------------------------------------------------------+
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, MetaQuotes Software Corp.
#property link "https://www.mql5.com"
Eingabe double Lots=0.01;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int OnInit()
( OrderSend(Symbol(),OP_BUY,Lots,3,0,Ask+0.0084,Ask-0.0084)
Doppellose=Lose;
wenn Gewinn dann Lots=Lot+0.01 sonst Lots=Lot-0.01
wenn Lose=0 dann Lose=0,01
wenn Lose>0,03 dann Lose=0,01
//---
//---
return();
}
Guten Tag, liebe Experten!
Bitte helfen Sie, Tipps, wie man es zu tun, wo zu lesen, schriftlich Teil des Codes.
Ich habe einen Teil des Codes beigefügt. Ich muss in der Lage sein, meinen Kommentar einzugeben, wenn ich eine Order oder eine Limit-Order eröffne. D.h. nicht direkt im Code, sondern beim Öffnen des EA-Panels.
Ich muss in der Lage sein, meinen Kommentar einzugeben, wenn ich einen Auftrag oder einen Limitauftrag eröffne.
Der Kommentar wird beim Anlegen des Auftrags geschrieben und kann nicht mehr geändert werden.
Der Kommentar wird bei der Erstellung des Auftrags geschrieben und kann nicht mehr geändert werden.
Ich danke Ihnen vielmals. Das ist genau das, was ich brauche.
Wie kann ich eine Bedingung schreiben, wenneine schwebende Orderbei einer bestimmten Preisbewegung einmal verschoben wird?
1. Erstellen Sie ein Array, in dem die Tickets der offenen Aufträge und ein Kennzeichen, dass der Auftrag bereits verschoben wurde, gespeichert werden können.
2. Verfolgen Sie neu erscheinende Aufträge und halten Sie in diesem Array Informationen über den offenen Auftrag mit dem Kennzeichen "hat sich nicht bewegt" fest.
3. Löscht Informationen aus dem Array, wenn der Auftrag geschlossen, gelöscht oder umgewandelt wird.
4. Prüfen Sie die Bedingung für das Verschieben, wenn die Bedingung erfüllt ist und das Kennzeichen "nicht verschoben", dann verschieben Sie und ändern Sie das Kennzeichen in "verschoben".
1. Erstellen Sie ein Array, in dem die Tickets der offenen Aufträge und ein Kennzeichen, dass der Auftrag bereits verschoben wurde, gespeichert werden können.
2. Verfolgen Sie neu erscheinende Aufträge und halten Sie in diesem Array Informationen über den offenen Auftrag mit dem Kennzeichen "hat sich nicht bewegt" fest.
3. Löscht Informationen aus dem Array, wenn der Auftrag geschlossen, gelöscht oder umgewandelt wird.
4. Prüfen Sie die Bedingung für die Bewegung, wenn die Bedingung eingetreten ist und das Kennzeichen "nicht bewegt" lautet, dann bewegen Sie sich und ändern das Kennzeichen in "bewegt".
Ich glaube nicht, dass sie zuverlässig ist.
Ich würde ein solches Problem auf eine einfachere Art und Weise lösen: Legen Sie einen schwebenden Auftrag mit der magischen Zahl 2 an und löschen Sie einen schwebenden Auftrag mit der magischen Zahl 1, unter der Bedingung, dass der Auftrag verschoben werden soll
Der Code wäre einfach - nach dem Tick-Empfang würde die Schleife durch den Auftrag mit der magischen Nummer 1 laufen, wenn er gefunden wird und verschoben werden muss, dann würden wir diesen Auftrag löschen und einen neuen mit der magischen Nummer 2 platzieren
Ja, das ist eine gute Option.
Ja, das ist eine gute Option.
UPD: der Code wird einfach sein - wenn der Tick kommt die Schleife auf die Reihenfolge mit der magischen Zahl 1, wenn gefunden und verschieben müssen, dann löschen Sie diese Reihenfolge und setzen Sie eine neue Reihenfolge mit der magischen Zahl 2
.... dann werden wir versuchen, einen neuen Auftrag mit der magischen Zahl 2 zu erstellen, und wenn es OK ist, werden wir den Auftrag mit der magischen Zahl 1 löschen
so dass weniger Überprüfungen erforderlich sind - z. B. hat sich das Niveau der Stoppstufe ausgeweitet, so dass der Auftrag nicht mehr verschoben werden kann, sobald wir den gefundenen Auftrag gelöscht haben
auf diese Weise ;)