Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ha.. Kannst du die gleiche Taste auf deiner Tastatur benutzen, damit das auch funktioniert? Prost!
Es ist das gleiche Problem. Funktioniert im Backtest, aber nicht im Forward Test. Keine Trades werden ausgeführt... Können Sie mir helfen?
Ist Ihr Keyboard zu verkaufen?
Tausend Dank, Pips. Werde Sie auf dem Laufenden halten...
Es ist das gleiche Problem. Funktioniert im Backtest, aber nicht im Forward Test. Keine Trades werden ausgeführt... Können Sie helfen?
Vielen Dank für den Rat. Ich habe herausgefunden, dass es in den meisten Situationen (vielleicht in allen Situationen?) einen Tick zu Beginn des neuesten Balkens gibt, so dass ich mit dem offenen Preis handeln kann. Es ist nicht ideal, aber (wie es oben gesagt wurde) gibt es ziemlich kleine differece zwischen schließen und offenen Preis.
Welchen Wert liefert die Funktion iTime? Ist es das Startdatum eines Balkens? In der Anleitung steht nur "Gibt den Zeitwert für den Balken des angegebenen Symbols mit Zeitrahmen und Verschiebung zurück".
Vielen Dank für die Antwort im Voraus.
Welchen Wert liefert die Funktion iTime? Ist es das Startdatum eines Balkens? In der Anleitung steht nur "Gibt den Zeitwert für den Balken des angegebenen Symbols mit Zeitrahmen und Verschiebung zurück". Vielen Dank für die Antwort im Voraus.
Hallo IN10TION,
habe dir eine PM geschickt...
Benötige EA, um ALLE Aufträge zu schließen, sobald der Gewinn erreicht ist
Hallo, ich frage mich, ob einer von euch großartigen Programmierern einfach den Code hinzufügen kann, um ALLE Aufträge zu schließen, sobald g_MinProfit und f_MinProfit erreicht sind. Was ich finde, ist, wenn der Gewinn getroffen wird, gibt es links über Buy / Sell Stop / Limit Order Nachzügler und würde nur wie sie alle gelöscht, sobald Gewinn min ausgelöst wird.
Ich danke Ihnen
extern bool g_CLOSE_ALL=false;
extern bool g_RESTART=true;
extern int g_Step=120;
extern double g_FirstLot=0.1;
extern double g_IncLot=0;
extern double g_MinProfit=450;
extern int g_Magic = 2008;
extern string g_comment="Win";
extern bool f_CLOSE_ALL=false;
extern bool f_RESTART=true;
extern int f_Step=120;
extern double f_FirstLot=0.1;
extern double f_IncLot=0;
extern double f_MinProfit=450;
extern int f_Magic = 2009;
extern string f_comment="REV";
int GOrder_Buy=0;
int GOrder_Sell=0;
double GLotSell=0;
double GLotBuy=0;
double gLotSell=0;
double gLotBuy=0;
double gLSP,gLBP;
double gCurrentProfit;
int FOrder_Buy=0;
int FOrder_Sell=0;
double FLotSell=0;
double FLotBuy=0;
double fLotSell=0;
double fLotBuy=0;
double fLSP,fLBP;
double fCurrentProfit;
double max_dd;
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
int init()
{
Comment("Waddah Attar Win TradeBalancer 1");
if(!GlobalVariableCheck("max_DD")) GlobalVariableSet("max_DD",0);
return(0);
}
int deinit()
{
Comment("");
return(0);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
int start()
{
gCurrentProfit=GetOrdersProfit(g_Magic);
if (gCurrentProfit>=g_MinProfit || g_CLOSE_ALL)
{
DeletePendingOrders(g_Magic);
CloseOrders(g_Magic);
}
if (MyOrdersTotal(g_Magic)==0 && g_RESTART)
{
OrderSend(Symbol(),OP_BUYLIMIT,g_FirstLot,Ask-g_Step*Point,3,0,0,g_comment,g_Magic,0,Blue);
OrderSend(Symbol(),OP_SELLLIMIT,g_FirstLot,Bid+g_Step*Point,3,0,0,g_comment,g_Magic,0,Red);
}
gLSP=GetLastSellPrice(g_Magic);
gLBP=GetLastBuyPrice(g_Magic);
if((gLSP-Bid)<=5*Point)
{
OrderSend(Symbol(),OP_SELLLIMIT,gLotSell+g_IncLot,gLSP+g_Step*Point,3,0,0,g_comment,g_Magic,0,Red);
}
if((Ask-gLBP)<=5*Point)
{
OrderSend(Symbol(),OP_BUYLIMIT,gLotBuy+g_IncLot,gLBP-g_Step*Point,3,0,0,g_comment,g_Magic,0,Blue);
}
//--------------------------------------------------------------------------------------------
fCurrentProfit=GetOrdersProfit(f_Magic);
if (fCurrentProfit>=f_MinProfit || f_CLOSE_ALL)
{
DeletePendingOrders(f_Magic);
CloseOrders(f_Magic);
}
if (MyOrdersTotal(f_Magic)==0 && f_RESTART)
{
OrderSend(Symbol(),OP_BUYSTOP,f_FirstLot,Ask+f_Step*Point,3,0,0,f_comment,f_Magic,0,Blue);
OrderSend(Symbol(),OP_SELLSTOP,f_FirstLot,Bid-f_Step*Point,3,0,0,f_comment,f_Magic,0,Red);
}
fLSP=GetLastSellPrice(f_Magic);
fLBP=GetLastBuyPrice(f_Magic);
if((Bid-fLSP)<=5*Point)
{
OrderSend(Symbol(),OP_SELLSTOP,fLotSell+f_IncLot,fLSP-f_Step*Point,3,0,0,f_comment,f_Magic,0,Red);
}
if((fLBP-Ask)<=5*Point)
{
OrderSend(Symbol(),OP_BUYSTOP,fLotBuy+f_IncLot,fLBP+f_Step*Point,3,0,0,f_comment,f_Magic,0,Blue);
}
//--------------------------------------------------------------------------------------------
//max_dd=
//--------------------------------------------------------------------------------------------
Comment("Waddah Attar Win TradeBalancer 1",
"\n\n\n\n", " CurrentProfit = ", DoubleToStr(gCurrentProfit,2),
"\n\n", " Buy Lots = ", DoubleToStr(GLotBuy,2) + " / " + GOrder_Buy,
"\n\n", " Sell Lots = ", DoubleToStr(GLotSell,2) + " / " + GOrder_Sell,
"\n\n\n\n", " CurrentProfit = ", DoubleToStr(fCurrentProfit,2),
"\n\n", " Buy Lots = ", DoubleToStr(FLotBuy,2) + " / " + FOrder_Buy,
"\n\n", " Sell Lots = ", DoubleToStr(FLotSell,2) + " / " + FOrder_Sell);
return(0);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
int DeletePendingOrders(int Magic)
{
int total = OrdersTotal();
for (int cnt = total-1 ; cnt >= 0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()!=OP_BUY && OrderType()!=OP_SELL))
{
OrderDelete(OrderTicket());
}
}
return(0);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
int CloseOrders(int Magic)
{
int total = OrdersTotal();
for (int cnt = total-1 ; cnt >= 0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
{
if (OrderType()==OP_BUY)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Blue);
}
if (OrderType()==OP_SELL)
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);
}
}
}
return(0);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
int MyOrdersTotal(int Magic)
{
int c=0;
int total = OrdersTotal();
if(Magic==g_Magic) { GLotBuy=0; GLotSell=0; GOrder_Buy=0; GOrder_Sell=0; }
if(Magic==f_Magic) { FLotBuy=0; FLotSell=0; FOrder_Buy=0; FOrder_Sell=0; }
for (int cnt = 0 ; cnt < total ; cnt++)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol())
{
if(Magic==g_Magic)
{
if(OrderType()==OP_BUY) { GLotBuy=GLotBuy+OrderLots(); GOrder_Buy++; }
if(OrderType()==OP_SELL) { GLotSell=GLotSell+OrderLots(); GOrder_Sell++; }
}
if(Magic==f_Magic)
{
if(OrderType()==OP_BUY) { FLotBuy=FLotBuy+OrderLots(); FOrder_Buy++; }
if(OrderType()==OP_SELL) { FLotSell=FLotSell+OrderLots(); FOrder_Sell++; }
}
c++;
}
}
return(c);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
double GetLastBuyPrice(int Magic)
{
int total=OrdersTotal()-1;
for (int cnt = total ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT || OrderType()==OP_BUY))
{
if(Magic==g_Magic) gLotBuy=OrderLots();
if(Magic==f_Magic) fLotBuy=OrderLots();
return(OrderOpenPrice());
}
}
return(0);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
double GetLastSellPrice(int Magic)
{
int total=OrdersTotal()-1;
for (int cnt = total ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT || OrderType()==OP_SELL))
{
if(Magic==g_Magic) gLotSell=OrderLots();
if(Magic==f_Magic) fLotSell=OrderLots();
return(OrderOpenPrice());
}
}
return(100000);
}
//--------------------------------------------------------------------------------------------
//--------------------------------------------------------------------------------------------
double GetOrdersProfit(int Magic)
{
double eProfit=0;
int total=OrdersTotal()-1;
for (int cnt = total ; cnt >=0 ; cnt--)
{
OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber() == Magic && OrderSymbol()==Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL))
{
eProfit=eProfit+OrderProfit();
}
}
return(eProfit);
}
//--------------------------------------------------------------------------------------------