Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   EA schließt Order nicht (http://www.expert-advisor.com/forum/showthread.php?t=4517)

Hannes 17.10.15 08:55

EA schließt Order nicht
 
Hallo zusammen,
kann mir bitte jemand sagen wo mein Fehler liegt? Der EA schließt mir einfach die Trades nicht, wenn eine Trendumkehr vorliegt. Er fährt den Trade stur bis zum gesetzten SL durch und missachtet die Bedingungen für den “OrderClose“-Befehl. Vielleicht kann mir jemand von euch helfen. Danke im Voraus.

double stoch1=iStochastic(NULL,0,6,4,4,MODE_SMA,0,MODE_MA IN,0);
double stoch2=iStochastic(NULL,0,6,4,4,MODE_SMA,0,MODE_SI GNAL,0);
double adx1=iADX(NULL,0,14,PRICE_HIGH,MODE_PLUSDI,0);
double adx2=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);
double tenkan=iIchimoku(NULL,0,9,26,52,MODE_TENKANSEN,1);
double kijun=iIchimoku(NULL,0,9,26,52,MODE_KIJUNSEN,1);
double osma=iOsMA(NULL,0,12,26,9,PRICE_CLOSE,0);

if(OrderSelect(OrdersTotal(),SELECT_BY_POS,MODE_TR ADES)==true)
{
if(OrderType()==OP_BUY && OrderMagicNumber() == MagicNumber && OrderSymbol()== Symbol() )
{
if (osma < 0)
{
if (stoch1 < stoch2)
{
if (stoch1 < 70)
{
if (adx1 < adx2)
{
if ( tenkan < kijun)
{
OrderClose(OrderTicket(),OrderLots(),Bid,5,White);
return;
}
}
}
}
}
}

yytrader 17.10.15 09:16

Hallo,

ich habe den Code nur Überflogen, allerdings ist das hier wahrscheinlich falsch:
if(OrderSelect(OrdersTotal(),SELECT_BY_POS,MODE_TR ADES)==true)
Wenn du nur eine Order hast und diese geschlossen werden soll,
versuche mal:
if(OrderSelect(0,SELECT_BY_POS,MODE_TR ADES)==true)

vielleicht sind noch andere Fehler im Code, das kann ich nicht sagen. Lass dir doch immer per Print("ich bin hier"); ausgeben, wo der code sich gerade befindet, dann wird du sehen, welche Bedingung nicht erfüllt wird.

Gruß

yytrader

traderdoc 17.10.15 09:35

Zitat:

Zitat von Hannes (Beitrag 31332)
Hallo zusammen,
kann mir bitte jemand sagen wo mein Fehler liegt? Der EA schließt mir einfach die Trades nicht, wenn eine Trendumkehr vorliegt. Er fährt den Trade stur bis zum gesetzten SL durch und missachtet die Bedingungen für den “OrderClose“-Befehl. Vielleicht kann mir jemand von euch helfen. Danke im Voraus.

double stoch1=iStochastic(NULL,0,6,4,4,MODE_SMA,0,MODE_MA IN,0);
double stoch2=iStochastic(NULL,0,6,4,4,MODE_SMA,0,MODE_SI GNAL,0);
double adx1=iADX(NULL,0,14,PRICE_HIGH,MODE_PLUSDI,0);
double adx2=iADX(NULL,0,14,PRICE_CLOSE,MODE_MINUSDI,0);
double tenkan=iIchimoku(NULL,0,9,26,52,MODE_TENKANSEN,1);
double kijun=iIchimoku(NULL,0,9,26,52,MODE_KIJUNSEN,1);
double osma=iOsMA(NULL,0,12,26,9,PRICE_CLOSE,0);

for (int i = OrdersTotal() -1; i >= 0; i--) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true)
{
if(OrderType()==OP_BUY && OrderMagicNumber() == MagicNumber && OrderSymbol()== Symbol() )
{
if (osma < 0)
{
if (stoch1 < stoch2)
{
if (stoch1 < 70)
{
if (adx1 < adx2)
{
if ( tenkan < kijun)
{
OrderClose(OrderTicket(),OrderLots(),Bid,5,White);
return;
}
}
}
}
}
}
}

Viel Erfolg!

traderdoc

Hannes 17.10.15 10:26

@ Traderdoc und YYTrader,
vielen Dank für die schnellen Antworten, nur leider habe ich das Problem immer noch. Der EA durchläuft die Schleifen bis inkl. der OrderType - Abfrage. Ab der ersten Indikatorabfrage ígnoriert er jedoch weiterhin stur alle weiteren Bedingungen. Laut grafischer Darstellung hätte er die Order jedoch schließen sollen. Seltsam ist, dass beim Aufgeben einer Order dieses System funktioniert.

Gruß Hannes

traderdoc 17.10.15 12:14

Wie bereits erwähnt: an entsprechende Stellen Print("Testx"); schreiben. x z.B. aufsteigende Zahl, um eine schnellere Zuordnung des Prints zu erlangen und dann schauen, wo der EA zu frühzeitig aussteigt.

traderdoc


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:47 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum