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
Es war schon immer schwierig, schwebende Aufträge zu verwalten. auf mt4 zu. vielleicht versuchen, weg von dem? zum Beispiel, machen virtuelle schwebende Aufträge (nur speichern Sie sie in Variablen und öffnen auf dem Markt, wenn der Preis überschritten hat). Zeit ist jetzt wichtig...
Ich habe keine Zeit... Ich habe gerade den Code debuggt.
zumindest Zeit haben, um einige Tests und Optimierungen durchzuführen
Solche einzelnen Fehler haben keinen Einfluss auf das Schicksal deines EA in der Meisterschaft. Wenn er jedoch in Ermangelung von Geld wiederholt versucht, eine Position zu eröffnen, die Gigabytes in seinem Log erzeugt, wie es bei den letzten Meisterschaften der Fall war, wird er disqualifiziert.
Ich möchte nicht, dass mein EA vom Wettbewerb ausgeschlossen wird, weil er sich auf diese Art von empfohlenen Funktionen verlässt. Aber woher weiß ich dann, wie hoch der zulässige Stop-Level für ein bestimmtes Symbol im Moment ist?
P.S. Ich würde es hassen, die Auswahl mit schrittweiser Erhöhung im Falle eines Fehlers zu verwenden, und die Anzahl der Fehler wird in diesem Fall steigen.Ich habe ein Problem bei der Bestimmung von Stop-Levels für schwebende Aufträge. Wenn der Markt ruhig ist und wir eine Stop-Order auf einem zulässigen Niveau platzieren wollen, funktioniert die Funktion SymbolInfoInteger(SYMBOL_TRADE_STOPS_LEVEL) perfekt; die Orders werden platziert und alle sind zufrieden, auch ich. Wenn der Markt jedoch zu Beginn einer Handelssitzung stark zu schwanken beginnt, funktioniert diese Funktion nicht mehr, es werden keine Aufträge erteilt und das Terminal beginnt, Fehler über ungültige Stops zu erzeugen.
Ich möchte nicht, dass mein EA vom Wettbewerb ausgeschlossen wird, weil er sich auf diese Art von empfohlenen Funktionen verlässt. Aber woher weiß ich dann, wie hoch der zulässige Stop-Level für ein bestimmtes Symbol im Moment ist?
P.S. Ich würde es sehr hassen, eine Auswahl mit schrittweiser Erhöhung im Falle eines Fehlers zu verwenden, und die Anzahl der Fehler würde in diesem Fall steigen.Bei schwebenden Aufträgen tritt der Fehler der ungültigen Stopps auch dann auf, wenn der offene Preis näher am aktuellen Preis liegt.
D.h. Sie müssen nicht nur die Stopps, sondern auch den Eröffnungskurs überprüfen.
Ich glaube, dass es einen Fehler in der Funktion HistoryDealsTotal() gibt, wenn sie nach HistorySelectByPosition() gestartet wird .
Es zeigt immer wieder die Anzahl der Geschäfte gleich 0 an, und das, obwohl eine offene Position besteht (Variante mit mehreren Währungen).
Hier ist der Code:
void GetDealQuantity(string smbl)
{
long pos_id;
int gesamt, Menge=0;
ulong ticket=0; newticket;
PositionSelect(smbl);
pos_id=PositionGetInteger(POSITION_IDENTIFIER);
bool select=HistorySelectByPosition(pos_id);
total=HistoryDealsTotal();
Print(__FUNCTION__," select=",select," total=",total);
for(int i=HistoryDealsTotal()-1;i>=0;i--)
{
newticket=HistoryOrderGetTicket(i);
if(ticket!=newticket) { quantity++; ticket=newticket; }
}
if(smbl==Symbol1) Menge1=Menge;
if(smbl==Symbol2) Menge2=Menge;
Print(__FUNCTION__," Menge=",Menge);
}
Druckt es in das Journal:
2010.01.04 00:20:05 GetDealQuantity select=true gesamt=0
2010.01.04 00:20:05 GetDealQuantity Menge=0
2010.01.04 00:20:05 EURJPY Volumen=0.1 Menge=0
2010.01.04 00:20:05 GetDealQuantity select=true total=1
2010.01.04 00:20:05 GetDealQuantity Menge=1
2010.01.04 00:20:05 AUDUSD Volumen=0.1 Menge=1
Versuchen Sie, den Code korrekt in Ihre Beiträge einzufügen. Versuchen Sie, Ihr Beispiel folgendermaßen zu ändern:
Gibt es irgendwo ein Beispielskript, um das letzte Zitat in die Zwischenablage zu schreiben oder etwas Ähnliches?
Windows-Zwischenablage?
Ich muss in msdn nachsehen, in welcher dll sich die benötigten Funktionen befinden...