Wie programmiert man? - Seite 59

 

Hallo zusammen..

wie kann ich einen Ordercode im Metaeditor einstellen,

ich benutze ein Demo-Konto... ist es möglich, einen Auftrag im Demo-Konto zu setzen

ich habe es versucht, aber es ist fehlgeschlagen

 

BE-Parameter

Hallo.

Ich brauche Hilfe, um BE-Stop-Parameter in diesem EA hinzufügen please.This EA Ich habe es von der ersten Seite dieses Threads, die Basis auf Trendmanager System.

Vielen Dank im Voraus.

Cha.

e-trendmanager.mq4

Dateien:
 

MQ4-Datei bitte

Hallo.
Ich habe diese TrendmanagerEA Textdatei.Könnte jemand bitte in eine MQ4 Datei konvertieren.Ich werde sie testen und mit einem anderen EA vergleichen.

Vielen Dank im Voraus.

Cha.

#property copyright "Copyright ฉ 2006, www.easyforexsignals.com"

#property link "paul@easyforexsignals.com"

#define LONGCOLOR DodgerBlue

#define SHORTCOLOR OrangeRot

#define MAGICTM 20070610

extern double TMlots=0.1;

extern int MoveStopAmount = 20;

extern int MoveStopAfterProfitof = 55;

extern int minadxlevel = 20;

extern double minSolarWind = 0.25;

extern double minJuice = 0,001;

extern int StopLoss=50,

Slippage=3,

TakeProfit=120;

datetime LastTMSignalTime;

extern int MinTimeBetweenSignals = 60;

int init(){

return(0);

}

int deinit(){

return(0);

}

int start()

{

int res= 0;

if(Bars<100 || IsTradeAllowed()==false) return;

CheckTrendManager(); // Überprüfung des Trendmanagementsystems

CheckForTMClose(); // prüft, ob dieses System geschlossen wurde

CheckForStopMove(); // verschiebt Stops bei allen offenen Geschäften

}

void CheckForStopMove() {

for(int i=0;i<OrdersTotal();i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;

if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) weiter;

if(OrderType()==OP_BUY)

{

// Stopps nach oben ziehen, um Gewinn zu sichern

if ((OrderOpenPrice()-Ask) >= (MoveStopAfterProfitof * Point())) {

OrderModify(OrderTicket(),0,OrderOpenPrice()+(MoveStopAmount*Point),OrderTakeProfit(),0,Black);

}

}

if(OrderType()==OP_SELL)

{

// Stops nach oben verschieben, um den Gewinn zu sichern

wenn ((OrderOpenPrice() - Bid) >= (MoveStopAfterProfitof * Point())) {

OrderModify(OrderTicket(),0,OrderOpenPrice()-(MoveStopAmount*Point),OrderTakeProfit(),0,Black);

}

}

}

}

void CheckTrendManager() {

if (Time[0]-LastTMSignalTime > MinTimeBetweenSignals) {

double PipsStopLoss, PipsTakeProfit;

double TMbuy = iCustom(Symbol(),Zeitraum(), "TrendManagerNT",2, 0);

double TMsell = iCustom(Symbol(),Zeitraum(), "TrendManagerNT",3, 0);

int Auftragsergebnis;

if (TMbuy > 0) {

if (CheckFilters(OP_BUY)==true) {

PipsStopLoss = Ask-(StopLoss * Point());

PipsTakeProfit = Ask+(TakeProfit * Point());

CloseExisting(OP_SELL);

orderresult =OrderSend(Symbol(),OP_BUY,TMlots,Ask,Slippage,PipsStopLoss, PipsTakeProfit,"",MAGICTM,0,Maroon);

Print(Time[0] + "BUY ON TM,order result was :" + orderresult + "stop:" + PipsStopLoss + ",TakeProfit:" + PipsTakeProfit);

LastTMSignalTime = Time[0];

}

}

wenn (TMsell > 0){

wenn (CheckFilters(OP_SELL)==true) {

PipsStopLoss = Bid+(StopLoss * Point());

PipsTakeProfit = Bid-(TakeProfit * Point());

CloseExisting(OP_BUY);

orderresult = OrderSend(Symbol(),OP_SELL,TMlots,Bid,Slippage,PipsStopLoss,PipsTakeProfit,"",MAGICTM,0,Green);

Print(Time[0] + "SELL ON TM, Orderergebnis war:" + orderresult + "stop:" + PipsStopLoss + ",TakeProfit:" + PipsTakeProfit);

LastTMSignalTime = Time[0];

}

}

}

}

void CheckForTMClose() {

double TMclosesell = iCustom(Symbol(),Zeitraum(), "TrendManagerNT",4, 0);

double TMclosebuy = iCustom(Symbol(),Periode(), "TrendManagerNT",5, 0);

for(int i=0;i<OrdersTotal();i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;

if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) continue;

//---- einfach schließen

if ((TMclosesell > 0) && (OrderType()==OP_SELL)) {

OrderClose(OrderTicket(),OrderLots(),Bid,10,Pink);

}

if ((TMclosebuy > 0) && (OrderType()==OP_BUY)) {

OrderClose(OrderTicket(),OrderLots(),Bid,10,Pink);

}

}

}

// Schließt einfach alle bestehenden Positionen

void CloseExisting(int OrderTyp)

{

for(int i=0;i<OrdersTotal();i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;

if(OrderMagicNumber()!=MAGICTM || OrderSymbol()!=Symbol()) continue;

//---- einfach schließen std slippage

if(OrderType()==OrderTyp)

{

OrderClose(OrderTicket(),OrderLots(),Bid,10,White);

}

}

}

bool CheckFilters(int OrderTyp) {

return(true);

}

 

Benennen Sie einfach die Datei mit der Erweiterung .mq4 um. Das war's schon.

 

Hallo.

Ich versuche es zu ändern, aber es funktioniert nicht, können Sie es bitte für mich beenden?

Danke!

Cha.

 
chawichsak:
Hallo.

Ich habe versucht, es zu ändern, aber es funktioniert nicht.

Danke!

Cha.

Erledigt plut ein paar Fehler im Code behoben.

Robert

Dateien:
 

Hilfe für ordeersend Funktion benötigt

Hallo zusammen,

ich habe Probleme mit der Funktion ordersend().

Hier ist der Code, den ich gemacht habe:

int x = 1;

int init()

{

return(0);

}

int deinit()

{

return(0);

}

int start()

{

double prixdachat = MathMax(High[1],High[2]);

double prixdevente = MathMin(Low[1],Low[2]);

int ticket1,ticket2;

if (x==1)

{

ticket1=OrderSend(Symbol(),OP_BUY,1,prixdachat+10*Point,5,prixdachat,prixdachat+20*Point, "ordre",1,15,Green);

ticket2=OrderSend(Symbol(),OP_SELL,1,prixdevente-10*Point,5,prixdevente,prixdevente-20*Point, "ordre",2,15,Red);

Print("order launched");

x++;

if(ticket1<0)

{

Print("OrderSend 1 failed with error #",GetLastError());

return(0);

}

if(ticket2<0)

{

Print("OrderSend 2 failed with error #",GetLastError());

return(0);

}

}

return(0);

}

Mit diesem Code erhalte ich den Fehler #130 (Fehler stoppt)

Kann mir jemand erklären, was falsch ist, ich verstehe es nicht...

danke.

 

Wenn Sie die so genannte"Instant Execution" verwenden, d.h. die Verwendung von OP_BUY- oder OP_SELL-Aufträgen, können Sie keinen anderen Einstiegskurs als Ask für Buys und Bid für Sells angeben.

 
fracte:
Hallo zusammen,

ticket1=OrderSend(Symbol(),OP_BUY,1,prixdachat+10*Point,5,prixdachat,prixdachat+20*Point, "ordre",1,15,Green);

ticket2=OrderSend(Symbol(),OP_SELL,1,prixdevente-10*Point,5,prixdevente,prixdevente-20*Point, "ordre",2,15,Rot);

Mit diesem Code erhalte ich die Fehlermeldung #130 (Fehler bleibt stehen)

Kann mir jemand erklären, was falsch ist, ich verstehe es nicht...

danke.

PENDING ORDERS STATT INSTANT ORDERS VERWENDEN.

(z.B. ändern Sie OP_BUY FOR OP_BUYSTOP und OP_SELL FOR OP_SELLSTOP)

und es wird gut sein.

 

VIELEN DANK, HERR PIP,

CHA.

Grund der Beschwerde: