Diskussion - Seite 15

 

Ablauf eines schwebenden Auftrags

Hallo,

Ich würde gerne eine Funktion oder Routine kennen, die dafür sorgt, dass die Pending Orders unabhängig von der Stunde, in der sie platziert wurden, um 00:00 Uhr ablaufen.

BEISPIEL:

Auftrag in Buy Stop platziert um 13:00 Uhr (Ablauf um 00:00 Uhr)

Sell Stop Order platziert um 22:00 Uhr (Ablauf um 00:00 Uhr)

Danke

 

Frage zur Programmierung

Ich bin neu in der ea-Programmierung Ich habe versucht, eine andere Start-und Stoppzeit zu firedaves universallmacross ea alle Ideen, wie ich dies tun würde, danke für Ihre Zeit im Voraus hinzufügen

 

mit Schweiß und Tränen

Hallo

Versuchen Sie dies

https://www.mql5.com/en/forum/general

 

extern string Time_Parameters = "------------- EA ACTIVE TIME";

extern bool UseHourTrade=false;

extern int StartHourGMT=18, EndHourGMT=24;

//----------------- ZEITFILTER ---------------------//

int start()

{

if (UseHourTrade)

{

if(!(Hour()>StartHourGMT && Hour()<=EndHourGMT))

{

Comment(

"\n",">[LONG TERM] TREND BREAKOUT SYSTEM<",

"\n",

"\n", " - PROGRAM TRADING INACTIVE -",

"\n",

"\n", " - NON-TRADING HOURS! -");

return(0);

}

}

Probier das mal aus! Dave <<<

 

Hallo Scuba

danke für deine Antwort

Es gibt bereits einen Zeitfilter, ähnlich dem, den du gepostet hast, aber wie würde ich Startzeit1 bis Endzeit1 und Startzeit2 bis Endzeit2 setzen? Macht das Sinn?

 

Stellen Sie sich das Programm wie einen Trichter vor. Wenn das Programm startet und der Fluss bis zum Zeitfilter läuft, prüft es, ob die GMT-Zeit innerhalb der Start- und Stoppzeiten des Schlafs liegt. Wenn dies der Fall ist, z. B. 20 GMT, stoppt der Filter den Programmfluss und es erscheint die Meldung Programm inaktiv. Wenn die GMT-Uhr über GMT 24 hinausgeht, sagt der Zeitfilter, dass es in Ordnung ist, den Programmfluss fortzusetzen, und das gesamte Programm wird initialisiert und fortgesetzt. Es wird fortgesetzt, bis die GMT-Uhr wieder 18 GMT erreicht (Beginn der Schlafzeit) und der Filter den Programmfluss erneut stoppt, wodurch das Programm wieder in den Schlafmodus versetzt wird. Dieser Zyklus wiederholt sich jeden Tag. Es handelt sich um einen Ein- und Ausschalter, der den Fluss des logischen Ablaufs des nach dem Zeitfilter codierten Programms stoppt.

Dave <<<
 
398982:
Ich bin neu in ea Programmierung habe ich versucht, einen anderen Start und Stop-Zeit zu firedaves universallmacross ea irgendwelche Ideen, wie ich dies tun würde, danke für Ihre Zeit im Voraus hinzufügen

1. Es gibt einen Indikator mit zwei Anfängen und 2 Enden. Aber sie haben es in sehr komplizierte Weise:

for (shift=Counted_Bars+10;shift>0;shift--)

{

on_off_trade=false;

if (TimeHour(Time[shift])>Hour_Start_1 && TimeHour(Time[shift])<Hour_End_1) on_off_trade=true;

if (TimeHour(Time[shift])==Hour_Start_1 && TimeMinute(Time[shift])>=Minute_Start_1) on_off_trade=true;

if (TimeHour(Time[shift])==Hour_End_1 && TimeMinute(Time[shift])<=Minute_End_1) on_off_trade=true;

if (TimeHour(Time[shift])>Hour_Start_2 && TimeHour(Time[shift])<Hour_End_2) on_off_trade=true;

if (TimeHour(Time[shift])==Hour_Start_2 && TimeMinute(Time[shift])>=Minute_Start_2) on_off_trade=true;

if (TimeHour(Time[shift])==Hour_End_2 && TimeMinute(Time[shift])<=Minute_End_2) on_off_trade=true;[/CODE]

And then:

if (on_off_trade)[/CODE]

and so on. But it is bery complicated.

2. I think everything can be much more easy:

[CODE]if (UseHourTrade){

if (!(Hour()>=FromHourTrade1 && Hour()<=ToHourTrade1))

{Comment("Time for trade has not come else!");

return(0);}

else if(!(Hour()>=FromHourTrade2 && Hour()<=ToHourTrade2))

{Comment("Time for trade has not come else!");

return(0);}

else if(!(Hour()>=FromHourTrade3 && Hour()<=ToHourTrade3)){

Comment("Time for trade has not come else!");

return(0);

}

}

And in the settings of EA type the following:

[CODE]extern string PARAMETERS_TIMEFILTER = "TIMEFILTER";

extern bool UseHourTrade = False;

extern int FromHourTrade1 = 8;

extern int ToHourTrade1 = 10;

extern int FromHourTrade2 = 11;

extern int ToHourTrade2 = 15;

extern int FromHourTrade3 = 19;

extern int ToHourTrade3 = 22;
Dateien:
 

Vielen Dank für eure Hilfe

 
 

brauche Hilfe bei der Speichernutzung in MT4

Hallo an alle,

ich habe ein merkwürdiges Problem und hoffe, dass mir jemand helfen kann. Ich habe 4 M5 Charts geöffnet (eur, gbp, jpy und chf) mit dem cyberiatrader EA. Ich habe bemerkt, dass der Ram auf meinem Rechner niedrig ist und der Rechner sehr träge ist. Ich habe außer IBFX MT4 nichts anderes laufen und der Rechner hat 1GB RAM. Bevor ich MT4 lade, überprüfe ich den RAM-Speicher und er zeigt 850 MB frei an. Sobald ich MT4 mit den 4 Charts lade, sinkt der freie Speicherplatz auf 48 MB. Der RAM-Verbrauch für MT4 beträgt 780 MB!! Ich habe die Protokolldateien in den /log-Verzeichnissen gelöscht und MT4 erneut gestartet - das gleiche Problem. Haben Sie irgendwelche Vorschläge, was die Ursache sein könnte und wie man das Problem beheben kann? Vielen Dank