Hilfe bei der Codierung - Seite 359

 
apprentice coder:
Wie kann ich geschlossene Aufträge (mit all ihren Informationen) in absteigender Reihenfolge der Schließungszeit sortieren?

Sie müssen ein 2-dimensionales Array erstellen, das mit der Schlusszeit und den Ticketnummern gefüllt wird, und es dann sortieren. Da Metatrader jedoch nicht in der Lage ist, 2 oder mehrdimensionale Arrays zu sortieren, müssen Sie auch eine benutzerdefinierte Sortierprozedur für dieses 2-dimensionale Array erstellen (jeder beliebige Sortieralgorithmus ist geeignet: Ich gehe davon aus, dass Sie nicht Tausende von geschlossenen Aufträgen haben werden).

 
mladen:
Sie müssen ein 2-dimensionales Array erstellen, das mit den Schlusszeiten und Ticketnummern gefüllt wird, und es dann sortieren. Da Metatrader jedoch keine 2 oder mehrdimensionalen Arrays sortieren kann, müssen Sie auch eine benutzerdefinierte Sortierprozedur für dieses 2-dimensionale Array haben (jeder beliebige Sortieralgorithmus genügt: Ich gehe davon aus, dass Sie nicht Tausende von geschlossenen Aufträgen haben werden).

Gibt es ein Beispiel für eine solche Sortierfunktion?

 

Hallo Mladen und Mastercash,

Ich habe sowohl das Original als auch Mladens Update zum Laufen gebracht... aber ich habe nichts Besonderes gemacht... ich habe einfach die Standardeinstellungen verwendet, wie ich schon sagte... (mit Build 670, falls das hilft).

Und Mladens überarbeitetes Check-Snippet scheint zu funktionieren... mit der Begrenzung auf 1 Trade auf dem aktuellen Bar...

Allerdings gibt es andere Probleme mit dieser EA-Vorlage, weshalb ich vorgeschlagen habe, den Indikator und die Strategie auf eine neue EA-Vorlage zu portieren.

Hier ist, was ich gesehen habe...als Beispiel...

Beide Versionen lösen einen Handel aus (z. B. einen Kauf), aber die Bedingung für den Kauf scheint nie aufgehoben zu werden, und der Handel wird mit derselben Kauf-Bedingung fortgesetzt, selbst wenn sich die Bedingung (Kreuzung) in einen Verkauf ändert...

Wenn also ein Buy ausgelöst wurde, ist der gesamte Testlauf ein einziger Buy, egal wie oft sich die EMAs kreuzen. Das Gleiche gilt für Sell's... Es scheint die gleiche Bedingung zu bleiben, egal was passiert.

Ich kann einen Screenshot posten, wenn das hilfreich ist... aber es ist vielleicht besser, einfach mit einer neuen EA-Vorlage zu beginnen.

Ich hoffe, das hilft Ihnen beiden,

Robert

PS - Zu Testzwecken.... habe ich die Handelsbedingungen auf die EMA-Kreuzungen gekürzt... um einfacher und schneller zu sehen, wie die Trades funktionierten. Ich habe nicht überprüft, ob die anderen Handelsbedingungen irgendwelche Probleme verursachen...aber die EMA-Kreuzungen gaben mir genug Trades, um zu sehen, wie dieser EA funktioniert (wie oben erklärt)...

 

Mastercash und Mladen....

Ich bin vorgegangen und habe ein paar Screenshots gemacht, um die Handelsbedingungen für diesen EA zu zeigen...

Sie können deutlich sehen, die "all Buys" und "all Sells"...

Ich verstehe den Handelscode-Block nicht ganz und warum er immer ein (-1) zurückgibt... aber irgendetwas hält die Handelsbedingungen gleich...

Deshalb schien es einfacher und besser, einfach eine neue EA-Vorlage zu empfehlen...

Die Handelsbeispiele sind angehängt und ich hoffe, sie helfen bei der Suche nach den Lösungen, um die Probleme zu beheben.

Robert

 

Cosmiclifeform

das war meine Erfahrung mit der Vorlage....die von mladen bearbeitete Vorlage wird in meinem Chart überhaupt nicht gehandelt.

cosmiclifeform:
Mastercash und Mladen....

Ich habe ein paar Screenshots gemacht, um die Handelsbedingungen für diesen EA zu zeigen...

Sie können deutlich die "all Buys" und "all Sells" sehen...

Ich verstehe den Handelscode-Block nicht ganz, und warum er immer eine (-1) zurückgibt... aber irgendetwas hält die Handelsbedingungen gleich...

Deshalb schien es einfacher und besser, einfach eine neue EA-Vorlage zu empfehlen...

Die Handelsbeispiele sind angehängt und ich hoffe, sie helfen bei der Suche nach den Lösungen, um die Probleme zu beheben.

Robert

 
Mastercash:
Cosmiclifeform das war meine Erfahrung mit dem Template....das von mladen bearbeitete funktioniert in meinem Chart überhaupt nicht.

Und bei meinen Tests wird keine der beiden Versionen gehandelt. Weder die ursprüngliche noch die geänderte Version (ich verwende normalerweise 1 Minute EURUSD für schnelle Tests, und es wurde überhaupt keine Order geöffnet - keine Fehlermeldungen, keine Warnungen. keine geöffneten Orders überhaupt, unabhängig von der Version, die ich verwendet habe)

Leute, dieser EA hat mir gerade gezeigt, dass der Metatrader-Compiler mehr Fehler hat, als ich dachte: prüft die Zeilen 39 bis 49 - sie sind dort bedeutungslos, völlig bedeutungslos (der Aufruf von iMA() außerhalb des Körpers einer Funktion ist alles andere als normal - und der Compiler hat überhaupt keine Warnung ausgegeben)

_______________________________

Wenn der Code aus dieser Zeile in die Funktion check_signal() verschoben wird, werden sowohl Long- als auch Short-Positionen eröffnet :):)

 

Ergebnisse, wenn diese Zeilen in die Funktion check_signal() verschoben werden:

Wenn diese Zeilen in die gleiche Funktion im ursprünglichen EA verschoben werden, beginnt er auch zu handeln

Dies ist der EA, der mit dem obigen Beispiel getestet wurde: nicetrader_1.02.mq4

Dateien:
 

Mladen,

das Original, das ich gesendet wurde, war Handel zu machen, aber wenn es Handel eingeben, sagen Sie kaufen auf EURUSD, es wird weiterhin, dass BUY auf EURUSD zu nehmen, auch wenn die Kaufbedingung ist über.....Das ist es wieder unten angehängt.

mladen:
Mastercash

Diese EA ist nicht öffnen, um, auch wenn diese Prüfung ausgelöst wird (so dass, wenn der Teil des Codes, die hinzugefügt wurde, um es entfernt wird es immer noch nicht öffnen Aufträge). Auch der von Ihnen gepostete EA (das Original) öffnet keine Orders, wenn er getestet wird.

Hat die von Ihnen gepostete Version überhaupt jemals gehandelt?
Dateien:
nicetrader.mq4  26 kb
 
Mastercash:
Mladen, das Original, das ich geschickt habe, war "make trade", aber wenn es einen Handel eingeht, z.B. "buy" auf EURUSD, wird es diesen KAUF auf EURUSD fortsetzen, auch wenn die Kaufbedingung vorbei ist ...... Hier noch einmal im Anhang.

Mastercash

Das ist nicht der, der hier gepostet wurde: https: //www.mql5.com/en/forum/174385/page239 (überprüfen Sie ihn und Sie werden sehen, dass sie unterschiedlich sind - es gibt keinen auskommentierten Teil des Codes in dem, den Sie dort gepostet haben)

Wie auch immer, verwenden Sie diesen oder den, den ich in einem Beitrag vor Ihrem Beitrag gepostet habe, und er sollte alle Positionen öffnen - long und short: nicetrader-original.mq4

Dateien:
 

Mladen,

Danke....Ich werde es selbst ausprobieren. Wenn wir diese Vorlage richtig zum Laufen bringen können, werden viele von uns eine fertige Vorlage haben, um unsere Eas im neuen mt4-Build zu betreiben.

mladen:
Mastercash

Das ist nicht die Vorlage, die hier gepostet wurde: https: //www.mql5.com/en/forum/174385/page239 (Überprüfen Sie es und Sie werden sehen, dass sie unterschiedlich sind - es gibt keinen auskommentierten Teil des Codes in der, die Sie dort gepostet haben)

Wie auch immer, verwenden Sie diesen oder den, den ich in einem Beitrag vor Ihrem Beitrag gepostet habe, und er sollte alle Positionen öffnen - long und short: nicetrader-original.mq4
Grund der Beschwerde: