Antwort

Die Order wurde in der Mitte des Balkens ausgeführt und nicht am Anfang oder am Ende des Balkens nach dem Neustart von MT4...

5 Antworten

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Profil besuchen

vor 7 Jahren #115240

Hallo, ich habe ein Problem...

 

Der EA funktioniert einwandfrei nach den Regeln und öffnet und schließt Aufträge beim Öffnen/Schließen des Balkens,

aber wenn lässt sagen, dass ich meine MT4-Plattform neu starten, wenn es wieder öffnet und die Regeln erfüllt sind, wird es einen Auftrag sofort in der Mitte des Balkens öffnen, ohne auf eine neue formatierte Bar warten.

 

Ich möchte, dass der EA auf einen neuen formatierten Balken wartet und dann die Bestellung eingibt (wie es sollte) und nicht auf den ersten Tick beim Neustart der MT4-Plattform oder so.

 

danke.

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Profil besuchen

vor 7 Jahren #137719

@Mark @Thomas ?..,

 

das passiert mir, wenn ich mit offline-Charts.., vielleicht etwas zu tun mit "sqIsBarOpen" unter der "drawStats()" Funktion?..., bitte helfen Sie so schnell wie möglich..., denn wenn ich im wieder öffnen MT4-Plattform mit einem EA, der auf OFFLINE-Charts funktioniert es nur eine neue Position öffnen, sobald der erste Tick kommt in, und nicht warten, bis der neue bar öffnet....,

 

Ich warte auf Hilfe..., danke!...

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Profil besuchen

vor 7 Jahren #137740

Irgendjemand.............?

0

tomas262

Administrator, sq-ultimate, 2 Antworten.

Profil besuchen

vor 7 Jahren #137759

hallo,

 

Es scheint mir, dass das EA/Chart-Ladeereignis bewirkt, dass isBarOpen in der DrawStats-Funktion wahr ist. Aus diesem Grund wird die Aktion ausgelöst. Ich werde Mark bitten, dies zu überprüfen

0

Karish

Customer, bbp_participant, community, sq-ultimate, 443 replies.

Profil besuchen

vor 7 Jahren #137775

hallo,

 

Es scheint mir, dass das EA/Chart-Ladeereignis bewirkt, dass isBarOpen in der DrawStats-Funktion wahr ist. Aus diesem Grund wird die Aktion ausgelöst. Ich werde Mark bitten, dies zu überprüfen

Danke Thomas, ich würde gerne wissen, wie ich dieses Problem so schnell wie möglich beheben kann...

Nochmals vielen Dank, ich werde auf eine Antwort warten...!

0

Mark Fric

Administrator, sq-ultimate, 2 Antworten.

Profil besuchen

vor 7 Jahren #137989

Karish, ich habe es mir angesehen und ja, so funktioniert es. Wenn Sie Ihren EA in der Mitte des Balkens starten, kann er die Order sofort öffnen, er wartet nicht auf den Beginn eines neuen Balkens.

 

Bei der Erkennung eines neuen geöffneten Balkens wird geprüft, ob es sich um den ersten Tick des aktuellen Balkens handelt, was der Fall ist, wenn Sie EA gerade in der Mitte des Balkens gestartet haben.

 

Es ist in der Tat ziemlich schwierig, es nur für die neu geöffneten Balken und nicht für den ersten Balken, mit dem Sie Ihren EA starten, funktionieren zu lassen.

 

Es sollte möglich sein, indem Sie den MQL-Code ein wenig ändern - finden Sie eine Funktion drawStats(), wo die Variable sqIsBarOpen gesetzt ist.

 

Ändern Sie die Bedingung wie folgt:

 

   if(tmp != Time[0] && Volume[0] < 5 ) {}
      tmp = Time[0];
      open = Open[0];
      sqIsBarOpen = true;
   } sonst {
      sqIsBarOpen = false;
   }
 
Damit wird geprüft, dass auch das Volumen des geprüften Ticks kleiner als 5 sein muss, so dass die Fälle herausgefiltert werden sollten, in denen er in der Mitte des Balkens geprüft wird.
Bitte testen Sie es, bevor Sie es verwenden.

Mark
StrategyQuant Architekt

0

Ansicht von 5 Antworten - 1 bis 5 (von insgesamt 5)