Das Problem der Umstellung von MT4 auf MT5. Oder, genauer gesagt, die Unfähigkeit, einige Algorithmen in MT5 ohne Fehler auszuführen. - Seite 11
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
Informationen zum Nachdenken.
Ich beobachte einige der auf dem Marktplatz veröffentlichten EA-Entwicklungen. Oder einige Artikel.
In den Anforderungen an die Brokerauswahl für den EA wird häufig ein geringer Spread angegeben.
Und meiner Meinung nach ist der MT5 weitgehend darauf abgestimmt, schnell auf Marktveränderungen zu reagieren. Dies erklärt, warum alle Bremsen, die auf die Aktualisierung von Angeboten warten, ausgeschaltet sind.
Das heißt, wenn eine Kursaktualisierung stattfindet, verweigert das Terminal den Zugang zu den Zeitreihen. Um einige schnelle Algorithmen nicht zu stören.
Dieses Paradigma hat eine Existenzberechtigung. Und der Handel ist kurz. Sie ist schnell eingegeben. Sammeln Sie ein paar Punkte. Schnell aussteigen.
Aber es gibt noch ein anderes Paradigma.
Es gibt einige extreme Situationen auf dem Markt, in denen sich Marktumkehrungen gebildet haben.
Diese Extreme können schon vor einigen Jahren entstanden sein. Aber sie beeinflussen weiterhin die aktuelle Marktsituation.
In diesem Fall können auch kurzzeitige Änderungen im Tick- oder Minutenverlauf berücksichtigt werden. Aber sie sind nicht entscheidend.
In diesem Fall ist es möglich, auf die Aktualisierung von Kursen zu warten, ohne den Handler aufgrund einer Zugriffsunterbrechung zu verlassen. Und es funktioniert nur in MT4.
Einige Bilder mit Erklärungen zu dem, was gesagt wurde.
Wir nehmen den monatlichen tf. Die Extremwerte vom März 1995, Oktober 2000 und Juli 2007 beeinflussen den Markt weiterhin.Sogar das Extremum vom Februar 1985 hat eine Wirkung:
Es ist zu erkennen, dass Linien, die mit diesen Extremen gebaut werden, vom Markt wahrgenommen werden.
Lassen Sie uns zu anderen Zeitrahmen übergehen. Ungefähr in einem solchen Verhältnis, als ob wir Wellenaufschläge machen würden. Diese Wahl kann zur Entwicklung einer Wellenebene in jeder TF führen
Wöchentlich tf:
D1:
H4:
M30:
M5:
M1:
Wir sehen, dass Extrema, die weit in der Vergangenheit gebildet wurden, die aktuelle Marktdynamik beeinflussen.
----------------------------------
Es sollte ein ständiger Zugang zu Kostenvoranschlägen für solche Konstruktionen bestehen.
Ich werde fortfahren. Im Grunde wird alles, was auf den Bildern zu sehen ist, im manuellen Handel verwendet.
Aber. Es ist möglich, die Eingänge mehrerer neuronaler Netze mit Kursen verschiedener Zeitrahmen zu füttern, wie zum Beispiel in den Bildern dargestellt. Jede NS wird ihre eigenen Daten verarbeiten. Und geben Sie mit ihrem Output ihr eigenes Verständnis von dem, was vor sich geht. Die Ausgaben der neuronalen Netze werden entsprechend der Empfangszeit der Balken synchronisiert.
In diesem Fall haben die Signale der NS eine höhere Priorität als die einer niedrigeren Priorität.
Die von den neuronalen Netzen empfangenen Signale werden unter Berücksichtigung einer gewissen Priorität in den Eingang des folgenden NS eingespeist. Hier kann es Varianten geben.
Die erste Schicht der neuronalen Netze kann z. B. vom Typ LSTM sein. Mit "Schicht" meinen wir in diesem Fall neuronale Netze, die jeweils Angebote aus ihrem Zeitrahmen erhalten. Jedes neuronale Netz der ersten Schicht kann aus mehreren Schichten von Neuronen bestehen.
Das summierende neuronale Netz kann seine eigene Architektur haben. Dies ist eher eine technische Aufgabe.
Es ist zum Beispiel möglich, mit einem Algorithmus der Handelseröffnung zu trainieren. In der ersten Schicht eines neuronalen Netzes. Das heißt, jedes neuronale Netz der ersten Schicht wird separat trainiert. Wir eröffnen den Handel zum Beispiel am Ende eines Balkens im entsprechenden Layer. Sie können sogar Trades in verschiedenen Richtungen eröffnen. Der Handel ist an Bedingungen geknüpft. Am Ende dieser Geschäfte wird ein Signal zur Schulung der NS gesendet.
Auf diese Weise erhält das aggregierte neuronale Netz das Recht, den besten Handelsmodus zu wählen.
Wir erhalten also einen Algorithmus, der dem vom DeepMinde-Team in Alfa Zero implementierten Algorithmus ähnlich ist.
Sie sollten ein solches Netz auf die gesamte Historie für alle ausgewählten Zeiträume trainieren. Es ist lediglich zu beachten, dass alle Zeitreihen im MT5 auf Minuten basieren. Das ist nicht wahr. Die NCC-Dateien über Eurodollars bis 1993 bestehen aus Zeitreihen. Es muss einen Algorithmus geben, der den wahren Zeitrahmen der Zeitreihe rekonstruiert.
Sie können auf einem Währungspaar trainieren. Und testen Sie es an einem anderen.
------------------------------
Zusammenfassung. Warum ist es bei diesem Ansatz notwendig, schnell auf die Geschehnisse auf dem Markt zu reagieren?
Entschuldigung für das Off-Topic, aber solange das Thema interessant ist, kann ich nicht aufhören
Nun, ich meine so:
MQL hat typename() - es gibt String-Typ-Namen zurück, funktioniert sogar
Kenntnis des Typs MyFunc() - Schreiben eines Makros (((, ... Natürlich kann ich alle Makros vom Typ _Try_helper schreiben ... Im Allgemeinen bin ich wahrscheinlich nicht sehr unternehmungslustig, denn ich weiß nicht, wie
Entschuldigung für das Off-Topic, aber so lange es ein interessantes Thema ist, kann ich nicht aufhören
Das ist in Ordnung.
MQL hat typename() - es gibt String-Typ-Namen zurück, funktioniert sogar
Kenntnis des Typs MyFunc() - Schreiben eines Makros (((, ... Natürlich kann ich alle Makros vom Typ _Try_helper schreiben ... Nun, ich schätze, ich bin kein Spieler, denn ich weiß nicht, wie man
typename() in µl hilft nicht weiter, da es zur Kompilierzeit keinen geeigneten Typ für die Deklaration einer Variablen liefert, sondern ihn nur ausgibt. Es bleiben also Try_d(), Try_i(), ... . Ich weiß nicht, wie man in µl die Funktionalität von decltype erreichen kann.
typename() in µl hilft nicht weiter, da es Ihnen zur Kompilierzeit keinen geeigneten Typ für die Deklaration einer Variablen liefert, sondern ihn nur ausgibt. Damit bleiben uns nur noch Try_d(), Try_i(), ... . Ich weiß nicht, wie man in µl die Funktionalität von decltype erreichen kann.
Hmm, ich fühle mich überhaupt nicht wie ein Spieler, ich würde sogar sagen, absolut kein Spieler! ))) - Ich weiß nicht, wie, das ist, wie etwas funktionieren wird (ich verstehe wirklich nicht, wie es auf der Maschinenebene "all spinning" ist - ich denke, wir haben eine streng typisierte Sprache?)
2019.07.31 21:07:05.304 tst2 (EURUSD,H1) i = 1
2019.07.31 21:07:05.304 tst2 (EURUSD,H1) d = 1.123
2019.07.31 21:07:05.304 tst2 (EURUSD,H1) s = Hallo Wort!!!
können Sie auch einen Zeiger auf die Funktion beschreiben
und weitere Verwendung
TFuncvoidPTR func[]; .... func[0]();
typename() in µl hilft nicht, da es zur Kompilierzeit nicht den für die Variablendeklaration geeigneten Typ liefert, sondern ihn nur ausgibt. Damit bleibt uns nur noch, Try_d(), Try_i(), ... zu multiplizieren. . Ich weiß nicht, wie man in µl die Funktionalität von decltype erreichen kann.
Eine Schablonenfunktion mit einer statischen Variablen vom Typ T.
Ich danke Ihnen!
Ich habe Ihre Beiträge gelesen, leider haben Sie in vielerlei Hinsicht recht, gestern habe ich in diesem Thread viel mit Moderator Artem korrespondiert, das Ergebnis des Gesprächs: wenn es so implementiert ist, dann sollte es auch so funktionieren... Generell gilt, wie in der alten Werbung: "Sie wissen einfach nicht, wie man sie kocht!
Imho, die Ergebnisse von MQL5 Compiler sind wirklich fantastisch (es ist sehr produktiv!), aber seine Verwendung als Trading-Terminal... Nun, sagen wir es mal so: es erfordert eine sehr, sehr gute technische Ausbildung und den Wunsch, ~30% mehr Code zu schreiben als "im alten Terminal" ( - auch dieser Satz ist ein gut etablierter Ausdruck im Forum)
Ay-yi-yi... Das habe ich nicht gesagt :)
Ich wollte damit sagen, dass wir das nutzen sollten, was wir haben, um das gewünschte Ergebnis zu erzielen.
Den Rest meiner Gefühle behalte ich für mich.
Ich habe nicht gesagt, dass Moderator Artem so etwas gesagt hat, ich habe nur das Ergebnis des Gesprächs geschrieben - ich denke, das ist mein Urteil, das ich nur auf der Grundlage meiner Gefühle und der Analyse des Gesprächs bilden kann .... ))))
d.h. ich weiß nicht, was im Kopf von jemandem passiert ist, ich kann nur meinen eigenen Kopf sehen... zum Glück vorerst nur im Spiegel )))
Ich hätte es geglaubt, wenn anstelle von
das Ergebnis des Gesprächs: Wenn es so umgesetzt wird, dann sollte es auch funktionieren... wie in der alten Werbung "Sie wissen nur nicht, wie man sie kocht!"
war
Meine Schlussfolgerung ist: Wenn es so umgesetzt wird, dann sollte es auch so funktionieren... Es ist wie in dem alten Werbespot: "Ich weiß nur nicht, wie man sie kocht!"
Und so stellt sich heraus, dass ein Kopf aus dem Spiegel zitiert angeblich Moderator Artem...
Und gut, wenn es ein Gespräch unter vier Augen war. Aber öffentlich Rückschlüsse auf meine Worte zu ziehen, die ich nicht gesagt habe, bedeutet, mich öffentlich mit meiner angeblich völlig falschen Meinung in Verbindung zu bringen - ich habe eine völlig andere als die, die angeblich in dem Zitat geäußert wurde.
Ich kann meine Meinung sagen:
Lassen Sie uns das Beste aus dem machen, was wir im Moment haben, jammern Sie nicht, helfen Sie, Fehler zu finden und fragen Sie mit Vorfreude nach Korrekturen - sie werden behoben und neue nette Funktionen erscheinen.
Ich würde es glauben, wenn anstelle von
es war
Aber wie sich herausstellte, zitierte ein Kopf aus dem Spiegel angeblich den Moderator Artem...
Und gut, wenn es ein Gespräch unter vier Augen war. Aber öffentlich Rückschlüsse auf meine Worte zu ziehen, die ich nicht gesagt habe, bedeutet, mir öffentlich meine angeblich völlig falsche Meinung zu unterstellen - ich habe eine ganz andere als die, die in dem Zitat angeblich geäußert wird.
Ich kann meine Meinung sagen:
Ich beschwere mich nicht, ich helfe bei der Suche nach Fehlern und bitte um deren Behebung - sie werden behoben, und es kommen neue coole Funktionen hinzu.
hmm, wie kompliziert die Dinge geworden sind.... hinter mir aufgeräumt, meine Meinung... wen interessiert das? was wird sich ändern? die entwickler haben ihre eigene vision von ihren produkten, es ist ihr geschäft und meine meinung ... wenn du den Thread nicht in 2 Tagen aktualisierst, wird er nicht mehr ganz oben stehen
... Wie wird es sich ändern ... Nun, heute ein guter Mann@Vict- zeigte mir einige einfache Debugging-Techniken, und vor allem - ich kann Lesbarkeit meines Codes zu erreichen - das hat meine Meinung von MQL5 verändert, und im Allgemeinen, die Mitglieder des Forums
Ich halte jetzt den Mund, zum Glück gibt es ein Forum mit einer langen Geschichte, man kann nicht zurückgehen und zu viele Antworten auf meine Fragen in der Suche nach diesem Forum lesen.
fxsaber hat recht - es gibt eine Möglichkeit
Es ist ein bisschen kitschig - EXPR wird zweimal berechnet, aber es ist trotzdem flexibler. Man kann nicht sagen, dass es universell ist (nur für arithmetische Typen. Der Fehlerwert muss gleich sein, was unangenehm ist. Ich habe versucht, dies durch explizite Spezialisierung der Struktur/Funktion zu vermeiden, aber das ist möglicherweise nicht möglich.
Nun, es scheint, dass man überall Fallen findet, egal wo man in den µl gräbt. Wahrscheinlich ist es besser, sich auf ein kleines, hoch spezialisiertes Makro mit einem festen Typ zu beschränken.