Hilfe bei der Codierung - Seite 20

 

Ausgangsbasis MACD

Herr guru, können Sie mir helfen, um diese EA schließen Basis auf MACD Kreuz 0.

Ich habe bearbeiten, aber zu schwierig 4 mich... vielen Dank

Dateien:
1428maplus.mq4  30 kb
 

Ich suche Hilfe beim Schreiben eines Codes ohne Absicherung

Hallo,

Ich hoffe, dass ich etwas Hilfe bei einem Stück Code bekomme. Ich habe eine Unterstützung und Widerstand System und ich versuche, die ea zu bearbeiten, um die Möglichkeit der Absicherung enthalten. (Da ich in den USA lebe und mit einem No-Hedge-Broker bin).

Ich weiß, dass, wenn mein EA aktiviert wird und ich einen offenen Auftrag habe, der gegenüberliegende schwebende Auftrag automatisch gelöscht wird. Das Problem ist, dass ich das System nicht richtig backtesten und optimieren kann, weil der Strategy Tester keine Hedge/No-Hedge-Optionen hat.

Also versuche ich, den Code so zu bearbeiten, dass er diese Option enthält. Offensichtlich muss ich in ein bool setzen und setzen Sie es auf false (die Ive getan), aber ich bin nicht sicher, wo von dort zu gehen.

Der EA ist eine typische Unterstützung/Widerstand EA. Es platziert schwebende Aufträge x Abstand von entweder der Unterstützung oder Widerstand. Wenn sich der Markt beispielsweise in einem Abwärtstrend befindet und meine schwebende Verkaufsorder trifft und in eine Marktorder umwandelt, und sich der Trend dann umkehrt, muss ich schwebende Kauforder löschen (oder schwebende Kauforder verbieten), bis die Verkaufsorder geschlossen ist.

Der EA löscht auch schwebende Aufträge bei einem Verfallstimer und am Ende der eingegebenen Handelszeiten. Ich war mir nicht sicher, ob ich einen Teil des Codes ändern könnte, um das zu tun, woran ich denke.

Hier ist der Code aus dem EA, der die schwebenden Aufträge löscht. Gibt es eine Möglichkeit, diesen Code so zu ändern, dass er das tut, was ich vorhabe, oder kann mir jemand einen Tipp geben, wenn nicht?

void deletebuypending(int magic)

{

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

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol()==Symbol() &&

OrderMagicNumber()==magic &&

OrderType()==OP_BUYSTOP)

{

OrderDelete(OrderTicket());

}

}

}

void deletesellpending(int magic)

{

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

{

OrderSelect(i,SELECT_BY_POS,MODE_TRADES);

if(OrderSymbol()==Symbol() &&

OrderMagicNumber()==magic &&

OrderType()==OP_SELLSTOP)

{

OrderDelete(OrderTicket());

}

}

}

Für jede Hilfe oder jeden Hinweis in die richtige Richtung bin ich dankbar.

 

Danke, dass Sie versucht haben, mir zu helfen (indem Sie mein Thema erneut kommentarlos verschoben haben). Ich habe diesen Thread durchgelesen, aber nichts gefunden, was meine Frage betraf. Ich habe versucht, den Code selbst zu schreiben.

Ich glaube, ich bin irgendwie auf dem richtigen Weg. Ich habe dieses Codestück geschrieben, aber was passiert, ist, dass ausstehende Verkaufsaufträge ( Verkaufsstoppaufträge) gelöscht werden, sobald sie platziert werden, unabhängig davon, ob es einen aktiven Kaufauftrag gibt oder nicht.

Ich hoffe immer noch, dass mir jemand helfen kann.

if (hedge==false)

{

int total = OrdersTotal();

for(m=total-1;m>=0;m--)

{

OrderSelect(m, SELECT_BY_POS);

int type=OrderType();

int type1=OP_BUY;

int type2=OP_BUYSTOP;

int type3=OP_SELL;

int type4=OP_SELLSTOP;

if(type==type2 && type1>0)

{

OrderDelete(OrderTicket());

}

if(type==type4 && type3>0)

{

OrderDelete(OrderTicket());

}

}

}

 

Hallo Gregwendland,

Ich schätze, du kannst sagen, dass dies mein verspäteter Kommentar ist, wir versuchen, die Dinge im Forum einigermaßen organisiert zu halten, und es schien, dass du Hilfe bei der Codierung brauchst, also habe ich dich dorthin verschoben, in den Abschnitt für die Codierungshilfe, der Grund, warum ich nicht kommentiert habe, war, dass ich dachte, dass der Ort, an den ich dich verschoben habe, für sich selbst sprechen würde, und ich konnte keine Hilfe zu deiner Codierungsfrage anbieten, wie auch immer, ich hoffe, du findest jemanden, der dir hilft.

 

Vielen Dank, MrTools.

Ich weiß das zu schätzen. Ich habe verstanden, was Sie mit dem Verschieben meines Themas bezweckten. Ich habe nur keine Antworten in den vorherigen Beiträgen gefunden. Ich arbeite noch daran. Ich glaube, ich habe es jetzt. Es scheint einen aktiven Auftrag zuzulassen und den gegenüberliegenden schwebenden Auftrag zu löschen. Außerdem wird zwischen den beiden Aufträgen gewechselt.

if (hedge==false)

{

int total = OrdersTotal();

for(m=total-1;m>=0;m--)

{

OrderSelect(m, SELECT_BY_POS);

if(OrderType()==OP_BUY)

{

deletesellpending(magic);

}

if(OrderType()==OP_SELL)

{

deletebuypending(magic);

}

}

}

[/PHP]

Now, it sort of brings up another question. The EA places objects and connecting lines to show where an order was opened and closed. With setting up the deletepending this way, My chart actually gets filled with continuous Sell/Buy Stop indicators immediately followed by closing/deleted indicators. This continues until there is no longer an open position.

So, what I'd like to try now is to figure out if I can put in a check at the ordering function to stop a pending order from even being placed. This will create a cleaner chart screen for me.

I know I figured that one out on my own, but I'm still looking for help since I am not very good with programming languages.

This is the Order Function:

[PHP]

if((count(OP_BUYSTOP,magic)+count(OP_BUY,magic))<maxtrades && buy && tpb<tradesperbar && IsTradeAllowed())

{

// -- Taken out coding to shorten post

ticket=OrderSend(Symbol(),OP_BUYSTOP,ilots,resistance+distance*pt,slippage*mt,sl,tp,comment+"Bid: "+DoubleToStr(Bid,5),magic,expire,Blue);

if(ticket<=0)

{

Print("Error Occured : "+errordescription(GetLastError()));

}

else

{

tps++;

Print("Order opened : "+Symbol()+" Buy @ "+Ask+" SL @ "+sl+" TP @"+tp+" ticket ="+ticket);

}

}

if((count(OP_SELLSTOP,magic)+count(OP_SELL,magic))<maxtrades && sell && tpb<tradesperbar && IsTradeAllowed())

{

// -- Taken out coding to shorten post

ticket=OrderSend(Symbol(),OP_SELLSTOP,ilots,support-distance*pt,slippage*mt,sl,tp,comment+"Ask: "+DoubleToStr(Ask,5),magic,expire,Red);

if(ticket<=0)

{

Print("Error Occured : "+errordescription(GetLastError()));

}

else

{

tpb++;

Print("Order opened : "+Symbol()+" Sell @ "+Bid+" SL @ "+sl+" TP @"+tp+" ticket ="+ticket);

}

}

Ich dachte, wenn ich etwas wie && OP_SELL==false (oder OP_BUY==false im Abschnitt für Verkaufsaufträge ) eingebe. Ist das die richtige Idee?

 

Balkenzähler für MT4 - IndikatorZähler

Hallo an alle.

Dies ist mein erster Beitrag.

Ich brauche Hilfe von jedem, der kann.

Ich habe meinen ersten MT4 EA mit einem Code-Generator entwickelt und ihn nach dem Kompilieren modifiziert und ich versuche:

1. Nach Entry den Handel nach z.B. 15 Bars zu beenden.

2. Die Anzahl der Bars, nach denen der Handel beendet werden soll, kann in der Sektion "extern int" geändert werden.

Der EA handelt mit den angegebenen RSI-Parametern und verlässt den Handel derzeit mit TP, SL und TS (Trailing Stop).

Ich würde gerne auch aussteigen, wenn z.B. 10 oder 15 Balken verstrichen sind.

Ich habe alles versucht, aber es funktioniert nicht.

Ich wäre wirklich dankbar, wenn mir jemand helfen könnte, bitte.

Ich habe den EA angehängt, damit jeder einen Blick darauf werfen kann.

Prost und beste Grüße

cj

Dateien:
 
freefreecj:
Hallo an alle.

Dies ist mein erster Beitrag.

Ich brauche Hilfe von jedem, der kann.

Ich habe meine erste MT4 EA mit einem Code-Generator plus modifizieren es nach dem Kompilieren und ich versuche zu entwickeln:

1. Nach dem Einstieg den Handel nach z.B. 15 Bars zu beenden.

2. Die Anzahl der Bars, nach denen der Handel beendet werden soll, kann in der Sektion "extern int" geändert werden.

Der EA handelt mit den angegebenen RSI-Parametern und verlässt den Handel derzeit mit TP, SL und TS (Trailing Stop).

Ich würde gerne auch aussteigen, wenn z.B. 10 oder 15 Balken verstrichen sind.

Ich habe alles versucht, aber es funktioniert nicht.

Ich wäre wirklich dankbar, wenn mir jemand helfen könnte, bitte.

Ich habe den EA angehängt, damit jeder einen Blick darauf werfen kann.

Prost und beste Grüße

cj

Hallo Cj,

Ich habe dich hierher verschoben. Hoffentlich findest du hier in diesem Thread eine Lösung oder jemand kommt vorbei und hilft dir.

 

Danke MrTools

Danke MrTools

 

Hallo zusammen,

Ich benötige einen Indikator, der einen Ton und eine Boxwarnung ausgibt für

a) Kaufen, wenn Low über 34 EMA von Highs nach oben kreuzt

b) Verkaufen, wenn das Hoch die 34 EMA des Tiefs nach unten kreuzt

Kann mir bitte jemand helfen?

Jede Art von Hilfe wird sehr geschätzt.

Vielen Dank im Voraus

Grüße

Sahilsri

 

...

Mladen ... warum Squize MA zeigt nicht Bands, wo Pfeil ist ... zu meinem Verständnis hat es zu zeigen, Bands, wenn MAs kommen innerhalb einer bestimmten Entfernung zueinander?

Dateien:
a.tpl  2 kb
a_2.jpg  161 kb