Grundlegende Fragen ...

 

Hallo

Ich möchte folgendes im Code machen

Don't trade for 30 minutes since my last trade'

Wenn also meine Indikatoren anzeigen, dass ich meinen aktuellen Handel wieder ergänzen sollte, dann platziere ich den Handel in dieselbe Richtung nur, wenn 30 Minuten vergangen sind.

Ich mache folgendes - dieser Code funktioniert noch nicht - er ist nur in der Entwurfsphase - ich weiß nicht, wie ich 30 Minuten zu meiner letzten Order hinzufügen kann

Dies ist für einen EA, der nur mit dem aktuellen Paar arbeitet

int start()

{

int cnt, ticket, total, stop1;

statisch datetime lasttime

total=OrdersTotal();

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

//Bestimmen des Zeitpunkts des letzten OrderClose

if (OrderCloseTime > lasttime + 30)

{

lasttime = orderclosetime

}//if (OrderCloseTime)

}

Jetzt möchte ich sagen

if (Curtime() > lasttime + 30 Minuten)

{

Handel fortsetzen

}

Bitte um Hilfe

 

Ich denke, das sieht gut aus, aber in der Prüfung für die OrderCloseTime,

Ich verstehe nicht, warum Sie die zusätzlichen 30 Minuten benötigen.

Wenn die neueste OrderCloseTime aktueller ist als die vorherige, dann sollte es lasttime sein.

 

wenn (Curtime() > lasttime + 30*60)

 

Grundsätzliche Frage ...

Hallo!

Ich bin neu bei MetaTrader und habe eine grundlegende Frage:

Ich möchte die offenen Positionen in meinem Expert-Advisor auf jeweils nur 1 Position begrenzen - aber ich möchte diese Begrenzung pro Symbol, so dass, wenn ich einen anderen Expert-Advisor für ein anderes Symbol ausführe, er eine neue Position für dieses Symbol öffnet.

Mit anderen Worten, ich möchte in der Lage sein, 1 Positionen für alle Symbole zu öffnen, aber nicht mehr als 1 Position für ein Symbol (Und ich spreche über viele Expert-Advisor auf viele Symbole...)

Wie kann ich das machen?

Ich habe die Funktion"totaltrades" gesehen, aber aus der Dokumentation habe ich verstanden, dass diese Funktion für das Konto gilt und nicht für das aktuelle Symbol,

so "if totaltrades=1 then exit;" wird zu 1 Position zu einer Zeit für alle Symbole führen...

10X !

 

1 Positionen für alle Symbole

int total=OrdersTotal();

if(total<1)

{

.

.

.

}

 

Aber eine Position für ein Symbol oder für ein geöffnetes Diagramm?

 

Nun, eine pro Diagramm ist das Beste ...

Aber wenn es nicht getan werden kann, dann 1 pro Symbol ist auch gut...

 

1 pro Symbol

...

for (int i=0; i<OrdersTotal(); i++) {

if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {

if (OrderSymbol()==Symbol() )

return(0);

....
 

Großartig!

10 Mal so viel!

 

Und ich werde Sie wieder belästigen ... (:

Kann ich es auch pro Chart machen?

Denn ich habe verschiedene Systeme für verschiedene Zeitintervalle Charts ...

 

Tut mir leid, dass ich nicht verstehe

Grund der Beschwerde: