Preise in der DoEasy-Bibliothek (Teil 61): Kollektion der Tickserien eines Symbols
Da ein Programm bei seiner Arbeit verschiedene Symbole verwenden kann, sollte für jedes dieser Symbole eine eigene Liste erstellt werden. In diesem Artikel werde ich solche Listen zu einer Tickdatenkollektion zusammenfassen. In der Tat wird dies eine reguläre Liste sein, die auf der Klasse des dynamischen Arrays von Zeigern auf Instanzen der Klasse CObject und ihrer Nachkommen der Standardbibliothek basiert.
Komplexe Indikatoren mit Objekten vereinfachen
In diesem Artikel wird eine Methode zur Erstellung komplexer Indikatoren vorgestellt, bei der gleichzeitig die Probleme vermieden werden, die bei der Arbeit mit mehreren Flächen, Puffern und/oder der Kombination von Daten aus mehreren Quellen auftreten.
Nicht-lineare Indikatoren
In diesem Artikel werde ich versuchen, einige Möglichkeiten zur Erstellung nichtlinearer Indikatoren und deren Verwendung im Handel zu besprechen. In der MetaTrader-Handelsplattform gibt es eine ganze Reihe von Indikatoren, die nicht-lineare Ansätze verwenden.
DoEasy. Steuerung (Teil 31): Scrollen des Inhalts des ScrollBar-Steuerelements
In diesem Artikel werde ich die Funktionsweise des Scrollens des Inhalts des Containers mithilfe der Schaltflächen der horizontalen Bildlaufleiste implementieren.
Zeitreihen in der Bibliothek DoEasy (Teil 50): Verschieben der Standardindikatoren für mehrere Symbole und Perioden
In diesem Artikel wollen wir die Bibliotheksmethoden für die korrekte Anzeige von Mehrsymbol- und Mehrperioden-Standardindikatoren verbessern, wobei die Linien auf dem aktuellen Symbol-Chart mit einer in den Einstellungen festgelegten Verschiebung angezeigt werden. Außerdem sollten wir die Methoden für die Arbeit mit Standardindikatoren in Ordnung bringen und den redundanten Code für den Bibliotheksbereich im endgültigen Indikatorprogramm entferne.
DoEasy. Dienst-Funktionen (Teil 1): Preismuster
In diesem Artikel werden wir mit der Entwicklung von Methoden zur Suche nach Preismustern anhand von Zeitreihendaten beginnen. Ein Muster hat einen bestimmten Satz von Parametern, die für alle Arten von Mustern gelten. Alle Daten dieser Art werden in der Objektklasse des abstrakten Basismusters konzentriert. In diesem Artikel werden wir eine abstrakte Musterklasse und eine Pin Bar-Musterklasse erstellen.
MQL5 Handels-Toolkit (Teil 2): Erweiterung und Implementierung der Positionsmanagement EX5-Bibliothek
Erfahren Sie, wie Sie EX5-Bibliotheken in Ihren MQL5-Code oder Ihre Projekte importieren und verwenden können. In diesem Fortsetzungsartikel werden wir die EX5-Bibliothek erweitern, indem wir weitere Positionsmanagement-Funktionen zur bestehenden Bibliothek hinzufügen und zwei Expert Advisors erstellen. Im ersten Beispiel wird der Variable Index Dynamic Average Technical Indicator verwendet, um einen Expert Advisor für eine Trailing-Stop-Handelsstrategie zu entwickeln, während im zweiten Beispiel ein Handelspanel zum Überwachen, Öffnen, Schließen und Ändern von Positionen verwendet wird. Diese beiden Beispiele zeigen, wie die erweiterte EX5-Positionsmanagement-Bibliothek verwendet und implementiert werden kann.
Grafik in der Bibliothek DoEasy (Teil 78): Animationsprinzipien in der Bibliothek. Schneiden von Bildern
In diesem Artikel werde ich die Animationsprinzipien definieren, die in einigen Teilen der Bibliothek verwendet werden sollen. Außerdem werde ich eine Klasse entwickeln, mit der ein Teil des Bildes kopiert und an einer bestimmten Stelle des Formularobjekts eingefügt werden kann, wobei der Teil des Formularhintergrunds, über den das Bild gelegt werden soll, erhalten bleibt und wiederhergestellt wird.
Der Indikator CCI: Upgrade und neue Funktionen
In diesem Artikel werde ich mich mit der Möglichkeit befassen, den CCI-Indikator zu verbessern. Außerdem werde ich eine Änderung des Indikators vorstellen.
MQL als Darstellungsmittel für graphische Schnittstellen von MQL-Programmen. Teil 2
In diesem Beitrag wird die neue Konzeption zur Beschreibung der Fenster-Schnittstelle von MQL-Programmen anhand der Strukturen von MQL weiter überprüft. Die automatische Erstellung einer GUI auf der Grundlage des MQL-Markups bietet zusätzliche Funktionalität für die Zwischenspeicherung und dynamische Generierung der Elemente und die Steuerung der Stile und neuen Schemata für die Verarbeitung der Ereignisse. Beigefügt ist eine erweiterte Version der Standardbibliothek von Steuerelementen.
Grafik in der Bibliothek DoEasy (Teil 81): Integration von Grafiken in Bibliotheksobjekt
Es ist nun an der Zeit, die bereits erstellten Objekte in die zuvor erstellten Bibliotheksobjekte zu integrieren. Dadurch wird jedes Bibliotheksobjekt mit einem eigenen grafischen Objekt ausgestattet, das den Nutzern die Interaktion mit dem Programm ermöglicht.
DoEasy. Steuerung (Teil 26): Fertigstellung des WinForms-Objekts ToolTip und Weiterführung der Entwicklung der ProgressBar
In diesem Artikel werde ich die Entwicklung des ToolTip-Steuerelements abschließen und mit der Entwicklung des WinForms-Objekts der ProgressBar beginnen. Bei der Arbeit an Objekten werde ich universelle Funktionen für die Animation von Steuerelementen und deren Komponenten entwickeln.
Algorithmen zur Optimierung mit Populationen Fledermaus-Algorithmus (BA)
In diesem Artikel werde ich den Fledermaus-Algorithmus (Bat-Algorithmus, BA) betrachten, der gute Konvergenz bei glatten Funktionen zeigt.
Andere Klassen in der Bibliothek DoEasy (Teil 71): Ereignisse der Kollektion von Chartobjekten
In diesem Artikel werde ich die Funktionalität für die Verfolgung einiger Ereignisse von Chartobjekten erstellen — Hinzufügen/Entfernen von Symbolcharts und Chart-Unterfenstern, sowie Hinzufügen/Entfernen/Ändern von Indikatoren in Chart-Fenstern.
Algorithmen zur Populationsoptimierung Optimierung mit invasiven Unkräutern (IWO)
Die erstaunliche Fähigkeit von Unkräutern, unter verschiedensten Bedingungen zu überleben, wurde zur Idee für einen leistungsstarken Optimierungsalgorithmus. IWO (Invasive Weed Optimization) ist einer der besten Algorithmen unter den bisher geprüften.
DoEasy. Steuerung (Teil 30): Animieren des ScrollBar-Steuerelements
In diesem Artikel werde ich die Entwicklung des ScrollBar-Steuerelements fortsetzen und mit der Implementierung der Interaktionsfunktionen der Maus beginnen. Außerdem werde ich die Listen der Status-Flags der Maus und der Ereignisse erweitern.
Algorithmen zur Optimierung mit Populationen: Evolutionsstrategien, (μ,λ)-ES und (μ+λ)-ES
Der Artikel behandelt eine Gruppe von Optimierungsalgorithmen, die als Evolutionsstrategien (ES) bekannt sind. Sie gehören zu den allerersten Populationsalgorithmen, die evolutionäre Prinzipien für die Suche nach optimalen Lösungen nutzen. Wir werden Änderungen an den herkömmlichen ES-Varianten vornehmen und die Testfunktion und die Prüfstandsmethodik für die Algorithmen überarbeiten.
Zeitreihen in der Bibliothek DoEasy (Teil 57): Das Datenobjekt der Indikatorpuffer
Wir entwickeln in diesem Artikel ein Objekt, das alle Daten eines Puffers für einen Indikator enthalten wird. Solche Objekte werden für die Speicherung serieller Daten von Indikatorpuffern benötigt. Mit ihrer Hilfe wird es möglich sein, Pufferdaten beliebiger Indikatoren zu sortieren und zu vergleichen, sowie andere ähnliche Daten miteinander zu vergleichen.
Grafiken in der Bibliothek DoEasy (Teil 89): Programmieren von grafischen Standardobjekten, grundlegende Funktionsweise
Derzeit ist die Bibliothek in der Lage, Standard-Grafikobjekte auf dem Client-Terminal-Chart zu kontrollieren, einschließlich ihrer Entfernung und Änderung einiger ihrer Parameter. Derzeit fehlt die Möglichkeit, grafische Standardobjekte aus nutzerdefinierten Programmen zu erstellen.
Erstellen von selbstoptimierenden Expertenberatern in MQL5 (Teil 2): USDJPY Scalping Strategie
Seien Sie dabei, wenn wir uns heute der Herausforderung stellen, eine Handelsstrategie rund um das USDJPY-Paar zu entwickeln. Wir handeln Kerzenmuster, die auf dem täglichen Zeitrahmen gebildet werden, weil sie potenziell mehr Kraft hinter sich haben. Unsere anfängliche Strategie war gewinnbringend, was uns ermutigte, die Strategie weiter zu verfeinern und zusätzliche Sicherheitsschichten hinzuzufügen, um das gewonnene Kapital zu schützen.
DoEasy. Steuerung (Teil 24): Das WinForms-Hilfsobjekt für Hinweise
In diesem Artikel werde ich die Logik der Angabe der Basis- und Hauptobjekte für alle WinForms-Bibliotheksobjekte überarbeiten, ein neues Basisobjekt Hint für Hinweise und mehrere seiner abgeleiteten Klassen entwickeln, um die mögliche Richtung der Bewegung des Trennzeichens anzugeben.
Entwicklung eines Expert Advisors für mehrere Währungen (Teil 27): Komponente zur Anzeige von mehrzeiligem Text
Wenn Text in einem Chart angezeigt werden soll, können wir die Funktion „Comment()“ verwenden. Aber ihre Möglichkeiten sind recht begrenzt. Daher werden wir in diesem Artikel eine eigene Komponente erstellen – ein Dialogfenster über die gesamte Chartfläche, das mehrzeiligen Text mit flexiblen Schriftarteneinstellungen und Scroll-Unterstützung anzeigen kann.
Algorithmen zur Optimierung mit Populationen Fish School Search (FSS)
Fish School Search (FSS, Suche mittels Fischschulen) ist ein neuer Optimierungsalgorithmus, der durch das Verhalten von Fischen in einem Schwarm inspiriert wurde, von denen die meisten (bis zu 80 %) in einer organisierten Gemeinschaft von Verwandten schwimmen. Es ist erwiesen, dass Fischansammlungen eine wichtige Rolle für die Effizienz der Nahrungssuche und den Schutz vor Räubern spielen.
Die visuelle Programmiersprache DRAKON - Kommunikationswerkzeug für MQL-Entwickler und Kunden
DRAKON ist eine visuelle Programmiersprache, die entwickelt wurde, um die Interaktion zwischen Fachleuten aus verschiedenen Bereichen (Biologen, Physiker, Ingenieure...) und Programmierern in russischen Raumfahrtprojekten (z.B. im Projekt für das wiederverwendbare Raumschiff Buran) zu vereinfachen. In diesem Artikel werde ich darüber sprechen, wie DRAKON die Erstellung von Algorithmen zugänglich und intuitiv macht, selbst wenn Sie noch nie mit Code in Berührung gekommen sind, und wie es für Kunden einfacher ist, ihre Gedanken zu erklären, wenn sie Handelsroboter bestellen, und für Programmierer, weniger Fehler bei komplexen Funktionen zu machen.
Zyklen und Forex
Zyklen sind in unserem Leben von großer Bedeutung. Tag und Nacht, Jahreszeiten, Wochentage und viele andere Zyklen unterschiedlicher Natur sind im Leben eines jeden Menschen präsent. In diesem Artikel werden wir uns mit den Zyklen auf den Finanzmärkten befassen.
Formulierung von dynamischen Multi-Pair EA (Teil 5): Scalping vs. Swing Handelsansätze
Dieser Teil befasst sich mit der Entwicklung eines dynamischen Multi-Pair Expert Advisors, der in der Lage ist, sich zwischen den Modi Scalping und Swing Trading anzupassen. Sie deckt die strukturellen und algorithmischen Unterschiede bei der Signalerzeugung, der Handelsausführung und dem Risikomanagement ab und ermöglicht es dem EA, Strategien auf der Grundlage des Marktverhaltens und der Nutzereingaben intelligent zu wechseln.
Algorithmen zur Optimierung mit Populationen Firefly-Algorithmus (FA)
In diesem Artikel werde ich die Optimierungsmethode des Firefly-Algorithmus (FA) betrachten. Dank der Änderung hat sich der Algorithmus von einem Außenseiter zu einem echten Tabellenführer entwickelt.
Entwicklung des Price Action Analysis Toolkit (Teil 33): Candle-Range Theory Tool
Verbessern Sie Ihr Marktverständnis mit der Candle-Range Theory Suite für MetaTrader 5, einer vollständig MQL5-nativen Lösung, die rohe Preisbalken in Echtzeit-Volatilitätsinformationen umwandelt. Die leichtgewichtige Bibliothek CRangePattern vergleicht die „True Range“ jeder Kerze mit einer adaptiven ATR und klassifiziert sie in dem Moment, in dem sie schließt. Der CRT-Indikator projiziert diese Klassifizierungen dann als scharfe, farbkodierte Rechtecke und Pfeile auf Ihr Chart, die sich verengende Konsolidierungen, explosive Ausbrüche und Verengungen der gesamten Spanne in dem Moment anzeigen, in dem sie auftreten.
Entwicklung eines Replay-Systems — Marktsimulation (Teil 07): Erste Verbesserungen (II)
Im letzten Artikel haben wir einige Korrekturen vorgenommen und Tests zu unserem Replay System hinzugefügt, um die bestmögliche Stabilität zu gewährleisten. Wir haben auch mit der Erstellung und Verwendung einer Konfigurationsdatei für dieses System begonnen.
Funktionsentwicklung mit Python und MQL5 (Teil I): Vorhersage gleitender Durchschnitte für weitreichende AI-Modelle
Die gleitenden Durchschnitte sind bei weitem die besten Indikatoren für die Vorhersage unserer KI-Modelle. Wir können unsere Genauigkeit jedoch noch weiter verbessern, indem wir unsere Daten sorgfältig transformieren. In diesem Artikel wird gezeigt, wie Sie KI-Modelle erstellen können, die in der Lage sind, weiter in die Zukunft zu prognostizieren, als Sie es derzeit tun, ohne dass Ihre Genauigkeit signifikant sinkt. Es ist wirklich bemerkenswert, wie nützlich die gleitenden Durchschnitte sind.
Entwicklung des Price Action Analysis Toolkit (Teil 27): Liquidity Sweep With MA Filter Tool
Das Verständnis der subtilen Dynamik hinter den Preisbewegungen kann Ihnen einen entscheidenden Vorteil verschaffen. Ein solches Phänomen ist der Liquidity Sweep, eine gezielte Strategie, mit der große Händler, insbesondere Institutionen, die Kurse durch wichtige Unterstützungs- oder Widerstandsniveaus drücken. Diese Niveaus fallen oft mit Gruppen von Stop-Loss-Aufträgen von Privatanlegern zusammen, wodurch Liquiditätslücken entstehen, die große Marktteilnehmer ausnutzen können, um große Positionen mit minimaler Abweichung einzugehen oder zu verlassen.
Zeitreihen in der Bibliothek DoEasy (Teil 58): Zeitreihen der Datenpuffer von Indikatoren
Zum Abschluss des Themas Arbeit mit Zeitreihen organisieren wir das Speichern, Suchen und Sortieren von Daten, die in Indikatorpuffern gespeichert sind, was die weitere Durchführung der Analyse auf der Grundlage von Werten der Indikatoren ermöglicht, die auf der Basis der Bibliothek in Programmen zu erstellen sind. Das allgemeine Konzept aller Kollektionsklassen der Bibliothek ermöglicht es, die benötigten Daten in der entsprechenden Kollektion leicht zu finden. Dementsprechend wird das Gleiche in der heute erstellten Klasse möglich sein.
Vom Neuling zum Experten: Umfassende Fehlersuche in MQL5
Die Problemlösung kann eine prägnante Routine für die Beherrschung komplexer Fertigkeiten, wie die Programmierung in MQL5, schaffen. Dieser Ansatz ermöglicht es Ihnen, sich auf die Lösung von Problemen zu konzentrieren und gleichzeitig Ihre Fähigkeiten zu entwickeln. Je mehr Probleme Sie lösen, desto mehr fortgeschrittenes Fachwissen erwerben Sie. Ich persönlich glaube, dass die Fehlersuche der effektivste Weg ist, das Programmieren zu beherrschen. Heute werden wir den Prozess der Codebereinigung durchgehen und die besten Techniken besprechen, um ein unordentliches Programm in ein sauberes, funktionales Programm zu verwandeln. Lesen Sie diesen Artikel und gewinnen Sie wertvolle Erkenntnisse.
Algorithmen zur Optimierung mit Populationen: Der Boids-Algorithmus
Der Artikel befasst sich mit dem Boids Algorithmus, der auf einzigartigen Beispielen für das Verhalten von Tierschwärmen basiert. Der Boids-Algorithmus wiederum dient als Grundlage für die Schaffung einer ganzen Klasse von Algorithmen, die unter dem Namen „Schwarmintelligenz“ zusammengefasst werden.
DoEasy. Steuerung (Teil 22): SplitContainer. Ändern der Eigenschaften des erstellten Objekts
In diesem Artikel werde ich die Möglichkeit implementieren, die Eigenschaften und das Aussehen des neu erstellten SplitContainer-Steuerelements zu ändern.
DoEasy. Steuerung (Teil 32): Horizontale ScrollBar, Scrollen mit dem Mausrad
In diesem Artikel werden wir die Entwicklung der Funktionalität des horizontalen Rollbalkenobjekts abschließen. Wir werden auch die Möglichkeit schaffen, den Inhalt des Containers durch Bewegen des Schiebereglers und Drehen des Mausrades zu scrollen, sowie Ergänzungen zur Bibliothek vornehmen, die die neue Auftragsausführungspolitik und die neuen Laufzeitfehlercodes in MQL5 berücksichtigen.
Künstlicher Bienenstock-Algorithmus (ABHA): Theorie und Methoden
In diesem Artikel geht es um den 2009 entwickelten Artificial Bee Hive Algorithm (ABHA). Der Algorithmus ist auf die Lösung kontinuierlicher Optimierungsprobleme ausgerichtet. Wir werden uns ansehen, wie ABHA sich vom Verhalten eines Bienenvolkes inspirieren lässt, in dem jede Biene eine einzigartige Aufgabe hat, die ihr hilft, Ressourcen effizienter zu finden.
Algorithmen zur Optimierung mit Populationen: Binärer genetischer Algorithmus (BGA). Teil II
In diesem Artikel befassen wir uns mit dem binären genetischen Algorithmus (BGA), der die natürlichen Prozesse modelliert, die im genetischen Material von Lebewesen in der Natur ablaufen.
Zeitreihen in der Bibliothek DoEasy (Teil 56): Nutzerdefiniertes Indikatorobjekt, das die Daten von Indikatorobjekten aus der Kollektion holt
In dem Artikel wird das Erstellen des nutzerdefinierten Indikatorobjekts für die Verwendung in EAs erklärt. Lassen Sie uns die Bibliotheksklassen leicht verbessern und Methoden hinzufügen, um Daten von Indikatorobjekten in EAs zu erhalten.
Eigenvektoren und Eigenwerte: Explorative Datenanalyse in MetaTrader 5
In diesem Artikel werden verschiedene Möglichkeiten untersucht, wie Eigenvektoren und Eigenwerte in der explorativen Datenanalyse eingesetzt werden können, um einzigartige Beziehungen in den Daten aufzudecken.