Einführung in MQL5 (Teil 4): Strukturen, Klassen und Zeitfunktionen beherrschen
Enthüllen wir die Geheimnisse der MQL5-Programmierung in unserem neuesten Artikel! Vertiefen wir uns in die Grundlagen von Strukturen, Klassen und Zeitfunktionen und machen uns mit der Programmierung vertraut. Egal, ob Sie Anfänger oder erfahrener Entwickler sind, unser Leitfaden vereinfacht komplexe Konzepte und bietet wertvolle Einblicke für die Beherrschung von MQL5. Verbessern Sie Ihre Programmierkenntnisse und bleiben Sie in der Welt des algorithmischen Handels an der Spitze!
Aufbau und Test von Keltner-Kanal-Handelssystemen
In diesem Artikel werden wir versuchen, Handelssysteme anzubieten, die ein sehr wichtiges Konzept auf dem Finanzmarkt verwenden, nämlich die Volatilität. Wir werden ein Handelssystem auf der Grundlage des Keltner-Kanal-Indikators bereitstellen, nachdem wir ihn verstanden haben und wissen, wie wir ihn kodieren können und wie wir ein Handelssystem auf der Grundlage einer einfachen Handelsstrategie erstellen und es dann an verschiedenen Vermögenswerten testen können.
Einführung in MQL5 (Teil 3): Beherrschung der Kernelemente von MQL5
Entdecken Sie die Grundlagen der MQL5-Programmierung in diesem einsteigerfreundlichen Artikel, in dem wir Arrays, nutzerdefinierte Funktionen, Präprozessoren und die Ereignisbehandlung entmystifizieren, wobei jede Codezeile verständlich erklärt wird. Erschließen wir die Leistungsfähigkeit von MQL5 mit einem einzigartigen Ansatz, der das Verständnis bei jedem Schritt sicherstellt. Dieser Artikel legt den Grundstein für die Beherrschung von MQL5, indem er die Erklärung jeder Codezeile hervorhebt und eine eindeutige und bereichernde Lernerfahrung bietet.
Aufbau und Test des Handelssystems Aroon
In diesem Artikel erfahren wir, wie wir ein Aroon-Handelssystem aufbauen können, nachdem wir die Grundlagen der Indikatoren und die erforderlichen Schritte zum Aufbau eines Handelssystems auf der Grundlage des Aroon-Indikators gelernt haben. Nachdem wir dieses Handelssystem aufgebaut haben, werden wir es testen, um zu sehen, ob es profitabel sein kann oder noch optimiert werden muss.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 10). Die unkonventionelle RBM
Restriktive Boltzmann-Maschinen (RBM) sind im Grunde genommen ein zweischichtiges neuronales Netz, das durch Dimensionsreduktion eine unbeaufsichtigte Klassifizierung ermöglicht. Wir nehmen die Grundprinzipien und untersuchen, ob wir durch eine unorthodoxe Umgestaltung und ein entsprechendes Training einen nützlichen Signalfilter erhalten können.
Deep Learning, Vorhersage und Aufträge mit Python, dem MetaTrader5 Python-Paket und ONNX-Modelldatei
Im Rahmen des Projekts wird Python für Deep Learning-basierte Prognosen auf den Finanzmärkten eingesetzt. Wir werden die Feinheiten des Testens der Leistung des Modells anhand von Schlüsselkennzahlen wie dem mittleren absoluten Fehler (MAE), dem mittleren quadratischen Fehler (MSE) und dem R-Quadrat (R2) erkunden und lernen, wie man alles in eine ausführbare Datei verpackt. Wir werden auch eine ONNX-Modelldatei mit seinem EA erstellen.
Modifizierter Grid-Hedge EA in MQL5 (Teil II): Erstellung eines einfachen Grid EA
In diesem Artikel wird die klassische Rasterstrategie untersucht, ihre Automatisierung mit einem Expert Advisor in MQL5 detailliert beschrieben und die ersten Backtest-Ergebnisse analysiert. Wir haben die Notwendigkeit einer hohen Haltekapazität für die Strategie hervorgehoben und Pläne für die Optimierung von Schlüsselparametern wie Abstand, TakeProfit und Losgrößen in zukünftigen Ausgaben skizziert. Die Reihe zielt darauf ab, die Effizienz der Handelsstrategien und die Anpassungsfähigkeit an unterschiedliche Marktbedingungen zu verbessern.
Einführung in MQL5 (Teil 2): Navigieren zwischen vordefinierten Variablen, gebräuchlichen Funktionen und Kontrollflussanweisungen
Begeben wir uns mit Teil zwei unserer MQL5-Serie auf eine aufschlussreiche Reise. Diese Artikel sind nicht einfach nur Anleitungen, sie sind die Tore zu einem verzauberten Reich, in dem Programmieranfänger und Zauberer gleichermaßen zu Hause sind. Was macht diese Reise wirklich magisch? Teil zwei unserer MQL5-Serie zeichnet sich durch seine erfrischende Einfachheit aus, die komplexe Konzepte für alle zugänglich macht. Beantworten Sie Ihre Fragen interaktiv und sorgen Sie so für eine bereichernde und individuelle Lernerfahrung. Lassen Sie uns eine Gemeinschaft aufbauen, in der das Verständnis von MQL5 für jeden ein Abenteuer ist. Willkommen in der Welt der Verzauberung!
Quantitative Analyse in MQL5: Implementierung eines vielversprechenden Algorithmus
Wir werden der Frage nachgehen, was eine quantitative Analyse ist und wie sie von den wichtigsten Akteuren eingesetzt wird. Wir werden einen der Algorithmen für die quantitative Analyse in der Sprache MQL5 erstellen.
Neuronale Netze leicht gemacht (Teil 67): Nutzung früherer Erfahrungen zur Lösung neuer Aufgaben
In diesem Artikel werden weitere Methoden zur Sammlung von Daten in einem Trainingssatz erörtert. Es liegt auf der Hand, dass der Lernprozess eine ständige Interaktion mit der Umgebung erfordert. Die Situationen können jedoch unterschiedlich sein.
Neuronale Netze leicht gemacht (Teil 66): Explorationsprobleme beim Offline-Lernen
Modelle werden offline mit Daten aus einem vorbereiteten Trainingsdatensatz trainiert. Dies bietet zwar gewisse Vorteile, hat aber den Nachteil, dass die Informationen über die Umgebung stark auf die Größe des Trainingsdatensatzes komprimiert werden. Das wiederum schränkt die Möglichkeiten der Erkundung ein. In diesem Artikel wird eine Methode vorgestellt, die es ermöglicht, einen Trainingsdatensatz mit möglichst unterschiedlichen Daten zu füllen.
Bauen Sie Ihr erstes Modell einer Glass-Box mit Python und MQL5
Modelle des maschinellen Lernens sind schwer zu interpretieren, und das Verständnis dafür, warum unsere Modelle von unseren Erwartungen abweichen, ist von entscheidender Bedeutung, wenn wir einen Nutzen aus dem Einsatz dieser fortschrittlichen Techniken ziehen wollen. Ohne einen umfassenden Einblick in das Innenleben unseres Modells könnten wir Fehler nicht erkennen, die die Leistung unseres Modells beeinträchtigen, wir könnten Zeit mit der Entwicklung von Funktionen verschwenden, die nicht vorhersagbar sind, und langfristig riskieren wir, die Leistungsfähigkeit dieser Modelle nicht voll auszuschöpfen. Glücklicherweise gibt es eine ausgeklügelte und gut gewartete Komplettlösung, mit der wir genau sehen können, was unser Modell unter seiner Haube macht.
Python, ONNX und MetaTrader 5: Erstellen eines RandomForest-Modells mit RobustScaler und PolynomialFeatures zur Datenvorverarbeitung
In diesem Artikel werden wir ein Random-Forest-Modell in Python erstellen, das Modell trainieren und es als ONNX-Pipeline mit Datenvorverarbeitung speichern. Danach werden wir das Modell im MetaTrader 5 Terminal verwenden.
Neuronale Netze leicht gemacht (Teil 65): Abstandsgewichtetes überwachtes Lernen (DWSL)
In diesem Artikel werden wir einen interessanten Algorithmus kennenlernen, der an der Schnittstelle von überwachten und verstärkenden Lernmethoden angesiedelt ist.
Neuronale Netze leicht gemacht (Teil 64): Die Methode konservativ gewichtetes Klonen von Verhaltensweisen (CWBC)
Aufgrund von Tests, die in früheren Artikeln durchgeführt wurden, kamen wir zu dem Schluss, dass die Optimalität der trainierten Strategie weitgehend von der verwendeten Trainingsmenge abhängt. In diesem Artikel werden wir uns mit einer relativ einfachen, aber effektiven Methode zur Auswahl von Trajektorien für das Training von Modellen vertraut machen.
Die Kreuzvalidierung und die Grundlagen der kausalen Inferenz in CatBoost-Modellen, Export ins ONNX-Format
In dem Artikel wird eine Methode zur Erstellung von Bots durch maschinelles Lernen vorgeschlagen.
Händlerfreundliche Stop-Loss und Take-Profit
Stop-Loss und Take-Profit können einen erheblichen Einfluss auf die Handelsergebnisse haben. In diesem Artikel werden wir uns verschiedene Möglichkeiten ansehen, um optimale Stop-Order-Werte zu finden.
Neuronale Netze leicht gemacht (Teil 63): Unüberwachtes Pretraining für Decision Transformer (PDT)
Wir setzen die Diskussion über die Familie der Entscheidungstransformationsmethoden fort. In einem früheren Artikel haben wir bereits festgestellt, dass das Training des Transformators, der der Architektur dieser Methoden zugrunde liegt, eine ziemlich komplexe Aufgabe ist und einen großen gekennzeichneten Datensatz für das Training erfordert. In diesem Artikel wird ein Algorithmus zur Verwendung von ungekennzeichneten Trajektorien für das vorläufige Modelltraining vorgestellt.
Neuronale Netze leicht gemacht (Teil 62): Verwendung des Entscheidungs-Transformer in hierarchischen Modellen
In den letzten Artikeln haben wir verschiedene Optionen für die Verwendung der Entscheidungs-Transformer-Methode gesehen. Die Methode erlaubt es, nicht nur den aktuellen Zustand zu analysieren, sondern auch die Trajektorie früherer Zustände und die darin durchgeführten Aktionen. In diesem Artikel werden wir uns auf die Anwendung dieser Methode in hierarchischen Modellen konzentrieren.
Neuronale Netze leicht gemacht (Teil 61): Optimismusproblem beim Offline-Verstärkungslernen
Während des Offline-Lernens optimieren wir die Strategie des Agenten auf der Grundlage der Trainingsdaten. Die daraus resultierende Strategie gibt dem Agenten Vertrauen in sein Handeln. Ein solcher Optimismus ist jedoch nicht immer gerechtfertigt und kann zu erhöhten Risiken während des Modellbetriebs führen. Heute werden wir uns mit einer der Methoden zur Verringerung dieser Risiken befassen.
Entwicklung eines Replay System (Teil 31): Expert Advisor Projekt — Die Klasse C_Mouse (V)
Wir brauchen einen Timer, der anzeigt, wie viel Zeit bis zum Ende der Wiedergabe/Simulation verbleibt. Dies mag auf den ersten Blick eine einfache und schnelle Lösung sein. Viele versuchen einfach, sich anzupassen und das gleiche System zu verwenden, das der Handelsserver verwendet. Aber es gibt eine Sache, die viele Leute nicht bedenken, wenn sie über diese Lösung nachdenken: Bei der Wiederholung und noch mehr bei der Simulation funktioniert die Uhr anders. All dies erschwert die Schaffung eines solchen Systems.
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.
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.
Erstellen von Multi-Symbol- und Multi-Perioden-Indikatoren
In diesem Artikel werden wir uns mit den Grundsätzen der Erstellung von Multi-Symbol- und Multi-Perioden-Indikatoren befassen. Wir werden auch sehen, wie man auf die Daten solcher Indikatoren von Expert Advisors und anderen Indikatoren zugreifen kann. Wir werden die Hauptmerkmale der Verwendung von Multi-Indikatoren in Expert Advisors und Indikatoren besprechen und sehen, wie man sie durch nutzerdefinierte Indikatorpuffer darstellen kann.
Datenkennzeichnung für die Zeitreihenanalyse (Teil 4):Deutung der Datenkennzeichnungen durch Aufgliederung
In dieser Artikelserie werden verschiedene Methoden zur Kennzeichnung (labeling) von Zeitreihen vorgestellt, mit denen Daten erstellt werden können, die den meisten Modellen der künstlichen Intelligenz entsprechen. Eine gezielte und bedarfsgerechte Kennzeichnung von Daten kann dazu führen, dass das trainierte Modell der künstlichen Intelligenz besser mit dem erwarteten Design übereinstimmt, die Genauigkeit unseres Modells verbessert wird und das Modell sogar einen qualitativen Sprung machen kann!
Neuronale Netze sind einfach (Teil 59): Dichotomy of Control (DoC)
Im vorigen Artikel haben wir uns mit dem Decision Transformer vertraut gemacht. Das komplexe stochastische Umfeld des Devisenmarktes erlaubte es uns jedoch nicht, das Potenzial der vorgestellten Methode voll auszuschöpfen. In diesem Artikel werde ich einen Algorithmus vorstellen, der die Leistung von Algorithmen in stochastischen Umgebungen verbessern soll.
Neuronale Netze leicht gemacht (Teil 60): Online Decision Transformer (ODT)
Die letzten beiden Artikel waren der Decision-Transformer-Methode gewidmet, die Handlungssequenzen im Rahmen eines autoregressiven Modells der gewünschten Belohnungen modelliert. In diesem Artikel werden wir uns einen weiteren Optimierungsalgorithmus für diese Methode ansehen.
Entwurfsmuster in der Softwareentwicklung und MQL5 (Teil 4): Verhaltensmuster 2
In diesem Artikel werden wir unsere Serie über das Thema Entwurfmuster abschließen. Wir haben erwähnt, dass es drei Arten von Entwurfmuster gibt: Erzeugungs-, Verhaltens- und strukturelle Muster. Wir werden die verbleibenden Muster des Verhaltenstyps vervollständigen, die dabei helfen können, die Methode der Interaktion zwischen Objekten so festzulegen, dass unser Code sauber wird.
MQL5-Assistent-Techniken, die Sie kennen sollten (Teil 09): K-Means-Clustering mit fraktalen Wellen
Das K-Means-Clustering verfolgt den Ansatz, Datenpunkte als einen Prozess zu gruppieren, der sich zunächst auf die Makroansicht eines Datensatzes konzentriert und zufällig generierte Clusterzentren verwendet, bevor er heranzoomt und diese Zentren anpasst, um den Datensatz genau darzustellen. Wir werden uns dies ansehen und einige Anwendungsfälle ausnutzen.
Wie man einen einfachen Multi-Currency Expert Advisor mit MQL5 erstellt (Teil 4): Triangulärer gleitender Durchschnitt — Indikatorensignale
Der Multi-Currency Expert Advisor in diesem Artikel ist ein Expert Advisor oder Handelsroboter, der mehr als nur ein Symbolpaar von dessen Symbolchart handeln kann (Aufträge öffnen, schließen und verwalten oder zum Beispiel Trailing Stop Loss und Trailing Profit). Dieses Mal werden wir nur 1 Indikator verwenden, nämlich den Triangulären gleitenden Durchschnitt in Multi-Timeframes oder Single-Timeframes.
Entwurfsmuster in der Softwareentwicklung und MQL5 (Teil 3): Verhaltensmuster 1
Ein neuer Artikel aus der Reihe der Artikel über Entwurfmuster. Wir werden einen Blick auf einen seiner Typen werfen, nämlich den Verhaltensmuster, um zu verstehen, wie wir Kommunikationsmethoden zwischen erstellten Objekten effektiv aufbauen können. Durch die Vervollständigung dieser Verhaltensmuster werden wir in der Lage sein zu verstehen, wie wir eine wiederverwendbare, erweiterbare und getestete Software erstellen und aufbauen können.
Wie man einen einfachen Multi-Currency Expert Advisor mit MQL5 erstellt (Teil 5): Die Bollinger Bänder mit dem Keltner-Kanal — Indikatoren Signal
Der Multi-Currency Expert Advisor in diesem Artikel ist ein Expert Advisor oder Handelsroboter, der handeln kann (z.B. Aufträge eröffnen, schließen und verwalten, Trailing Stop Loss und Trailing Profit) für mehr als ein Symbolpaar aus nur einem Symbolchart. In diesem Artikel werden wir Signale von zwei Indikatoren verwenden, in diesem Fall Bollinger Bänder® und dem Keltner Kanal.
Modifizierter Grid-Hedge EA in MQL5 (Teil I): Erstellung eines einfachen Hedge EA
Wir werden einen einfachen Hedge EA als Basis für unseren fortgeschritteneren Grid-Hedge EA erstellen, der eine Mischung aus klassischen Grid- und klassischen Hedge-Strategien sein wird. Am Ende dieses Artikels werden Sie wissen, wie Sie eine einfache Hedge-Strategie erstellen können, und Sie werden auch erfahren, was die Leute darüber sagen, ob diese Strategie wirklich zu 100 % profitabel ist.
Kombinatorisch symmetrische Kreuzvalidierung in MQL5
In diesem Artikel stellen wir die Implementierung der kombinatorisch symmetrischen Kreuzvalidierung in reinem MQL5 vor, um den Grad der Überanpassung nach der Optimierung einer Strategie unter Verwendung des langsamen vollständigen Algorithmus des Strategietesters zu messen.
Entwurfsmuster in der Softwareentwicklung und MQL5 (Teil 2): Strukturelle Muster
In diesem Artikel werden wir unsere Artikel über Entwurfsmuster fortsetzen, nachdem wir gelernt haben, wie wichtig dieses Thema für uns als Entwickler ist, um erweiterbare, zuverlässige Anwendungen nicht nur mit der Programmiersprache MQL5, sondern auch mit anderen zu entwickeln. Wir werden eine andere Art von Entwurfsmustern kennenlernen, nämlich die strukturellen, um zu lernen, wie man Systeme entwirft, indem man das, was wir als Klassen haben, zur Bildung größerer Strukturen verwendet.
Einführung in MQL5 (Teil 1): Ein Leitfaden für Einsteiger in den algorithmischen Handel
Tauchen Sie ein in die faszinierende Welt des algorithmischen Handels mit unserem einsteigerfreundlichen Leitfaden zur MQL5-Programmierung. Entdecken Sie die Grundlagen von MQL5, der Sprache, die den MetaTrader 5 antreibt, während wir die Welt des automatisierten Handels entmystifizieren. Vom Verständnis der Grundlagen bis hin zu den ersten Schritten in der Programmierung ist dieser Artikel Ihr Schlüssel, um das Potenzial des algorithmischen Handels auch ohne Programmierkenntnisse zu erschließen. Begleiten Sie uns auf eine Reise, auf der Einfachheit und Raffinesse im aufregenden Universum von MQL5 aufeinandertreffen.
Neuronale Netze leicht gemacht (Teil 58): Decision Transformer (DT)
Wir setzen das Studium der Methoden des Reinforcement Learning bzw. des Verstärkungslernens fort. In diesem Artikel werde ich mich auf einen etwas anderen Algorithmus konzentrieren, der die Politik des Agenten im Paradigma der Konstruktion einer Sequenz von Aktionen betrachtet.
Verständnis von Programmierparadigmen (Teil 1): Ein verfahrenstechnischer Ansatz für die Entwicklung eines Price Action Expert Advisors
Lernen Sie die Programmierparadigmen und ihre Anwendung in MQL5-Code kennen. In diesem Artikel werden die Besonderheiten der prozeduralen Programmierung untersucht und anhand eines praktischen Beispiels in die Praxis umgesetzt. Sie lernen, wie Sie einen Price Action Expert Advisor mit dem EMA-Indikator und Kerzen-Kursdaten entwickeln. Außerdem führt der Artikel in das Paradigma der funktionalen Programmierung ein.
Wie man einen einfachen Multi-Currency Expert Advisor mit MQL5 erstellt (Teil 3): Hinzufügen von Symbolpräfixen und/oder -suffixen und der Handelszeiten
Mehrere Handelskollegen schickten E-Mails oder äußerten sich dazu, wie man diesen Multi-Currency EA bei Brokern mit Symbolnamen mit Präfixen und/oder Suffixen verwenden kann, und auch dazu, wie man Handelszeitzonen oder Handelszeitsitzungen bei diesem Multi-Currency EA implementiert.
Entwurfsmuster in der Softwareentwicklung und MQL5 (Teil I): Erzeugungsmuster
Es gibt Methoden, mit denen sich viele Probleme lösen lassen, die sich ständig wiederholen. Wenn Sie einmal verstanden haben, wie man diese Methoden anwendet, kann es sehr hilfreich sein, Ihre Software effektiv zu erstellen und das Konzept von DRY (Do not Repeat Yourself) anzuwenden. In diesem Zusammenhang eignet sich das Thema Entwurfsmuster sehr gut, da es sich um Muster handelt, die Lösungen für gut beschriebene und wiederkehrende Probleme bieten.