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
Hilfe - wie modifiziere ich einen EA, um bestehende Trades offen zu lassen?
Ich brauche eine ziemlich einfache Lösung, wenn jemand helfen kann
Ich habe einen EA, der jetzt profitabel ist, aber er öffnet einen Handel und schließt einen Handel zur gleichen Zeit, so dass nur 1 Handel zu jeder Zeit aktiv ist.
Ich möchte den EA auf einem bestehenden Konto laufen lassen, auf dem bereits einige Trades offen sind. Ich möchte diese Trades laufen lassen, aber der EA soll weiterhin seine eigenen Trades öffnen und schließen, wenn einer der bestehenden Trades profitabel wird, schließt er diese.
Diese Seite Anforderung der Schließung der bestehenden Trades bei Gewinn kann ignoriert werden, wenn das wird es einfach zu halten, kann ich diese manuell schließen, wenn nötig.
Mein EA verwendet im Moment Folgendes
if(val1 > val2) {trade_text = " BUY trade open";trend_text = "UP";BV=1;break;}
if(val1 < val2) {trade_text = " SELL trade open";trend_text = "DOWN";SV=1;break;}}
// Expert Money Management
if(MM){if(Risiko100){Kommentar("Ungültiger Risikowert.");return(0);}
else{MML=MathFloor((AccountFreeMargin()*AccountLeverage()*Risk*Point*100)/(Ask*MarketInfo(Symbol(),MODE_LOTSIZE)*MarketInfo(Symbol(),MODE_MINLOT)))*MarketInfo(Symbol(),MODE_MINLOT);}}
if(MM==false){MML=Lots;}
// Experten-Init-Positionen
int cnt=0,OP=0,OS=0,OB=0,CS=0,CB=0;OP=0;for(cnt=0;cnt<OrdersTotal();cnt++){OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if((OrderType()==OP_SELL||OrderType()==OP_BUY)&&OrderSymbol()==Symbol()&&((OrderMagicNumber()==Magic)||Magic==0))OP=OP+1;}
if(OP>=1){OS=0; OB=0;}OB=0;OS=0;CB=0;CS=0;// Expertenbedingungen zur Eröffnung der Position
if(SV>0){OS=1;OB=0;}if(BV>0){OB=1;OS=0;}
// Expertenbedingungen für das Schließen der Position
if((SV>0)||(RealSL_Enabled&&(OrderOpenPrice()-Bid)/Point>=RealSL)||(RealTP_Enabled&&(Ask-OrderOpenPrice())/Point>=RealTP)){CB=1;}
if((BV>0)||(RealSL_Enabled&&(Ask-OrderOpenPrice())/Point>=RealSL)||(RealTP_Enabled&&(OrderOpenPrice()-Bid)/Point>=RealTP)){CS=1;}
for(cnt=0;cnt<OrdersTotal();cnt++){OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);
if(OrderType()==OP_BUY&&OrderSymbol()==Symbol()&&((OrderMagicNumber()==Magic)||Magic==0))
{if(CB==1){OrderClose(OrderTicket(),OrderLots(),Bid,Slip,Aqua);temp = Bid;return(0);}}
if(OrderType()==OP_SELL&&OrderSymbol()==Symbol()&&((OrderMagicNumber()==Magic)||Magic==0)){
if(CS==1){OrderClose(OrderTicket(),OrderLots(),Ask,Slip,Gold);temp = Bid;return(0);}}}double SLI=0,TPI=0;int TK=0;
// Wert der offenen Expertenposition
if((AddP()&&Add_Positions&&OP<=MaxOrders)||(OP==0&&!Add_Positions)){
if(OS==1){if(TP==0)TPI=0;sonst TPI=Bid-TP*Point;if(SL==0)SLI=0;sonst SLI=Bid+SL*Point;OS=0;return(0);}
if(OB==1){if(TP==0)TPI=0;sonst TPI=Ask+TP*Point;if(SL==0)SLI=0;sonst SLI=Ask-SL*Point;{TK=OrderSend(Symbol(),OP_BUY,MML,Ask,Slip,SLI,TPI,OrSt,Magic,0,Blue);OB=0;return(0);}}
for(j=0;j<OrdersTotal();j++){if(OrderSelect(j,SELECT_BY_POS,MODE_TRADES)){if(OrderSymbol()==Symbol()&&((OrderMagicNumber()==Magic)||Magic==0)){TrP();}}}return(0);}
// Expertenanzahl der Aufträge
int CntO(int Typ,int Magie){int _CntO;_CntO=0;
for(int j=0;j<OrdersTotal();j++){OrderSelect(j,SELECT_BY_POS,MODE_TRADES);if(OrderSymbol()==Symbol()){if((OrderType()==Type&&(OrderMagicNumber()==Magic)||Magic==0))_CntO++;}}return(_CntO);}
//expert breakeven
void TrP(){double pb,pa,pp;pp=MarketInfo(OrderSymbol(),MODE_POINT);if(OrderType()==OP_BUY){pb=MarketInfo(OrderSymbol(),MODE_BID);
if(BE>0){if((pb-OrderOpenPrice())>BE*pp){if((OrderStopLoss()-OrderOpenPrice())<0){ModSL(OrderOpenPrice()+0*pp);}}}
// Experten-Trailing-Stop
if(TS>0){if((pb-OrderOpenPrice())>TS*pp){if(OrderStopLoss()<pb-(TS+TS_Step-1)*pp){ModSL(pb-TS*pp);return;}}}}
if(OrderType()==OP_SELL){pa=MarketInfo(OrderSymbol(),MODE_ASK);if(BE>0){if((OrderOpenPrice()-pa)>BE*pp){if((OrderOpenPrice()-OrderStopLoss())<0){ModSL(OrderOpenPrice()-0*pp);}}}
if(TS>0){if(OrderOpenPrice()-pa>TS*pp){if(OrderStopLoss()>pa+(TS+TS_Step-1)*pp||OrderStopLoss()==0){ModSL(pa+TS*pp);return;}}}}}
//expert stoploss
void ModSL(double ldSL){bool fm;fm=OrderModify(OrderTicket(),OrderOpenPrice(),ldSL,OrderTakeProfit(),0,CLR_NONE);}
//expert add positions Funktion
bool AddP(){int _num=0; int _ot=0;
for (int j=0;j<OrdersTotal();j++){if(OrderSelect(j,SELECT_BY_POS)==true && OrderSymbol()==Symbol()&&OrderType()<3&&((OrderMagicNumber()==Magic)||Magic==0)){
_num++;if(OrderOpenTime()>_ot) _ot=OrderOpenTime();}}if(_num==0) return(true);if(_num>0 && ((Time[0]-_ot))>0) return(true);else return(false);}
/*
// Expertenbedingungen zum Schließen der Position
if((SV>0)||(RealSL_Enabled&&(OrderOpenPrice()-Bid)/Point>=RealSL)||(RealTP_Enabled&&(Ask-OrderOpenPrice())/Point>=RealTP)){CB=1;}
if((BV>0)||(RealSL_Enabled&&(Ask-OrderOpenPrice())/Point>=RealSL)||(RealTP_Enabled&&(OrderOpenPrice()-Bid)/Point>=RealTP)){CS=1;}
for(cnt=0;cnt<OrdersTotal();cnt++){OrderSelect(cnt ,SELECT_BY_POS,MODE_TRADES);
if(OrderType()==OP_BUY&&OrderSymbol()==Symbol()&&( (OrderMagicNumber()==Magic)||Magic==0))
{if(CB==1){OrderClose(OrderTicket(),OrderLots(),Bi d,Slip,Aqua);temp = Bid;return(0);}}
if(OrderType()==OP_SELL&&OrderSymbol()==Symbol()&& ((OrderMagicNumber()==Magic)||Magic==0)){
if(CS==1){OrderClose(OrderTicket(),OrderLots(),Ask ,Slip,Gold);temp = Bid;return(0);}}}double SLI=0,TPI=0;int TK=0;
*/
füge nur /*zu Beginn der Expertenbedingungen hinzu, um die Position zu schließen
und */ am Ende
msn aboukalil ( at) hotmail.fr
Danke aboukalil für die schnelle Antwort, aber ich verstehe nicht ganz, wenn ich das heraus editiere, werde ich keinen Close-Befehl haben, es wird meine bestehenden Trades verlassen, aber mein EA wird nie seinen eigenen Trade schließen, um in die entgegengesetzte Richtung zu öffnen?
Können Sie mir dabei ein wenig helfen?
Hallo an alle.....
Neugierig, ob jemand weiß, oder besitzen eine generische Indikator, dass man jede Linie-basierte Single-Buffer-Indikator in der iCustoms der generischen ein, so dass, wenn der generische Indikator zu einem Diagramm angehängt ist, wird es als zweifarbige Histogramm-Bar-Indikator, dessen Farbe ändern basiert auf der Steigung der iCustomed indy?
Für jede Hilfe bin ich dankbar.
Sehr geehrte Damen und Herren,
Wie kann ich einen Indikator in eine csv-Datei umwandeln?Danke.
Sehr geehrte Damen und Herren, wie kann ich einen Indikator in eine CSV-Datei umwandeln?Danke.
Meinen Sie, wie man in einer CSV-Datei speichert?
Prüfen Sie dies:
Werkzeuge - .csv reader
Bitte helfen Sie, dieses kleine Skript zu ändern
Hallo,
Könnte mir jemand helfen, dieses kleine Skript für die Auftragseingabe zu ändern
so dass die gehandelte Lotsize eine Funktion von einem % riskiert der Kontogröße ist
Ich weiß, dass diese Codezeile irgendwo eingefügt werden sollte, aber ich habe keine Ahnung, wie ich sie programmieren soll
double Risk = RiskPercent / 100;
if (UseMoneyMgmt)
Lots=NormalizeDouble(AccountBalance()*Risk/stoploss/(MarketInfo(Symbol(),MODE_TICKVALUE)),2);
Vielen Dank im Voraus
ausstehende Bestellung
Hallo!
wie verwalte ich schwebende Aufträge? (mit mt4 api)
wenn mein Programm eine TT_ORDER_PENDING_OPEN (Handelsart) erhalten hat
und eine PUMP_UPDATE_ACTIVATION in der Pumping Notification erhalten hat