Fragen zum MQL5-Assistenten und zur Standardbibliothek der Handelsklassen - Seite 10
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
Hallo.
Ich habe mich entschlossen, mein eigenes Signalmodul zu schreiben, rein aus kognitiven Gründen. Ich bin mit einem Problem konfrontiert worden. Ich habe verstanden, dass dies über CExpertSignal::OpenLongParams(...) erfolgen kann. Aber ich habe ein Problem - mein Tester warnt vor einem ungültigen Ablaufdatum. Nachdem ich mich in den Quellcode vertieft habe, habe ich festgestellt, dass wir außerORDER_TIME_SPECIFIED keinen anderen Zeittyp erhalten können und wir ORDER_TIME_GTC wünschen.
Ich habe bisher einen klugen Zug gemacht, aber er ist nicht ganz richtig. Ich habe die Funktion in der Bibliothek korrigiert:
Was können Sie mir raten?
Hallo.
Sie haben völlig Recht. Ich habe die Nullverfallzeiten nicht berücksichtigt.
Ihre Lösung ist gut. Ich werde entsprechende Änderungen an der Standardbibliothek vornehmen.
Ich danke Ihnen.
Hallo.
Sie haben völlig Recht. Ich habe den Null-Ablauf nicht berücksichtigt.
Ihre Lösung ist gut. Ich werde entsprechende Änderungen an der Standardbibliothek vornehmen.
Ich danke Ihnen.
Das wird schon werden, aber in der Zwischenzeit habe ich in dieser Situation einen anderen Ausweg gefunden, den richtigen :) Indem ich eine von CExpert geerbte Klasse erstellt habe, in der ich die Funktionen CheckOpenLong() und CheckOpenShort() überschrieben habe, und ich habe dort Korrekturen dieser Art vorgenommen:
Aber in der Zwischenzeit habe ich einen anderen Ausweg aus dieser Situation gefunden - den richtigen :) Indem ich eine von CExpert geerbte Klasse erstellt habe, in der ich die Funktionen CheckOpenLong() und CheckOpenShort() überschrieben habe, und dort Korrekturen dieser Art vorgenommen habe:
Bitte erklären Sie die Logik des Parameters Expert_EveryTick
Wenn Expert_EveryTick=true, verarbeitet der Expert Advisor jeden Tick? D.h. es prüft die Ein- und Ausstiegsbedingungen und die Positionsverfolgung (Trawl) bei jedem neuen Tick, richtig?
Und wenn Expert_EveryTick=fasle - nur beim ersten Tick eines neuen Balkens? Und der Trail wird auch nur beim ersten Tick ausgelöst?
Bitte erklären Sie die Logik des Parameters Expert_EveryTick
Wenn Expert_EveryTick=true, verarbeitet der Expert Advisor jeden Tick? D.h. es prüft die Ein- und Ausstiegsbedingungen und die Positionsverfolgung (Trawl) bei jedem neuen Tick, richtig?
Und wenn Expert_EveryTick=fasle - nur beim ersten Tick eines neuen Balkens? Und das Schleppnetz wird auch nur beim ersten Tick ausgelöst?
Weitere Fragen zur Logik des Expert Advisors:
es gibt eine offene Position, z.B. Kauf, und ein festes Los, z.B. 1.
Es gibt ein Signal an die andere Seite, zu verkaufen.
Was wird der EA tun? werden zwei Geschäfte von 1 Lot jeder (die erste wird um 1 Lot schließen) oder ein Geschäft von 2 Lots? gibt es einen Unterschied zwischen gewinnen und verlieren den aktuellen Kauf?
Wenn es eine Kaufposition und wieder ein Kaufsignal gibt, welche Methoden sollte ich neu definieren, um sie zu schließen?
Weitere Fragen zur Logik des Expert Advisors:
1. Es gibt eine offene Position, z.B. Kauf, und ein festes Los, z.B. 1.
gibt es ein Signal an die andere Seite, zu verkaufen.
Was sollte der Expert Advisor tun? wird er zwei Geschäfte von je 1 Lot eröffnen (das erste wird um 1 Lot geschlossen) oder ein Geschäft von 2 Lots? gibt es einen Unterschied, wenn der aktuelle Kauf im roten Bereich oder im Überschuss ist?
2. der EA wird nicht selbst lang gehen, d.h. wenn es eine Kaufposition und wieder ein Signal zu kaufen? welche Methoden sollte ich neu definieren, damit es lang gehen, CheckOpenLong()?
1. zwei Schwellenwerte für die Auslösung (Einstellungen des Expert Advisors) Wenn der Schwellenwert für Close überschritten wird, wird die Position einfach geschlossen, wenn zwei Schwellenwerte überschritten werden (Close und Open), wird die Position umgekehrt. -/+ Es gibt keinen Unterschied.
2. die Verarbeitungsmethode
1. zwei Triggerschwellen (EA-Einstellungen). Wird die Close-Schwelle überschritten, wird die Position einfach geschlossen. Werden zwei Schwellenwerte überschritten (Close und Open), wird die Position umgekehrt. -/+ Es gibt keinen Unterschied.
2. die Verarbeitungsmethode
Die Schwellenwerte für "Close" und "Open" sind das Ergebnis einer "Abstimmung". Was liefern ShortCondition() oder LongCondition() im Signalmodul?
Sind die Schwellenwerte für "Close" und "Open" das Ergebnis der "Abstimmung" darüber, was ShortCondition() oder LongCondition() im Signalmodul zurückgibt?
Drei Fragen:
Theoretisch können wir den EA natürlich auch mit dem Assistenten erstellen und dann all diese Funktionen manuell zum Code hinzufügen. Es ist jedoch wünschenswert, dass all dies in Form von Standardmethoden implementiert wurde, d. h. für Dummies, die den Assistenten verwenden möchten, damit sie nicht in den Code einsteigen und ihn bearbeiten müssen, wenn sie z. B. ein Signalmodul durch ein anderes ersetzen möchten.