Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 190

 
zfs:
Ich brauche auch CharToStr, aber es wird nicht kopiert. Ich danke Ihnen.

Lassen Sie es. Wir müssen über verschiedene Dinge sprechen.
 

Bitte geben Sie einen Ratschlag, wie die Funktion zum Schließen von Aufträgen verbessert werden kann, wenn das Eigenkapital den Saldo um einen bestimmten Prozentsatz übersteigt.

Wenn zum Beispiel das Eigenkapital im Moment 115% beträgt, muss ich einige Lots schließen (es kann mehrere Aufträge mit verschiedenen Lots geben), um das Eigenkapital auf 110% des Saldos zu bringen.

 
Skydiver:

Bitte geben Sie einen Ratschlag, wie die Funktion der Auftragsschließung verbessert werden kann, wenn das Eigenkapital den Saldo um einen bestimmten Prozentsatz übersteigt.

Wenn zum Beispiel das Eigenkapital im Moment 115% beträgt, muss ich einige Lots schließen (es kann mehrere Aufträge mit verschiedenen Lots geben), um das Eigenkapital auf 110% des Saldos zu bringen.


Erstellen Sie mehrere Funktionen mit unterschiedlichen Algorithmus-Implementierungen. Vergleichen Sie die Laufzeiten. Von denjenigen, die korrekt funktionieren, wählen Sie diejenige aus, die am kürzesten funktioniert - das ist "besser". Also, nichts Kompliziertes. ;)))))))
 

Mit den Funktionen SetLevelValue und SetLevelStyle ist es möglich, im Indikator Stufen zu setzen und Stile anzupassen , aber ich weiß nicht, wie ich zu deren Beschreibung komme. Vielleicht ist jemand darauf gestoßen und weiß Bescheid?

 
Desead:

Mit den Funktionen SetLevelValue und SetLevelStyle ist es möglich, im Indikator Stufen zu setzen und Stile anzupassen , aber ich weiß nicht, wie ich zu deren Beschreibung komme. Vielleicht ist jemand darauf gestoßen und weiß Bescheid?


Wenn es sich um eine Dokumentation handelt, markieren Sie das Wort in MetEditor und drücken Sie F1. Oder gehen Sie online, z. B:
https://docs.mql4.com/ru/customind/SetLevelStyle
 

Guten Tag. Könnten Sie uns bitte mitteilen, ob eine Bestellung bereits an der richtigen Stelle vorliegt oder nicht?

Wenn nein, dann setzen Sie

 

Guten Tag!

Können Sie mir etwas sagen? Wenn ein Marktauftrag offen ist, kann sein offener Preis mit einer Funktion geändert werden:

bool OrderModify( int ticket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE) 

Frage: Warum brauchen wir sie? So dass die Funktion OrderProfit() später andere Ergebnisse als der ursprüngliche Eröffnungskurs liefern würde? Oder ist diese Möglichkeit für etwas anderes gedacht?

(Berechnet OrderProfit() übrigens genau aus dem Eröffnungskurs oder wird die Information vom Server angefordert, wo sie anders berechnet wird? Die Dokumentation sagt nichts darüber aus).

 
sannin:

Guten Tag. Könnten Sie uns bitte mitteilen, ob eine Bestellung bereits an der richtigen Stelle vorliegt oder nicht?

Wenn nein, dann setzen Sie

Am richtigen Ort - an welchem Ort?
 
yan720:

Guten Tag!

Können Sie mir etwas sagen? Wenn ein Marktauftrag offen ist, kann sein offener Preis mit einer Funktion geändert werden:

Frage: Warum brauchen wir sie? So dass die Funktion OrderProfit() später andere Ergebnisse als der ursprüngliche Eröffnungskurs liefern würde? Oder ist diese Möglichkeit für etwas anderes gedacht?

(Berechnet OrderProfit() übrigens genau aus dem Eröffnungskurs oder wird die Information vom Server angefordert, wo sie anders berechnet wird? Die Dokumentation sagt nichts darüber aus).

Wir können nur den Preis eines schwebenden Auftrags ändern. Der offene Preis der Marktposition kann nicht geändert werden. Es wäre seltsam, Brot für 20 zu kaufen, nach Hause zu kommen und den Kaufpreis auf 5 Rubel zu ändern, und dann in der Brieftasche die Ankunft der 15 Rubel Differenz zu sehen... Fantastisch... ;)

Sie können den Stoppkurs einer Marktposition ändern: Stop Loss und Take Profit.

OrderProfit() gibt den Positionsgewinn/-verlust in der Einzahlungswährung zurück. Er wird natürlich vom Eröffnungspreis berechnet.

 
artmedia70:

Nur der Preis des schwebenden Auftrags kann geändert werden. Der Eröffnungskurs einer Marktposition kann nicht mehr geändert werden. Es wäre seltsam, ein Brot für 20 zu kaufen, nach Hause zu kommen und den Kaufpreis auf 5 Rubel zu ändern, und dann in der Brieftasche die 15 Rubel Differenz zu sehen... Fantastisch... ;)

Sie können den Stoppkurs einer Marktposition ändern: Stop Loss und Take Profit.


Vielen Dank für die Antwort. Ich war selbst überrascht, dass eine solche Frage überhaupt aufkam. Aber vielleicht habe ich das, was ich gesehen habe und was die Frage ausgelöst hat, falsch verstanden.

Ich schaue mir jetzt den Code anderer Leute an, um zu sehen, auf welche Weise (anders als bei mir und vielleicht effizienter) bestimmte Algorithmen implementiert sind. Im Moment schaue ich mir den berüchtigten Ilan 1.6 Expert Advisor (im Anhang) an. Ich kann sehen, dass es aus verschiedenen Teilen zusammengesetzt und dann wieder aufgebaut wurde. Die Zeile 337 enthält jedoch eine benutzerdefinierte Nachlaufstoppfunktion (obwohl das Kennzeichen für ihre Verwendung zu Beginn zwangsweise gelöscht wird). Diese Funktion wird in Zeile 52 aufgerufen.

Meine Frage ergibt sich daraus, dass der oben erwähnte Trailing-Stop offene Aufträge (von denen es mehrere geben kann) durch einen Stop-Loss modifiziert, wobei der ursprüngliche TakeProfit beibehalten wird, aber derselbe Wert (AveragePrice, der in den Zeilen 173 und 178 berechnet wird) für diese Aufträge als offener Preis festgelegt wird (zweiter Parameter der Funktion OrderModify).

Oder wird dieser Parameter (offener Preis) vom Server einfach ignoriert, wenn ein offener Auftrag geändert wird, und der Preis kann auf einen beliebigen Wert gesetzt werden?

Dateien:
ilan1.6.mq4  20 kb