Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools  
Zurck   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Expert-Advisors

Expert-Advisors Expert-Advisors fr Metatrader 4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4275
Beitrge: 39473
Benutzer: 6.589
Aktive Benutzer: 242
Links: 80
Wir begren unseren neuesten Benutzer: florianb90
Mit 667 Benutzern waren die meisten Benutzer gleichzeitig online (vor 2 Wochen um 05:39).
Neue Benutzer:
vor 2 Stunden
- florianb90
vor 3 Tagen
- Frank
vor 5 Tagen
- ach.ille
vor einer Woche
- mparis191
vor einer Woche
- KAANC

Onlineuser
'Wer ist online' anzeigen Benutzer: 2
Gste: 168
Gesamt: 170
Team: 0
Team:  
Benutzer:  florianb90, mawa1976
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt vor 4 Wochen
Neues Mitglied
 
Registriert seit: Jul 2019
Beitrge: 3
Alex60 befindet sich auf einem aufstrebenden Ast
Standard Skript einfgen in fertigen EA

Hallo Leute,

ich hoffe ihr knnt mir helfen.
Ich habe einen fertigen EA vorliegen, da wollte ich jetzt gerne einfertiges Skript
einfgen oder bei Hilfe ein Skript das einen Trailing Stop hat und oder eine Option das er den SL auf Break even zieht.
Nur weiss ich nicht genau wo an welcher Stelle ich das fertige Skript einfgen msste beim fertigen EA.
Da ich der Meinung bin das dieser mit nem Trailing Stop oder ner Break even option besser wre.
Mit Zitat antworten
  #2 (permalink)  
Alt vor 4 Wochen
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beitrge: 182
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Alex60 Beitrag anzeigen
Ich habe einen fertigen EA vorliegen, da wollte ich jetzt gerne einfertiges Skript
einfgen oder bei Hilfe ein Skript das einen Trailing Stop hat und oder eine Option das er den SL auf Break even zieht.
Nur weiss ich nicht genau wo an welcher Stelle ich das fertige Skript einfgen msste beim fertigen EA.
Da ich der Meinung bin das dieser mit nem Trailing Stop oder ner Break even option besser wre.
Mit diesen Angaben kann ich persnlich nichts anfangen.
1. wie sollen BreakEven und TrailingStop aktiviert werden
2. und wie sehen die Quellen aus
AVT
Mit Zitat antworten
  #3 (permalink)  
Alt vor 4 Wochen
Neues Mitglied
 
Registriert seit: Jul 2019
Beitrge: 3
Alex60 befindet sich auf einem aufstrebenden Ast
Standard

Ich habe mir vorgestellt , das der Trailing stop mit in den EA der ja schon fertig ist, it eingebaut wird.
Das er eben den SL mit nachzieht.
Das skript hab ich aus dem mql forum:
Zitat:
//--------------------------------------------------------------------
extern bool OnlyProfit = true; //
extern bool OnlyWithoutLoss = false;//
extern int Magic = 0;
extern int TrailingStop = 0; //= 0,
extern int Tip.Fr.or.Candl = 1; //= 0,
//= 1,
//--------------------------------------------------------------------
int delta, n,DIGITS;
datetime TIME;
double BID,ASK,POINT;
//--------------------------------------------------------------------
int start()
{
ObjectCreate("info", OBJ_LABEL, 0, 0, 0);
ObjectSet("info", OBJPROP_CORNER, 1);
ObjectSet("info", OBJPROP_XDISTANCE, 200 );
ObjectSet("info", OBJPROP_YDISTANCE, 0);
string txt;
POINT=MarketInfo(Symbol(),MODE_POINT);
DIGITS=MarketInfo(Symbol(),MODE_DIGITS);
if (TrailingStop!=0 && TrailingStop<MarketInfo(Symbol(),MODE_STOPLEVEL))
TrailingStop=MarketInfo(Symbol(),MODE_STOPLEVEL);
if (Magic==0) txt=StringConcatenate("total orders ",Symbol());
else txt=StringConcatenate("orders ",Symbol()," Magic ",Magic);
if (TrailingStop!=0) txt=StringConcatenate(" ",TrailingStop," ");
else if (Tip.Fr.or.Candl==0) txt=" Fractals "; else txt=" ";
Comment("Start TrailingStop ",txt,TimeToStr(TimeCurrent(),TIME_MINUTES));
while(true)
{
RefreshRates();
BID = MarketInfo(Symbol(),MODE_BID);
ASK = MarketInfo(Symbol(),MODE_ASK);
TIME = iTime(Symbol(),0,0);
delta = MarketInfo(Symbol(),MODE_STOPLEVEL);
if (delta<TrailingStop)delta=TrailingStop;
ObjectSetText("info",StringConcatenate("TrailingSt op ",txt," Orders ", n," ",
TimeToStr(TimeCurrent(),TIME_SECONDS)),8,"Arial",A qua);
TrailingStop();
if (n==0) break;
Sleep(1000);
}
Comment(" . ",
TimeToStr(TimeCurrent(),TIME_MINUTES));
ObjectDelete("SL Buy");
ObjectDelete("SL Sell");
ObjectDelete("info");
ObjectDelete("SL-");
ObjectDelete("SL+");
}
//--------------------------------------------------------------------
void TrailingStop()
{
int tip,Ticket;
bool error;
double StLo,OSL,OOP;
n=0;
for (int i=0; i<OrdersTotal(); i++)
{ if (OrderSelect(i, SELECT_BY_POS)==true)
{ tip = OrderType();
if (tip<2 && OrderSymbol()==Symbol() && (OrderMagicNumber()==Magic || Magic==0))
{
OSL = OrderStopLoss();
OOP = OrderOpenPrice();
Ticket = OrderTicket();
if (tip==OP_BUY)
{ n++;
StLo = SlLastBar(1,BID,Tip.Fr.or.Candl,TrailingStop);
if (StLo <= OOP && OnlyProfit) continue;
if (OSL >= OOP && OnlyWithoutLoss) continue;
if (StLo > OSL)
{ error=OrderModify(Ticket,OOP,NormalizeDouble(StLo, DIGITS),
OrderTakeProfit(),0,White);
Comment("TrailingStop ",Ticket," ",TimeToStr(TimeCurrent(),TIME_MINUTES));
Sleep(500);
if (!error) Comment("Error order ",Ticket," TrailingStop ",
GetLastError()," ",Symbol()," SL ",StLo);
}
}
if (tip==OP_SELL)
{ n++;
StLo = SlLastBar(-1,ASK,Tip.Fr.or.Candl,TrailingStop);
if (StLo==0) continue;
if (StLo >= OOP && OnlyProfit) continue;
if (OSL >= OOP && OnlyWithoutLoss) continue;
if (StLo < OSL || OSL==0 )
{ error=OrderModify(Ticket,OOP,NormalizeDouble(StLo, DIGITS),
OrderTakeProfit(),0,White);
Comment("TrailingStop "+Ticket," ",TimeToStr(TimeCurrent(),TIME_MINUTES));
Sleep(500);
if (!error) Comment("Error order ",Ticket," TrailingStop ",
GetLastError()," ",Symbol()," SL ",StLo);
}
}
}
}
}
}
//--------------------------------------------------------------------
double SlLastBar(int tip,double price, int tipFr, int tral)
{
double fr;
int jj,ii;
if (tral!=0)
{
if (tip==1) fr = BID - tral*POINT;
else fr = ASK + tral*POINT;
}
else
{
if (tipFr==0)
{
if (tip== 1)
for (ii=1; ii<100; ii++)
{
fr = iFractals(NULL,0,MODE_LOWER,ii);
if (fr!=0) if (price-delta*POINT > fr) break;
else fr=0;
}
if (tip==-1)
for (jj=1; jj<100; jj++)
{
fr = iFractals(NULL,0,MODE_UPPER,jj);
if (fr!=0) if (price+delta*POINT < fr) break;
else fr=0;
}
}
else
{
if (tip== 1)
for (ii=1; ii<100; ii++)
{
fr = iLow(NULL,0,ii);
if (fr!=0) if (price-delta*POINT > fr) break;
else fr=0;
}
if (tip==-1)
for (jj=1; jj<100; jj++)
{
fr = iHigh(NULL,0,jj);
if (price+delta*POINT < fr) break;
else fr=0;
}
}
}
if (tip== 1)
{
ObjectDelete("SL Buy");
ObjectDelete("SL-");
ObjectCreate("SL Buy",OBJ_ARROW,0,TIME,fr,0,0,0,0);
ObjectSet ("SL Buy",OBJPROP_ARROWCODE,6);
ObjectSet ("SL Buy",OBJPROP_COLOR, Blue);
ObjectCreate("SL-",OBJ_ARROW,0,TIME,price-delta*POINT,0,0,0,0);
ObjectSet ("SL-",OBJPROP_ARROWCODE,4);
ObjectSet ("SL-",OBJPROP_COLOR, Blue);
}
if (tip==-1)
{
ObjectDelete("SL Sell");
ObjectDelete("SL+");
ObjectCreate("SL Sell",OBJ_ARROW,0,TIME,fr,0,0,0,0);
ObjectSet ("SL Sell",OBJPROP_ARROWCODE,6);
ObjectSet ("SL Sell", OBJPROP_COLOR, Green);
ObjectCreate("SL+",OBJ_ARROW,0,TIME,price+delta*PO INT,0,0,0,0);
ObjectSet ("SL+",OBJPROP_ARROWCODE,4);
ObjectSet ("SL+",OBJPROP_COLOR, Green);
}
return(fr);
}
//--------------------------------------------------------------------
Fr Breakeven das er dann irgendwie die trades auf BE setzt
Mit Zitat antworten
  #4 (permalink)  
Alt vor 4 Wochen
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beitrge: 182
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Alex60 Beitrag anzeigen
Das skript hab ich aus dem mql forum
Leider kann ich mit dem Skript gar nichts anfangen - oder sagen wir mal so - ich kriege da unzhlige Fehlermeldungen.
Und ich habe ehrlich gesagt keine Lust, einen Code, der auch noch Fremdsprache drin hat (ich vermute mal wieder russisch) auseinander zu nehmen und wieder zusammen zu setzen.
Zitat:
Zitat von Alex60 Beitrag anzeigen
Fr Breakeven das er dann irgendwie die trades auf BE setzt
Irgendwie gibt es weder beim Programmieren noch beim Traden - bei beiden gibt nur feste Regeln, die befolgt werden.
Entweder die Bedingung ist erfllt, dann wird BE gesetzt, oder sie ist nicht erfllt, dann eben nicht.

Tut mir leid, aber hier bin ich einfach berfordert. AVT
Mit Zitat antworten
  #5 (permalink)  
Alt vor 4 Wochen
Neues Mitglied
 
Registriert seit: Jul 2019
Beitrge: 3
Alex60 befindet sich auf einem aufstrebenden Ast
Standard

Das mit den Fehlermeldungen hab ich auch schon bemerkt
hab das gestern mal angeschaut im Editor.
Oder gibts da vllt noch was anderes in der Richtung?
Mit Zitat antworten
Antwort

Lesezeichen


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beitrge zu antworten.
Es ist Ihnen nicht erlaubt, Anhnge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beitrge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 21:18 Uhr.


Der Wavesnode - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2019 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright 2009 - 2017 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------