Mein ERSTER EA macht mir so manchen Kopfschmerz.
Einer davon ist
dass der EA zu späteren Zeiten (gem. Strategie ja richtig) immer neue Order öffnet,
obwohl die erste Order noch nicht via SL/TP abgearbeitet ist.
Wie kann man also abfragen, ob eine Order im jeweiligen Handelsinstrument (z.B. USDGBP)bereits offen ist???
Wenn eine geöffnet ist, dann möchte ich die OrderSend Befehlt überspringen,
Danke für die Hilfe

OrderSend verhindern wenn bereits eine Order des jeweiligen Handelsinstrumentes geöffnet ist
#1
Posted 23 May 2017 - 06:45 AM
Thanked by 2 Members:
|
|
#2
Posted 23 May 2017 - 07:10 AM
Mit
int max_Orders = 10;if(OrdersTotal()<max_Orders){Sell_Ticket=OrderSend....}
verhindere ich erfolgreich die Überschreitung maximal offener Order (hier z.B. nicht mehr als 10 offene Order)
ich suche jetzt einen ähnlichen Befehl, mit dem ich die maximal offenen Order des jeweiligen Handelsinstrumentes abfragen kann.
also z.B.: if(Orders_Symbol()<1)
Thanked by 2 Members:
|
|
#3
Posted 23 May 2017 - 09:54 AM
Zum Abfragen, ob schon eine Order offen ist musst Du die offene Tradeliste durchgehen.
for (int k = OrdersTotal()-1; k >= 0; k--) { if (OrderSelect(k, SELECT_BY_POS, MODE_TRADES)==true) { if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber) { if (OrderType() == OP_BUY || OrderType() == OP_SELL) -> Trade ist offen; } } }
Wann kaufen? Schau in den Investment Kalender auf Marktgedanken.
Meine Trophäen (dedicated to Vola *g*):
Thanked by 4 Members:
|
|
#4
Posted 23 May 2017 - 01:36 PM
Danke, ziemlich komplex.
Verstehe ich richtig, dass ich
1.) die Variable MagicNumber, deren Parameter in meinem OrderSend-Befehl mit NULL gefüllt ist
in den OrderSend-Befehl austauschen muss? - also statt NULL dann MagicNumber ?
2.) Muss ich am Kopf des EA die Zeile
extern int MagicNumber = 2017; // (2017 ist natürlich beliebig, richtig?)
einfügen?
Das mit der MagicNumber hab ich nicht auf meinem Schirm!!!
Edited by UweBln, 23 May 2017 - 01:37 PM.
Thanked by 3 Members:
|
|
#5
Posted 23 May 2017 - 01:52 PM
Thanked by 3 Members:
|
|
#6
Posted 23 May 2017 - 02:51 PM
Die MagicNumber dient dazu dem EA seine Trades zuordnen zu können damit er nicht irgendwelche manuellen Trades o.ä. modifiziert. Die muss natürlich auch bei der Tradeeröffnung mitgegeben werden.
Wann kaufen? Schau in den Investment Kalender auf Marktgedanken.
Meine Trophäen (dedicated to Vola *g*):
Thanked by 2 Members:
|
|
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users