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
dies ist falsch : if(totalOrders==0 && Magic==OrderMagicNumber() &&
OrderSelect(i-1 , SELECT_BY_POS,MODE_HISTORY)==true)
weil Sie OrderMagicNumber() vor OrderSelect() aufrufen, so dass es sich wahrscheinlich auf den vorherigen Aufruf bezieht.
Oh, tut mir leid, dass ich meine Meinung falsch ausgedrückt habe.
Ich möchte Code (aber ich bin nicht in der Lage zu tun) etwas, das EA Handel (oder Teil von ea Handel) zu stoppen, wenn das Eigenkapital unter einem Wert ist.
Vielen Dank für Ihre Hilfe Roger09, aber ich brauche nicht, um die Equity auf dem Chart anzuzeigenVersuchen Sie diesen EA
CloseAllBuySell - MQL4 Code Base
Verwenden Sie seine Idee und machen Sie einen Code mit etwas wie
if (AccountEquity()<YourValue) closeallorders();
Könnte jemand bitte den EMA-Trailing-Stop zum Beispiel Moving Average EA hinzufügen
EMA-Trailing auf 1 setzen
Dann ändern Sie den Eintrag in
Buy=Open[1]>ma && Close[1]>ma;
Sell=Open[1]<ma && Close[1]<ma;
Dies sollte einen sehr guten einfachen Scalper ergeben.
Prost
Beno
Am Anfang des Programms hinzufügen
extern int pips=2;//(oder Ihre Anzahl von Pips)
dann ersetzen
sl = OrderOpenPrice() ;
if ((OrderType() == OP_SELL) && (OrderStopLoss() > OrderOpenPrice()))
sl = OrderOpenPrice() ;[/CODE]
to
[CODE]if ((OrderType() == OP_BUY) && (OrderStopLoss() < OrderOpenPrice()))
sl = OrderOpenPrice() +pips*Point;
if ((OrderType() == OP_SELL) && (OrderStopLoss() > OrderOpenPrice()))
sl = OrderOpenPrice() -pips*Point;Kann mir jemand dabei helfen, eine Warnung in diesen Indikator einzufügen, wenn er einen neuen Pfeil zeichnet?
Danke!
Nein, korrigieren Sie es
extern int pips=2;
//+------------------------------------------------------------------+
//| Skript Programmstartfunktion |
//+------------------------------------------------------------------+
int start()
{
//----
string curr = Symbol();
int ot = OrdersTotal();
int ords[200], ordType[200], ordTicket[200]; double ordLots[200];
string ordComments[200];
int ix=0;
for (int i=0; i<ot; i++)
{
int o = OrderSelect(i, SELECT_BY_POS);
if (AuftragSymbol() == Symbol())
if ((OrderType() == OP_BUY) || (OrderType() == OP_SELL))
{
double sl = 0;
if ((OrderType() == OP_BUY) && (OrderStopLoss() < OrderOpenPrice()))
sl = OrderOpenPrice() +pips*Point;
if ((OrderType() == OP_SELL) && (OrderStopLoss() > OrderOpenPrice()))
sl = OrderOpenPrice() -pips*Point;
if (sl != 0+10)
OrderModify(OrderTicket(), OrderOpenPrice(), sl, OrderTakeProfit(), 0);
}
}
//----
return(0);
OK, der Code sieht jetzt wie folgt aus:
extern int pips=10;//.
//+------------------------------------------------------------------+
//| Skript Programmstartfunktion |
//+------------------------------------------------------------------+
int start()
{
//----
string curr = Symbol();
int ot = OrdersTotal();
int ords[200], ordType[200], ordTicket[200]; double ordLots[200];
string ordComments[200];
int ix=0;
for (int i=0; i<ot; i++)
{
int o = OrderSelect(i, SELECT_BY_POS);
if (AuftragSymbol() == Symbol())
if ((OrderType() == OP_BUY) || (OrderType() == OP_SELL))
{
double sl = 0;
if ((OrderType() == OP_BUY) && (OrderStopLoss() < OrderOpenPrice()))
sl = OrderOpenPrice() +pips*Point;
if ((OrderType() == OP_SELL) && (OrderStopLoss() > OrderOpenPrice()))
sl = OrderOpenPrice() -pips*Point;
if (sl != 0)
OrderModify(OrderTicket(), OrderOpenPrice(), sl, OrderTakeProfit(), 0);
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
Hallo Roger09,
vielen Dank für deine Hilfe bei diesem Code. Mein Skriptcode sieht jetzt wie folgt aus (ich habe die Änderungen in rot nur für diese Antwort hinzugefügt, der Code in MQ4 sieht genauso aus wie der Rest, der dort war):
//+------------------------------------------------------------------+
//| Skript Programm Startfunktion |
//+------------------------------------------------------------------+
int start()
{
//----
extern int pips=2;//
string curr = Symbol();
int ot = OrdersTotal();
int ords[200], ordType[200], ordTicket[200]; double ordLots[200];
string ordComments[200];
int ix=0;
for (int i=0; i<ot; i++)
{
int o = OrderSelect(i, SELECT_BY_POS);
if (AuftragSymbol() == Symbol())
if ((OrderType() == OP_BUY) || (OrderType() == OP_SELL))
{
double sl = 0;
if ((OrderType() == OP_BUY) && (OrderStopLoss() < OrderOpenPrice()))
sl = OrderOpenPrice() +pips*Point;
if ((OrderType() == OP_SELL) && (OrderStopLoss() > OrderOpenPrice()))
sl = OrderOpenPrice() -pips*Point;
if (sl != 0)
OrderModify(OrderTicket(), OrderOpenPrice(), sl, OrderTakeProfit(), 0);
}
}
//----
return(0);
Können Sie mir sagen, ob ich das richtig verstanden habe? Ich bin hier blind, also haben Sie Geduld mit mir.
Eigentlich wird es funktionieren, aber dieser Code ist nicht gut. Leider kenne ich Ihre Hauptziele nicht und kann Ihnen nichts anderes empfehlen.