Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 229
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
Danke, gibt es eine andere Lösung? Danach eröffnet und schließt der EA die Position sofort.
Sie müssen die Zeit auf die Bedingung festlegen
und aktualisieren Sie sie erst, wenn die Position geschlossen ist.
Ziehen Sie dann von der aktuellen Zeit die gespeicherte Zeit ab
. Wenn die angegebenen Sekunden abgelaufen sind, schließen Sie die Positionen.
Ich habe das getan
double op = CalculateProfit();
int time_waiting=0;
if (op >= Profit)
time_waiting = TimeLocal() + 10;
if (TimeLocal() < time_waiting)
{
CloseAll();
}
aber ich erhalte eine Fehlermeldung
möglicher Datenverlust aufgrund von Typumwandlung
ist kein Fehler, sondern eine Warnung: Bei der Konvertierung von einem Typ in einen anderen können Daten verloren gehen:
datetime time_waiting;
Das heißt, ich möchte nicht, dass der EA geschlossen wird, sobald ich 2 Pfund sehe, sondern ein bisschen mehr.
Und was, immer nach 10 Sekunden ist der Gewinn größer?)
Wenn es Ihnen nichts ausmacht, helfen Sie mir bitte, es zu reparieren...
Übernahme der vollen Verantwortung für die Tatsache, dass
ushort
Der Typ unsigned short ist der Typ ushort, der ebenfalls eine Größe von 2 Byte hat. Der Mindestwert ist 0, der Höchstwert 65.535.
int
Der Ganzzahltyp int hat eine Größe von 4 Byte (32 Bit). Der Mindestwert beträgt -2 147 483 648, der Höchstwert 2 147 483 647.
Ich habe getan, wie Sie gesagt haben, aber aus irgendeinem Grund nach dem Schließen der Expert Advisor schließt ein paar Trades, trotz der Tatsache, dass ich eine Stunde Schlupf nach der CloseAll() Funktion haben.
double op = CalculateProfit();
if (op >= Profit && LastTime == 0)
LastTime = TimeCurrent ();
if(LastTime > 0 && TimeCurrent () - LastTime >= Second)
{
CloseAll();
LastTime = 0;
SendNotification("Trade is over");
Sleep(60*60000);// 60.000 = 1 min
}