Entwicklung eines Replay System (Teil 29): Expert Advisor Projekt — Die Klasse C_Mouse (II)
Nachdem wir die Klasse C_Mouse verbessert haben, können wir uns auf die Erstellung einer Klasse konzentrieren, die einen völlig neuen Rahmen für unsere Analyse schaffen soll. Wir werden weder Vererbung noch Polymorphismus verwenden, um diese neue Klasse zu erstellen. Stattdessen werden wir die Preislinie ändern, oder besser gesagt, neue Objekte hinzufügen. Genau das werden wir in diesem Artikel tun. In der nächsten Ausgabe werden wir uns ansehen, wie man die Analyse ändern kann. All dies geschieht, ohne den Code der Klasse C_Mouse zu ändern. Nun, eigentlich wäre es einfacher, dies durch Vererbung oder Polymorphismus zu erreichen. Es gibt jedoch auch andere Methoden, um das gleiche Ergebnis zu erzielen.
William-Gann-Methoden (Teil II): Gann Square Indikator erstellen
Wir werden einen Indikator erstellen, der auf dem Gann‘schen 9er-Quadrat basiert, das durch Quadrieren von Zeit und Preis gebildet wird. Wir werden den Code vorbereiten und den Indikator in der Plattform in verschiedenen Zeitintervallen testen.
Entwicklung eines Replay System (Teil 26): Expert Advisor Projekt — die Klasse C_Terminal
Wir können nun mit der Erstellung eines Expert Advisors für die Verwendung im Wiedergabe-/Simulationssystem beginnen. Wir brauchen jedoch eine Verbesserung und keine zufällige Lösung. Trotzdem sollten wir uns von der anfänglichen Komplexität nicht einschüchtern lassen. Es ist wichtig, irgendwo anzufangen, sonst enden wir damit, dass wir über die Schwierigkeit einer Aufgabe grübeln, ohne überhaupt zu versuchen, sie zu bewältigen. Genau darum geht es beim Programmieren: Hindernisse durch Lernen, Testen und umfassende Forschung zu überwinden.
William-Gann-Methoden (Teil II): Gann Square Indikator erstellen
Wir werden einen Indikator erstellen, der auf dem Gann‘schen 9er-Quadrat basiert, das durch Quadrieren von Zeit und Preis gebildet wird. Wir werden den Code vorbereiten und den Indikator in der Plattform in verschiedenen Zeitintervallen testen.
Algorithmen zur Optimierung mit Populationen: Shuffled Frog-Leaping Algorithmus (SFL)
Der Artikel enthält eine detaillierte Beschreibung des Shuffled-Frog-Leaping-Algorithmus (SFL) und seiner Fähigkeiten bei der Lösung von Optimierungsproblemen. Der SFL-Algorithmus ist vom Verhalten der Frösche in ihrer natürlichen Umgebung inspiriert und bietet einen neuen Ansatz zur Funktionsoptimierung. Der SFL-Algorithmus ist ein effizientes und flexibles Werkzeug, das eine Vielzahl von Datentypen verarbeiten und optimale Lösungen erzielen kann.
Entwicklung eines Replay System (Teil 27): Expert Advisor Projekt — Die Klasse C_Mouse (II)
In diesem Artikel werden wir die Klasse C_Mouse implementieren. Es bietet die Möglichkeit, auf höchstem Niveau zu programmieren. Wenn man über High-Level- oder Low-Level-Programmiersprachen spricht, geht es jedoch nicht darum, obszöne Wörter oder Jargon in den Code aufzunehmen. Es ist genau andersherum. Wenn wir von High-Level- oder Low-Level-Programmierung sprechen, meinen wir, wie leicht oder schwer der Code für andere Programmierer zu verstehen ist.
Entwicklung eines Replay System (Teil 30): Expert Advisor Projekt — Die Klasse C_Mouse (IV)
Heute werden wir eine Technik lernen, die uns in verschiedenen Phasen unseres Berufslebens als Programmierer sehr helfen kann. Oft ist es nicht die Plattform selbst, die begrenzt ist, sondern das Wissen der Person, die über die Grenzen spricht. In diesem Artikel erfahren Sie, dass Sie mit gesundem Menschenverstand und Kreativität die MetaTrader 5-Plattform viel interessanter und vielseitiger gestalten können, ohne auf verrückte Programme oder ähnliches zurückgreifen zu müssen, und einfachen, aber sicheren und zuverlässigen Code erstellen können. Wir werden unsere Kreativität nutzen, um bestehenden Code zu ändern, ohne eine einzige Zeile des Quellcodes zu löschen oder hinzuzufügen.
Algorithmen zur Optimierung mit Populationen: Saplings Sowing and Growing up (SSG)
Der Algorithmus Saplings Sowing and Growing up (SSG, Setzen, Säen und Wachsen) wurde von einem der widerstandsfähigsten Organismen der Erde inspiriert, der unter den verschiedensten Bedingungen überleben kann.
Entwicklung eines Replay Systems — Marktsimulation (Teil 24): FOREX (V)
Heute werden wir eine Einschränkung aufheben, die bisher Simulationen auf der Grundlage des letzten Kurses verhindert hat, und einen neuen Einstiegspunkt speziell für diese Art von Simulationen einführen. Der gesamte Funktionsmechanismus wird auf den Prinzipien des Devisenmarktes beruhen. Der Hauptunterschied in diesem Verfahren ist die Trennung von Bid- und Last-Simulationen. Es ist jedoch wichtig zu beachten, dass die Methode zur Randomisierung der Zeit und zur Anpassung an die Klasse C_Replay in beiden Simulationen identisch bleibt. Das ist gut, denn Änderungen in einem Modus führen automatisch zu Verbesserungen im anderen, vor allem wenn es um die Handhabung der Zeit zwischen den Ticks geht.
Entwicklung eines Replay Systems — Marktsimulation (Teil 25): Vorbereitungen für die nächste Phase
In diesem Artikel schließen wir die erste Phase der Entwicklung unseres Replay- und Simulationssystems ab. Liebe Leserin, lieber Leser, damit bestätige ich, dass das System ein fortgeschrittenes Niveau erreicht hat und den Weg für die Einführung neuer Funktionen ebnet. Ziel ist es, das System noch weiter zu bereichern und es zu einem leistungsfähigen Instrument für die Forschung und Entwicklung von Marktanalysen zu machen.
Deep Learning GRU model with Python to ONNX with EA, and GRU vs LSTM models
We will guide you through the entire process of DL with python to make a GRU ONNX model, culminating in the creation of an Expert Advisor (EA) designed for trading, and subsequently comparing GRU model with LSTN model.
Популяционные алгоритмы оптимизации: Гибридный алгоритм оптимизации бактериального поиска с генетическим алгоритмом (Bacterial Foraging Optimization - Genetic Algorithm, BFO-GA)
В статье представлен новый подход к решению оптимизационных задач, путём объединения идей алгоритмов оптимизации бактериального поиска пищи (BFO) и приёмов, используемых в генетическом алгоритме (GA), в гибридный алгоритм BFO-GA. Он использует роение бактерий для глобального поиска оптимального решения и генетические операторы для уточнения локальных оптимумов. В отличие от оригинального BFO бактерии теперь могут мутировать и наследовать гены.
Entwicklung eines Replay Systems (Teil 39): Den Weg ebnen (III)
Bevor wir zur zweiten Stufe der Entwicklung übergehen, müssen wir einige Ideen überarbeiten. Wissen Sie, wie Sie MQL5 dazu bringen können, das zu tun, was Sie brauchen? Haben Sie jemals versucht, über das hinauszugehen, was in der Dokumentation enthalten ist? Wenn nicht, dann machen Sie sich bereit. Denn wir werden etwas tun, was die meisten Menschen normalerweise nicht tun.
Entwicklung eines Wiedergabesystems — Marktsimulation (Teil 21): FOREX (II)
Wir werden weiterhin ein System für die Arbeit auf dem FOREX-Markt aufbauen. Um dieses Problem zu lösen, müssen wir zuerst das Laden der Ticks deklarieren, bevor wir die vorherigen Balken laden. Dies löst zwar das Problem, zwingt den Nutzer aber gleichzeitig dazu, sich an eine bestimmte Struktur in der Konfigurationsdatei zu halten, was ich persönlich nicht sehr sinnvoll finde. Der Grund dafür ist, dass wir durch die Entwicklung eines Programms, das für die Analyse und Ausführung der Konfigurationsdatei verantwortlich ist, dem Nutzer die Möglichkeit geben können, die von ihm benötigten Elemente in beliebiger Reihenfolge zu deklarieren.
Algorithmus zur chemischen Reaktionsoptimierung (CRO) (Teil II): Zusammenstellung und Ergebnisse
Im zweiten Teil werden wir die chemischen Operatoren in einem einzigen Algorithmus zusammenfassen und eine detaillierte Analyse seiner Ergebnisse präsentieren. Wir wollen herausfinden, wie die Methode der chemischen Reaktionsoptimierung (CRO) mit der Lösung komplexer Probleme bei Testfunktionen zurechtkommt.
Entwicklung eines Replay Systems — Marktsimulation (Teil 23): FOREX (IV)
Jetzt erfolgt die Erstellung an der gleichen Stelle, an der wir die Ticks in Balken umgewandelt haben. Wenn also bei der Konvertierung etwas schief geht, werden wir den Fehler sofort bemerken. Dies liegt daran, dass derselbe Code, der die 1-Minuten-Balken während des schnellen Vorlaufs auf dem Chart platziert, auch für das Positionierungssystem verwendet wird, um die Balken während der normalen Performance zu platzieren. Mit anderen Worten: Der Code, der für diese Aufgabe zuständig ist, wird nirgendwo anders dupliziert. Auf diese Weise erhalten wir ein viel besseres System sowohl für die Instandhaltung als auch für die Verbesserung.
Entwicklung eines Replay Systems — Marktsimulation (Teil 22): FOREX (III)
Obwohl dies der dritte Artikel zu diesem Thema ist, muss ich für diejenigen, die den Unterschied zwischen dem Aktienmarkt und dem Devisenmarkt noch nicht verstanden haben, erklären: Der große Unterschied besteht darin, dass es auf dem Devisenmarkt keine Informationen über einige Punkte gibt, die im Laufe des Handels tatsächlich aufgetreten sind.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 23): CNNs
Convolutional Neural Networks sind ein weiterer Algorithmus des maschinellen Lernens, der sich darauf spezialisiert hat, mehrdimensionale Datensätze in ihre wichtigsten Bestandteile zu zerlegen. Wir sehen uns an, wie dies typischerweise erreicht wird, und untersuchen eine mögliche Anwendung für Händler in einer anderen Signalklasse des MQL5-Assistenten.
Entwicklung eines Replay-Systems (Teil 68): Das richtige Bestimmen der Zeit (I)
Heute werden wir weiter daran arbeiten, dass der Mauszeiger uns anzeigt, wie viel Zeit in Zeiten geringer Liquidität noch auf einem Balken verbleibt. Obwohl es auf den ersten Blick einfach erscheint, ist diese Aufgabe in Wirklichkeit viel schwieriger. Dabei gibt es einige Hindernisse, die wir überwinden müssen. Daher ist es wichtig, dass Sie den ersten Teil dieser Teilserie gut verstehen, damit Sie die folgenden Teile verstehen können.
Algorithmen zur Optimierung mit Populationen: Binärer genetischer Algorithmus (BGA). Teil I
In diesem Artikel werden wir verschiedene Methoden untersuchen, die in binären genetischen und anderen Populationsalgorithmen verwendet werden. Wir werden uns die Hauptkomponenten des Algorithmus, wie Selektion, Crossover und Mutation, und ihre Auswirkungen auf die Optimierung ansehen. Darüber hinaus werden wir Methoden der Datendarstellung und ihre Auswirkungen auf die Optimierungsergebnisse untersuchen.
Entwicklung eines Expertenberaters für mehrere Währungen (Teil 16): Auswirkungen unterschiedlicher Kursverläufe auf die Testergebnisse
Es wird erwartet, dass der in der Entwicklung befindliche EA gute Ergebnisse beim Handel mit verschiedenen Brokern zeigt. Aber im Moment haben wir die Kurse eines MetaQuotes-Demokontos verwendet, um Tests durchzuführen. Lassen Sie uns sehen, ob unser EA bereit ist, auf einem Handelskonto mit anderen Kursen zu arbeiten, als die, die wir während der Tests und der Optimierung verwendet haben.
Entwicklung eines Wiedergabesystems (Teil 42): Chart Trader Projekt (I)
Lassen Sie uns etwas Interessanteres schaffen. Ich möchte die Überraschung nicht verderben, also folgen Sie dem Artikel, um ein besseres Verständnis zu erhalten. Gleich zu Beginn dieser Serie über die Entwicklung des Replay/Simulator-Systems habe ich gesagt, dass die MetaTrader 5-Plattform sowohl in dem von uns entwickelten System als auch auf dem realen Markt auf die gleiche Weise verwendet werden soll. Es ist wichtig, dass dies richtig gemacht wird. Niemand möchte trainieren und lernen, mit einem Werkzeug zu kämpfen, während er während des Kampfes ein anderes nutzen muss.
Algorithmen zur Optimierung mit Populationen: Widerstand gegen das Steckenbleiben in lokalen Extremen (Teil I)
In diesem Artikel wird ein einzigartiges Experiment vorgestellt, das darauf abzielt, das Verhalten von Populationsoptimierungsalgorithmen im Zusammenhang mit ihrer Fähigkeit zu untersuchen, lokale Minima bei geringer Populationsvielfalt effizient zu umgehen und globale Maxima zu erreichen. Die Arbeit in dieser Richtung wird weitere Erkenntnisse darüber liefern, welche spezifischen Algorithmen ihre Suche mit den vom Nutzer festgelegten Koordinaten als Ausgangspunkt erfolgreich fortsetzen können und welche Faktoren ihren Erfolg beeinflussen.
Entwicklung eines Expertenberaters für mehrere Währungen (Teil 17): Weitere Vorbereitung auf den realen Handel
Derzeit verwendet unser EA die Datenbank, um Initialisierungs-Strings für einzelne Instanzen von Handelsstrategien zu erhalten. Die Datenbank ist jedoch recht groß und enthält viele Informationen, die für den eigentlichen EA-Betrieb nicht benötigt werden. Versuchen wir, die Funktionalität des EA ohne eine obligatorische Verbindung zur Datenbank zu gewährleisten.
Entwicklung eines Expert Advisors für mehrere Währungen (Teil 20): Ordnung in den Ablauf der automatischen Projektoptimierungsphasen bringen (I)
Wir haben bereits eine ganze Reihe von Komponenten entwickelt, die bei der automatischen Optimierung helfen. Bei der Erstellung folgten wir der traditionellen zyklischen Struktur: von der Erstellung eines minimalen funktionierenden Codes bis hin zum Refactoring und dem Erhalt eines verbesserten Codes. Es ist an der Zeit, mit dem Aufräumen unserer Datenbank zu beginnen, die auch eine Schlüsselkomponente in dem von uns geschaffenen System ist.
GIT: Was ist das?
In diesem Artikel werde ich ein sehr wichtiges Werkzeug für Entwickler vorstellen. Wenn Sie mit GIT nicht vertraut sind, lesen Sie diesen Artikel, um eine Vorstellung davon zu bekommen, was es ist und wie man es mit MQL5 verwendet.
Entwicklung eines Replay Systems (Teil 40): Beginn der zweiten Phase (I)
Heute werden wir über die neue Phase des Replay/Simulator-Systems sprechen. In dieser Phase wird das Gespräch wirklich interessant und sehr inhaltsreich. Ich empfehle Ihnen dringend, den Artikel sorgfältig zu lesen und die darin enthaltenen Links zu nutzen. Dies wird Ihnen helfen, den Inhalt besser zu verstehen.
Entwicklung eines Expertenberaters für mehrere Währungen (Teil 8): Belastungstest und Handhabung eines neuen Balkens
Im weiteren Verlauf haben wir immer mehr gleichzeitig laufende Instanzen von Handelsstrategien in einem EA verwendet. Versuchen wir herauszufinden, wie viele Instanzen wir erreichen können, bevor wir an Ressourcengrenzen stoßen.
Künstlicher Algenalgorithmus (AAA)
Der Artikel befasst sich mit dem Künstlichen Algenalgorithmus (AAA), der auf den für Mikroalgen charakteristischen biologischen Prozessen beruht. Der Algorithmus umfasst eine Spiralbewegung, einen evolutionären Prozess und eine Anpassung, die es ihm ermöglicht, Optimierungsprobleme zu lösen. Der Artikel bietet eine eingehende Analyse der Funktionsprinzipien der AAA und ihres Potenzials für die mathematische Modellierung, wobei die Verbindung zwischen Natur und algorithmischen Lösungen hervorgehoben wird.
Kategorientheorie (Teil 9): Monoid-Aktionen
Dieser Artikel setzt die Serie über die Implementierung der Kategorientheorie in MQL5 fort. Hier setzen wir Monoid-Aktionen als Mittel zur Transformation von Monoiden fort, die im vorigen Artikel behandelt wurden und zu mehr Anwendungen führen.
Robustheitstests für Expert Advisors
Bei der Entwicklung von Strategien sind viele komplizierte Details zu berücksichtigen, von denen viele für Anfänger nicht besonders interessant sind. Infolgedessen mussten viele Händler, mich eingeschlossen, diese Lektionen auf die harte Tour lernen. Dieser Artikel basiert auf meinen Beobachtungen von häufigen Fallstricken, die den meisten Anfängern bei der Entwicklung von Strategien auf MQL5 begegnen. Es wird eine Reihe von Tipps, Tricks und Beispielen bieten, die dabei helfen, die Untauglichkeit eines EA zu erkennen und die Robustheit unserer eigenen EAs auf einfache Weise zu testen. Ziel ist es, die Leser aufzuklären und ihnen zu helfen, zukünftige Betrügereien beim Kauf von EAs zu vermeiden und Fehler bei der eigenen Strategieentwicklung zu verhindern.
Vom Neuling zum Experten: Programmieren von Kerzen
In diesem Artikel machen wir den ersten Schritt in die MQL5-Programmierung, auch für absolute Anfänger. Wir zeigen Ihnen, wie Sie bekannte Kerzenmuster in einen voll funktionsfähigen nutzerdefinierten Indikator verwandeln können. Kerzenmuster sind wertvoll, da sie reale Kursbewegungen widerspiegeln und Marktverschiebungen signalisieren. Anstatt die Charts manuell zu scannen - ein Ansatz, der fehleranfällig und ineffizient ist - werden wir besprechen, wie Sie den Prozess mit einem Indikator automatisieren können, der Muster für Sie identifiziert und kennzeichnet. Auf dem Weg dorthin werden wir uns mit Schlüsselkonzepten wie Indexierung, Zeitreihen, Average True Range (für Genauigkeit bei schwankender Marktvolatilität) und der Entwicklung einer nutzerdefinierten, wiederverwendbaren Bibliothek von Kerzen-Mustern für den Einsatz in zukünftigen Projekten beschäftigen.
Entwicklung eines Replay Systems (Teil 45): Chart Trade Projekt (IV)
Der Hauptzweck dieses Artikels ist die Einführung und Erläuterung der Klasse C_ChartFloatingRAD. Wir haben einen Chart Trade-Indikator, der auf recht interessante Weise funktioniert. Wie Sie vielleicht bemerkt haben, haben wir immer noch eine relativ kleine Anzahl von Objekten im Chart, und dennoch erhalten wir die erwartete Funktionalität. Die im Indikator enthaltenen Werte können bearbeitet werden. Die Frage ist, wie ist das möglich? Dieser Artikel wird die Dinge etwas klarer machen.
Kategorientheorie in MQL5 (Teil 5): Differenzkern oder Egalisator
Die Kategorientheorie ist ein vielfältiger und expandierender Zweig der Mathematik, der erst seit kurzem in der MQL5-Gemeinschaft Beachtung findet. In dieser Artikelserie sollen einige der Konzepte und Axiome erforscht und untersucht werden, mit dem übergeordneten Ziel, eine offene Bibliothek einzurichten, die Einblicke gewährt und hoffentlich auch die Nutzung dieses bemerkenswerten Bereichs für die Strategieentwicklung von Händlern fördert.
Developing a Replay System (Part 37): Paving the Path (I)
In this article, we will finally begin to do what we wanted to do much earlier. However, due to the lack of "solid ground", I did not feel confident to present this part publicly. Now I have the basis to do this. I suggest that you focus as much as possible on understanding the content of this article. I mean not simply reading it. I want to emphasize that if you do not understand this article, you can completely give up hope of understanding the content of the following ones.
Algorithmen zur Optimierung mit Populationen: Widerstand gegen das Steckenbleiben in lokalen Extremen (Teil II)
Wir setzen unser Experiment fort, das darauf abzielt, das Verhalten von Populationsoptimierungsalgorithmen im Zusammenhang mit ihrer Fähigkeit zu untersuchen, lokale Minima bei geringer Populationsvielfalt effizient zu umgehen und globale Maxima zu erreichen. Forschungsergebnisse werden vorgelegt.
Entwicklung eines Replay Systems (Teil 33): Auftragssystem (II)
Heute werden wir das Auftragssystem weiterentwickeln. Wie Sie sehen werden, werden wir in großem Umfang wiederverwenden, was bereits in anderen Artikeln gezeigt wurde. Dennoch werden Sie in diesem Artikel eine kleine Belohnung erhalten. Zunächst werden wir ein System entwickeln, das mit einem echten Handelsserver verwendet werden kann, sowohl von einem Demokonto als auch von einem echten Konto. Wir werden die Plattform MetaTrader 5 ausgiebig nutzen, die uns von Anfang an alle notwendige Unterstützung bietet.
MQL5-Assistent - Techniken, die Sie kennen sollten (14): Zeitreihenvorhersage mit mehreren Zielvorgaben durch STF
Die räumlich-zeitliche Fusion, bei der sowohl räumliche als auch zeitliche Metriken zur Modellierung von Daten verwendet werden, ist vor allem bei der Fernerkundung und einer Vielzahl anderer visueller Aktivitäten nützlich, um ein besseres Verständnis unserer Umgebung zu erlangen. Dank eines veröffentlichten Artikels verfolgen wir einen neuen Ansatz, indem wir sein Potenzial für Händler untersuchen.
Datenwissenschaft und maschinelles Lernen (Teil 21): Neuronale Netze entschlüsseln, Optimierungsalgorithmen entmystifiziert
Tauchen Sie ein in das Herz der neuronalen Netze, indem wir die Optimierungsalgorithmen, die innerhalb des neuronalen Netzes verwendet werden, entmystifizieren. In diesem Artikel erfahren Sie, mit welchen Schlüsseltechniken Sie das volle Potenzial neuronaler Netze ausschöpfen und Ihre Modelle zu neuen Höhen der Genauigkeit und Effizienz führen können.
Entwicklung eines Replay Systems (Teil 41): Beginn der zweiten Phase (II)
Wenn Ihnen bis zu diesem Punkt alles richtig erschien, bedeutet dies, dass Sie bei der Entwicklung von Anwendungen nicht wirklich an die langfristige Perspektive denken. Im Laufe der Zeit müssen Sie keine neuen Anwendungen mehr programmieren, sondern nur noch dafür sorgen, dass sie zusammenarbeiten. Schauen wir uns also an, wie man den Mauszeiger fertigstellt.