Fragen Sie! - Seite 134

 
bakhul:
Könnte mir jemand hier helfen, diesem Filter einen Alarm hinzuzufügen, wenn er den Wert 0 überschreitet oder die Farbe ändert?

Vielleicht haben Sie mehr Glück, wenn Sie hier posten: https://www.mql5.com/en/forum

 

Wie viele offene Kauf- und Verkaufsaufträge von EA gibt es derzeit?

Ich bin gerade 134 Seiten durchgegangen, in der Hoffnung, dass jemand diese Frage bereits beantwortet hat. Aber ich hatte kein Glück...

Nachdem ich jede Art von Crossover-, Pivot-Punkt-, ATR-Bereichs- und Breakout-Strategie, die ich mir vorstellen kann, mit den Hunderten von verschiedenen Indikatoren, die ich habe, erstellt und optimiert habe, wurde mir klar, dass ein vollwertiger automatischer EA tonnenweise Variablen benötigt. Ich erkannte, dass eine vollwertige automatisierte EA braucht Tonnen von Variablen, die Sie brauchen, um für Code. Also beginne ich stattdessen, benutzerunterstützte Expert Advisors zu erstellen. Nun zu den Fragen, um die es geht...

Welcher Code kann verwendet werden, um zu zählen, wie viele offene Kauf- und wie viele offene Verkaufsaufträge der EA derzeit im Markt offen hat.

Ich möchte nicht, dass er zählt, wie viele offene Aufträge es insgesamt gibt, weil ich auch Aufträge auf dem gleichen Konto platzieren werde, um die aktuellen Aufträge auszugleichen, die der EA platziert hat.

Schließlich möchte ich Filter einrichten, die das Verhältnis von Kauf- und Verkaufsaufträgen zu Absicherungszwecken ändern.

 

Ein wenig Hilfe bitte...

Hallo an alle,

Ich habe dies ursprünglich als neuen Thread gepostet, aber es wurde in einen anderen Programmierthread verschoben (ich habe übrigens keine Einwände gegen die Verschiebung) und scheint nun aufgrund der Menge an Postern in diesem Thread verloren gegangen zu sein.

Vielleicht kann mir hier jemand helfen?

Ich habe meinen ersten EA nach fast 7 Tagen Versuch und Irrtum, Ausschneiden und Einfügen und stundenlanger Recherche fast fertiggestellt....

Kann mir bitte jemand sagen, wie man eine Exit- oder Stop-Funktion in einen EA einbaut?

Ich möchte, dass der EA alle laufenden und schwebenden Geschäfte löscht und nach Erreichen eines Eigenkapitals von 10.000 aussteigt. Unten sehen Sie den Teil des Codes, den ich bisher verwendet habe:

bool StopTrade;

int total = OrdersTotal(), cnt = 0, ExitAtEquity=10000;

for (cnt = total ; cnt >=0 ; cnt-- )

{

OrderSelect(0,SELECT_BY_POS,MODE_TRADES);

if (AccountEquity ()== ExitAtEquity)//(TimeCurrent()- OrderOpenTime() >= ActiveMinutes*60 )

{if(OrderType()==OP_BUY)

OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);

if(OrderType()==OP_SELL)

OrderClose(OrderTicket(),OrderLots(),Ask,3,Red);

if(OrderType()>OP_SELL)

OrderDelete(OrderTicket());

StopTrade=true;}

}

if (dclose==dopen && OrdersTotal() < ConcurrentTrades && StopTrade != true)

Wie Sie sehen können, prüft der EA die Equity und setzt dann den bool-Wert der StopTrade-Variable auf true. Der EA bestätigt dann den Befehl und verarbeitet einen Zyklus lang nichts unter StopTrade != true, aber dann wird der bool-Wert der StopTrade-Variable zurückgesetzt und der Handel wird fortgesetzt, denke ich.

Erstens: Gibt es eine Möglichkeit, wie ich das, was ich brauche, auf die Art und Weise, wie ich es tue, erreichen kann?

Zweitens: Gibt es eine Funktion, mit der ich dem EA einfach sagen kann, dass er aufhören soll?

Für jede Hilfe bin ich dankbar.

NB.

cutzpr - How Many Currently open Buy, and Sell Orders from EA

Ich denke, ein Teil meines Codes kann Ihnen helfen, was Sie brauchen.

 

Nun, ich hatte gedacht, dass eine Schleife, die Zyklus warf alle offenen Aufträge wäre ein Anfang, aber ich wüsste nicht, was zu sagen, die EA, so dass es nur auf die Aufträge, die von der EA und ignorieren die Aufträge, die ich in manuell setzen wird. Danke!

 

Magische Zahl

cutzpr - Sie müssen eine magische Zahl verwenden und dann etwas wie das folgende verwenden:

for (cnt=Gesamt;cnt>=0;cnt--)

{

OrderSelect(0,SELECT_BY_POS,MODES_TRADES);

if (OrderMagicNumber()==yourmagicnumber)

{if(OrderType()==OP_BUY)

 

Wenn ich mir den Code ansehe, kommt mir das folgende Stück Code in den Sinn. Ich bin mir nicht sicher, ob er richtig codiert ist. Ich habe Folgendes eingerichtet

int MaxLong=5,MaxShort=5;

extern double Magic=10000;

extern int MaxOpenOrders=10;

also...

if (b<=MaxLong)

{Handel

}

if (s<=MaxShort)

{Handel

}

Aber der EA sendet immer noch den maximalen Kauf und den maximalen Verkauf aus. Anstatt zu zählen, wie viele Aufträge es von jedem gibt und sich auf die MaxLong und Short zu beschränken. Ich weiß, dass etwas mit dem Code nicht stimmt, aber ich kann es nicht sehen.

for (int cnt = total ; cnt >=0 ; cnt-- )

{

OrderSelect(0,SELECT_BY_POS,MODE_TRADES);

if (OrderMagicNumber()==Magic)

{if(OrderType()==OP_BUY)

{

b++; // add order to Long Quantity

if(TP != 0)

{

if(b!= 0)

{

if(Bid >= ((OrderOpenPrice()+TP*Poin)+Spread))

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Green); // Long position closed.

CMT=OrderCloseTime();

b--; // Long Order closed. Remove one order from total Longs

return(0);

}

}

}

}

if (OrderMagicNumber()==Magic)

{if(OrderType()==OP_SELL)

s++; // Add one to Short order Quantity

if (TP != 0)

{

if(s!= 0)

{

if(Ask <= ((OrderOpenPrice()-TP*Poin)+Spread))

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Green); // Short position closed.

CMT=OrderCloseTime();

s--; // Short Order Closed. Remove one order from total shorts

return(0);

}

}

}

}

}
 
cutzpr:
Wenn ich mir den Code anschaue, dann habe ich dieses Stück Code unten hervorgezaubert. Ich bin mir nicht sicher, ob es richtig codiert wurde. Ich richte ein

int MaxLong=5,MaxShort=5;

extern double Magic=10000;

extern int MaxOpenOrders=10;

also...

if (b<=MaxLong)

{Handel

}

if (s<=MaxShort)

{Handel

}

Aber der EA sendet immer noch den maximalen Kauf und den maximalen Verkauf aus. Anstatt zu zählen, wie viele Aufträge es von jedem gibt und sich auf die MaxLong und Short zu beschränken. Ich weiß, dass etwas mit dem Code nicht stimmt, aber ich kann es nicht sehen.

Ich denke, dass Sie die Dinge zu sehr verkomplizieren. Versuchen Sie, statt einer großen Funktion einige kürzere Codeteile zu verwenden. Das sollte Ihnen einen Anhaltspunkt geben:

int totalOrders(int type)

{

int totalNumber = 0;

for (int cnt = total ; cnt >=0 ; cnt-- )

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES);

if (OrderMagicNumber() == Magic && OrderType() == type) totalNumber++;

}

return(totalNumber);

}

[/CODE]

AND HERE IS EXAMPLE HOW YOU CAN USE IT

[CODE]

int totalBuy = totalOrders(OP_BUY);

int totalSell = totalOrders(OP_SELL);

if( (totalBuy + totalSell) < MaxOpenOrders)/*TOTAL NUMBER OF ORDERS WASN'T REACHED*/

{

if(totalBuy <= MaxLongOrders)

{

//OPENING LONG IS PERMITED

}

if(totalSell <= MaxShortOrders)

{

//OPENING SHORT IS PERMITED

}

}

 

[ASK] Indikator "SilverTrend_Signal"

Ich bin ein Anfänger in Forex und mql4 Programmierung. Ich habe einen Indikator SilverTrend_Signal (ich anhängen hier) und

ich möchte einen EA aus diesem Indikator machen, aber ich habe ein Problem mit diesem Indikator, das Signal kann sich

in der gleichen Bar, wie der Aufwärtstrend Signal Pfeil erscheinen in der Tabelle dann kann verschwinden und vielleicht

im selben Balken zum Abwärtstrend-Signalpfeil wechseln. Kann mir jemand helfen, dieses Problem zu lösen?

Ich verwende diesen Indikator in der Zeitperiode M1 und EU.

Ich danke Ihnen vielmals.

(Es tut mir leid, mein Englisch ist nicht gut genug)

Dateien:
 

Ich persönlich bin der Meinung, dass Sie sich von Indikatoren fernhalten sollten, die für Signale neu gemalt werden. Vor allem auf dem M1-Chart. Die Signale werden sich zu oft ändern. Sie sind nur fragen für nicht-stabilen Signale und Ärger. Die Vergangenheit sieht gut aus, weil es die Vergangenheit ist.

 
willya:
Ich bin ein Anfänger in Forex und mql4 Programmierung. Ich habe einen Indikator SilverTrend_Signal (ich anhängen hier) und

Ich möchte einen EA aus diesem Indikator machen, aber ich habe ein Problem mit diesem Indikator, das Signal kann sich ändern

das Signal kann sich im selben Balken ändern, z.B. der Aufwärtstrend-Signalpfeil erscheint im Diagramm und kann dann verschwinden und vielleicht

im selben Balken zum Abwärtstrend-Signalpfeil wechseln. Kann mir jemand helfen, dieses Problem zu lösen?

Ich verwende diesen Indikator in der Zeitperiode M1 und EU.

Herzlichen Dank.

(Es tut mir leid, mein Englisch ist nicht gut genug)

Ich bin mir nicht sicher, wie dieser Indikator neu gezeichnet wird, aber wenn er dies NUR auf dem aktuellen Balken tut, dann ist es in Ordnung, das Signal beim (bestätigten) Balkenschluss zu verwenden.

Wenn es mehr als die aktuelle Bar repaints, so können Sie vergessen, sein Signal für einen EA zu verwenden.

FerruFx

Grund der Beschwerde: