Diskussion zum Artikel "Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil IV)." - Seite 2

 
BmC:

Artem, zuallererst. zuallererst. Ich möchte mich ganz herzlich für die Artikelserie und die Bibliothek bedanken. Ich habe alles über OOP verstanden, indem ich deine Artikel gelesen habe! Deine Artikel sind wirklich lehrreich und helfen denen, die es brauchen, sie haben mir geholfen. Ihre Verwendung verschiedener Algorithmen an denselben Stellen, an denen Sie sich nur wiederholen könnten, ist ebenfalls sehr erfolgreich.

Wenn ich nun zum Punkt kommen darf: ::GetListByTime - in dieser Methode wählt man Aufträge nach Zeitintervall aus, um die Liste an das aufrufende Programm zu übergeben, in Teil 3 schreibt man das:

...

Danke für die Rückmeldung.

Sie sollten auf jeden Fall die Methode Sort() vor jeder Suche nach einer Eigenschaft aufrufen. Die Sortiermethoden sind in den Listen der möglichen Kriterien für die Sortierung von Objekten in Defines.mqh angegeben. Und sie müssen beim Aufruf der Sort()-Methode angegeben werden, falls Sie nach einer von mehreren Sortierarten sortieren müssen. Im Klassenkonstruktor wird nur der Standardsortierungstyp festgelegt, aber bei der Suche nach einer Eigenschaft muss diese Eigenschaft in der Methode Sort(THIS_THERE_NEW_SORTING_THYPE_SORTING) angegeben werden - damit die Liste genau nach der angegebenen Eigenschaft sortiert wird.

PS. Der Code wird mit Alt+S im Nachrichteneditor eingefügt:


 
Artyom Trishkin:

Vielen Dank für das Feedback.

Die Methode Sort() muss vor jeder Suche nach einer Eigenschaft aufgerufen werden. Die Sortiermethoden werden in den Listen der möglichen Kriterien für die Sortierung von Objekten in Defines.mqh angegeben. Und sie müssen beim Aufruf der Sort()-Methode angegeben werden, falls Sie nach einer von mehreren Sortierarten sortieren müssen. Im Klassenkonstruktor wird nur der Standardsortierungstyp festgelegt, aber bei der Suche nach einer Eigenschaft muss diese Eigenschaft in der Methode Sort(THIS_THERE_NEW_SORTING_THYPE) angegeben werden - damit die Liste genau nach der angegebenen Eigenschaft sortiert wird.

PS. Der Code wird mit Alt+S im Nachrichteneditor eingefügt:


DANKE!

Sie haben gemerkt, dass ich mir sehr viel Mühe gegeben habe, den Code umzusetzen.)))))

 
BmC:

DANKE!

Sie haben erkannt, dass ich mir große Mühe gegeben habe, den Code zu übertragen. )))))

Ja :)

 

Hallo Gott!

Kannst du mir bitte sagen: wie findet EA den größten Verlust von insgesamt 88 Aufträgen in einer Multispezies-Auftragsliste. Das heißt, den Auftrag mit dem kleinsten Gewinn. Und die Auftragsnummer zurückgeben? Ich freue mich auf Ihren Rat! Ich danke Ihnen! WeChat.QQ: 1041327590. Mobiltelefon: 13276899818

 
wts130196910 :

Hallo Gott!

Kannst du mir bitte sagen: wie findet EA den größten Verlust von insgesamt 88 Aufträgen in einer Multispezies-Auftragsliste heraus. Das heißt, die Order mit dem kleinsten Gewinn. Und die Auftragsnummer zurückgeben? Ich freue mich auf Ihren Rat! Ich danke Ihnen! WeChat.QQ: 1041327590. Mobiltelefon: 13276899818

Wie versuchst du, das mit einer Bibliothek selbst zu machen? Bitte zeige deinen Code.

Как вы сами это пытаетесь сделать с помощью библиотеки? Покажите ваш код пожалуйста.

 
Es scheint, dass bei der Anpassung des Preises einer Stop-Order (BUY STOP) in Verbindung mit StopLevel auch SL/TP neu berechnet und auf den Mindestabstand gesetzt werden.... Für den Buy Stop zum aktuellen Preis, der nicht dem StopLevel entspricht, wird nach der Neuberechnung des Preises der Order der SL auf den gleichen Abstand wie bei der ursprünglichen Anfrage neu berechnet..... Das bedeutet, dass das Preisniveau des Kaufstopps höher angesetzt wurde und das SL-Niveau höher angesetzt wurde. Ist es möglich, irgendwie den Modus einzuschalten, der den Eröffnungskurs korrigiert, aber die ursprünglichen Stops nicht berührt. Die Stops werden nur berührt, wenn ihr ursprünglicher Wert nicht dem StopLimit/Freezelevel entspricht.
 
setzt sie auf einen Mindestabstand
nicht auf einen Mindestabstand, sondern auf den Abstand der ursprünglichen Bestellung.
 
leonerd:
Es scheint, dass bei der Anpassung des Preises einer Stop-Order (BUY STOP) in Verbindung mit StopLevel auch SL/TP neu berechnet und auf den Mindestabstand gesetzt werden.... Für den Buy Stop zum aktuellen Preis, der nicht dem StopLevel entspricht, wird nach der Neuberechnung des Preises der Order der SL auf den gleichen Abstand wie bei der ursprünglichen Anfrage neu berechnet..... Das bedeutet, dass das Preisniveau des Kaufstopps höher angesetzt wurde und das SL-Niveau höher angesetzt wurde. Ist es möglich, irgendwie den Modus einzuschalten, der den Eröffnungskurs korrigiert, aber die ursprünglichen Stops nicht berührt. Die Stops werden nur berührt, wenn ihr ursprünglicher Wert nicht dem StopLimit/Freezelevel entspricht.
Die Bibliothek versucht, den Auftrag und seine Stop-Levels zu setzen. Es ist besser, die Stop-Levels zu überwachen und sie nach dem erfolgreichen Setzen anzupassen. Denn es gibt viele verschiedene Bedürfnisse, und es ist unmöglich, sie alle zu berücksichtigen. Außerdem kann das Niveau der Einstellung auch später noch angepasst werden.
 
Artyom Trishkin:
Die Bibliothek versucht, den Auftrag und seine Stop-Levels zu platzieren. Es ist besser, die Stop-Levels zu überwachen und sie nach dem erfolgreichen Setzen anzupassen. Denn es gibt viele verschiedene Bedürfnisse, und es ist unmöglich, sie alle zu berücksichtigen. Außerdem kann das Niveau der Einstellung auch später noch angepasst werden.

Ja, ich verstehe. Es wäre gut, ein Anpassungskennzeichen hinzuzufügen. So könnte das Flag gesetzt werden, um in Verbindung mit StopLevel zu korrigieren oder nicht. Ich möchte den Code nicht ändern, dann ist bei der Aktualisierung alles verloren. Danke!

 
leonerd:

Ja, ich verstehe. Es wäre gut, ein Anpassungsflag hinzuzufügen. So dass das Flag in Verbindung mit StopLevel korrigiert werden könnte oder nicht. Ich möchte den Code nicht ändern, dann wäre bei der Aktualisierung alles verloren. Ich danke Ihnen.

Sie sollten die Logik in Ihrem Programm schreiben und nicht den Bibliothekscode ändern. Ich werde jedoch über den Vorschlag nachdenken. Aber ich kann kaum schnell darauf zurückkommen, um es zu machen.