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 Andrey!
Hallo Andrey!
Die Funktion GetOpenPriceByLot().
Diese Funktion gibt den Eröffnungskurs einer Position oder eines Auftrags nach Lotgröße zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Die Funktion GetTicketByLot().
Diese Funktion gibt das Ticket einer Position oder eines Auftrags nach Losgröße zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
ZS: Im Anhang finden Sie ein Skript zum Testen der Funktion GetTicketByLot().
Hallo Igor!
Vielen Dank für die neuen Funktionen und dafür, dass Sie so schnell waren. Alles ist sehr gut. Die Funktion gibt z.B. eine Ticketbestellung nach Bedingungen zurück, die durch externe Variablen gesetzt werden können oder nicht verwendet werden können. Ich bin mir über diese Zeile nicht ganz im Klaren:
if ((op<0 || OrderType()==op) && (OrderType()>1 && OrderType()<6))
Hier prüfen wir die Bedingung der if-Anweisung, d.h. wenn die externe Variable <0 ist, ist jede Auftragsart verfügbar ODER wenn wir z.B. OP_BUY in den Funktionsaufruf schreiben, wird die Auswahl unter den OP_BUY-Aufträgen getroffen. Diese Bedingung ist eindeutig, aber darüber hinaus haben wir eine äquivalente Bedingung durch&& geschrieben, die besagt, dassOrderType() innerhalb des Bereichs der ausstehenden Aufträge liegen muss, d.h. von 1 bis 5. Unser OP_BUY-Typ ist nicht in diesem Bereich enthalten, und daher muss die Bedingung des Operators falsch sein und die Kontrolle muss an den Operator nach dem if-else-Operator weitergegeben werden, d.h. es ist schwierig für mich zu sagen, wo, irgendwo hinter dem geschweiften Körperpfeil. Es scheint mir, dass wir hier die Bedingung für Marktaufträge und eine separate Funktion für schwebende Aufträge derselben Art festlegen sollten. Das heißt, wenn ich eine Auswahl aus den Marktaufträgen treffen möchte und den genauen Typ nicht kenne, nehme ich die externe Variable <0, wende mich aber an die Funktion, in der die Bedingungen von 0 bis 1 angegeben sind. Das gleiche Verfahren wird auf schwebende Aufträge angewandt. Daher bin ich zu dem Schluss gekommen, dass wir bei der Verwendung dieser nützlichen Bedingung für jede Kategorie von Auftragsarten eine andere Funktion verwenden sollten.
Außerdem habe ich ein Problem mit der Bibliotheksverbindung. Ich habe gesucht und gelesen, aber die Verbindung gibt einen Fehler beim Kompilieren des EA, den ich schreibe. Ich habe noch keine Zeit, mich damit zu beschäftigen, ich möchte schneller einen profitablen Expert Advisor schreiben, also habe ich alle drei benötigten Bibliotheken kopiert und sie nach der speziellen Funktion start() angehängt, und ihre globalen Variablen in die globalen Variablen des EA platziert und Verweise auf sie auskommentiert. Es ist nicht sehr bequem, aber es funktioniert.Ich bin mir über diese Zeile nicht ganz im Klaren:
if ((op<0 || OrderType()==op) && (OrderType()>1 && OrderType()<6))
Ich danke Ihnen! Korrigiert... Dies ist eine Folge des Kopierens, d.h. der Verwendung einer Vorform einer anderen Funktion, die nur mit Limit- und Stop-Aufträgen arbeiten soll.
Ich habe auch ein Problem mit der Verbindung von Bibliotheken. Ich habe gesucht und gelesen, aber die Verbindung gibt mir einen Fehler beim Kompilieren der Expert Advisor ich schreibe. Ich habe keine Zeit, es herauszufinden, und ich möchte einen profitablen Expert Advisor schneller schreiben, also habe ich alle drei benötigten Bibliotheken kopiert und sie nach der speziellen Funktion start() angehängt, und ihre globalen Variablen in globalen EA-Variablen platziert und Referenzen auf sie auskommentiert. Es ist nicht sehr bequem, aber es funktioniert.
Übrigens verwende ich nicht meine eigenen Bibliotheken in Form von MQH-Dateien. Ich kopiere in der Regel die Funktionen, die ich in meinem EA benötige, d.h. mein fertiger Standard-EA ist eine einzige MQ4-Datei. Alles, was ich brauche, befindet sich in dieser Datei. Ja, es gibt einige Wiederholungen in dem Code. Aber es gibt keine Probleme mit Versionen von Funktionen.
Übrigens habe ich auch bemerkt, dass Sie Testskripte für jede Funktion haben, und sie haben alle zusätzlichen Funktionen, die Sie brauchen, die Sie einfach zu Ihrem EA zusammen mit der Funktion hinzufügen können, und es wird alles in einer Datei mit nichts extra sein. Die Funktionen sind einfach und nützlich, aber mit Ihrer Erlaubnis werde ich mir vier davon anfertigen: zwei für Positionen und zwei für Stopps. Sie werden universeller für die heiklen Anforderungen meines EA sein. Aber jetzt sehe ich, wie einfach es ist, das zu tun. Vielen Dank, Igor.
Mit freundlichen Grüßen Andrej.
Die Funktion TimeOpenFirstPos().
Diese Funktion gibt den Zeitpunkt der ersten offenen Position zurück. Die Auswahl der zu berücksichtigenden Positionen wird durch externe Parameter festgelegt:
Hallo
So fügen Sie einen Foeba zu Ihrem SetRegression()(https://www.mql5.com/ru/forum/107476/page35 ) Kanal hinzu.
Hallo
So fügen Sie einen Foeba zu Ihrem SetRegression()(https://www.mql5.com/ru/forum/107476/page35 ) Kanal hinzu.
Ente, es ist ganz einfach: