Benutzerdefinierte grafische Bedienelemente. Teil 2. Bibliothek von Bedienelementen
Der zweite Beitrag der Serie "Benutzerdefinierte grafische Bedienelemente" führt eine Bibliothek von Bedienelementen für den Umgang mit den wichtigsten Problemen ein, die bei der Interaktion zwischen einem Programm (Expert Advisor, Script, Indikator) und einem Benutzer auftreten. Die Bibliothek enthält zahlreiche Klassen (CInputBox, CSpinInputBox, CCheckBox, CRadioGroup, CVSсrollBar, CHSсrollBar, CList, CListMS, CComBox, CHMenu, CVMenu, CHProgress, CDialer, CDialerInputBox, CTable) und Beispiele für ihren Gebrauch.
HTTP und Connexus (Teil 2): Verstehen der HTTP-Architektur und des Bibliotheksdesigns
Dieser Artikel befasst sich mit den Grundlagen des HTTP-Protokolls und behandelt die wichtigsten Methoden (GET, POST, PUT, DELETE), Statuscodes und die Struktur von URLs. Darüber hinaus wird der Beginn des Aufbaus der Conexus-Bibliothek mit den Klassen CQueryParam und CURL vorgestellt, die die Manipulation von URLs und Abfrageparametern in HTTP-Anfragen erleichtern.
Berechnung mathematischer Ausdrücke (Teil 1). Ein Parser mit rekursivem Abstieg
Der Artikel behandelt die Grundprinzipien der Analyse und Berechnung mathematischer Ausdrücke. Wir werden Parser mit rekursivem Abstieg implementieren, die im Interpreter- und beschleunigtem Berechnungsmodus arbeiten und auf einem vorgefertigten Syntaxbaum basieren.
Die Vorteile von MQL5 Signalen
Mit dem unlängst in MetaTrader 5 vorgestellten "Handelssignale"-Service können Händler die Handelsabläufe jedes beliebigen Signale-Anbieters kopieren. Nutzer können jedes Signal auswählen und es abonnieren, und alle Abschlüsse werden in ihre Konten kopiert. Signale-Anbieter können die Preise für ihre Abonnements festlegen und erhalten von den Abonnenten eine feste Monatsgebühr.
Wie Sie mit den MetaTrader AppStore und Handelssignalen-Services Geld verdienen können, ohne Verkäufer oder Anbieter zu sein
Auf MQL5.com können Sie direkt Geld verdienen, ohne dazu Verkäufer von Market-Anwendungen oder ein profitabler Signale-Anbieter sein zu müssen. Wählen Sie die Produkte, die Ihnen gefallen und stellen auf verschiedenen Webressourcen entsprechende Links dazu ein. Ziehen Sie potenzielle Kunden an und der Gewinn gehört Ihnen!
Auswahl- und Navigationsprogramm in MQL5 und MQL4: Hinzufügen einer automatischen Suche nach Mustern und das Darstellen der gefundenen Symbole
In diesem Artikel fahren wir fort, die Funktionen des Hilfsprogramms zum Sammeln und Navigieren durch Symbole zu erweitern. Diesmal werden wir neue Registerkarten (Tabs) erstellen, die nur die Symbole anzeigen, die einige der benötigten Parameter erfüllen, und herausfinden, wie man einfach nutzerdefinierte Registerkarten mit den notwendigen Sortierregeln hinzufügen kann.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXXIII): Schwebende Handelsanfragen - Schließen von Positionen unter bestimmten Bedingungen
Wir setzen die Entwicklung der Bibliotheksfunktionalität fort, die den Handel mit schwebenden Anfragen ermöglicht. Wir haben bereits das Senden von bedingten Handelsanfragen für die Eröffnung von Positionen und die Platzierung von Pending Orders implementiert. Im aktuellen Artikel werden wir die bedingte Schließung von Positionen implementieren - vollständig, teilweise und das Schließen durch eine entgegengesetzte Position.
Erstellung und Ausgabe von Handelsberichten sowie Mitteilungsversand per SMS
Börsenhändler haben nicht immer Zeit und Lust stundenlang an Ihrem Ausgabegerät für Geschäftsvorgänge zu sitzen. Besonders dann nicht, wenn ihre Handelssysteme mehr oder weniger formelgestützt arbeiten und in der Lage sind, einige Marktlagen automatisch zu erkennen. In diesem Beitrag wird beschrieben, wie man einen Bericht über Handelsergebnisse mithilfe eines Expert-Systems, eines Indikators oder eines Skripts in Form einer Datei im HTML-Format erstellt und mittels FTP auf einen Webserver lädt. Überdies wird die Frage des Versandes von Mitteilungen über Handelsereignisse per E-Mail sowie per SMS an Mobiltelefone erörtert.
LifeHack für Trader: Der vergleichende Bericht über einige Tests
Im Artikel wird der Test des EAs betrachtet, der zugleich auf 4 verschiedenen Symbolen gestartet wird. Der endgültige Vergleich der 4 Testberichte wird in einer Tabelle aufgeführt, genauso wie bei einer Auswahl der Waren in einem Internet-Geschäft. Als zusätzlicher Bonus kommen dazu die automatisch erstellten Grafiken der Verteilung für jedes Symbol.
Lernen Sie, wie man ein Handelssystem mit dem Volumen entwickelt
Hier ist ein neuer Artikel aus unserer Serie darüber, wie man ein Handelssystem basierend auf den beliebtesten technischen Indikatoren entwirft. Der aktuelle Artikel widmet sich dem Volumes-Indikator. Volumen als Konzept ist einer der sehr wichtigen Faktoren beim Handel an den Finanzmärkten, und wir müssen darauf achten. In diesem Artikel lernen wir, wie man ein einfaches Handelssystem nach dem Volumenindikator entwirft.
Die Muster, die beim Handeln der Währungskörbe erreichbar sind
In Folge des letzten Artikels über die Prinzipien des Handelns der Währungskörbe werden die Muster betrachtet, die ein Trader selbst finden kann. Es wurden positive und negative Seiten jedes Musters betrachtet und es gibt Hinweise bezüglich ihrer Verwendung. Als Mittel für die Analyse wurden die Indikatoren verwendet, die aufgrund des Indikators Williams erstellt sind.
Grafisches Interface XI: Texteingabefelder und Kombinationsfelder in Tabellenzellen (build 15)
Diese Aktualisierung der Bibliothek versieht das Tabellensteuerelement (die Klasse CTable) mit neue Optionen. Die Palette der Steuerelemente in den Tabellenzellen wird erweitert, diesmal um Textbearbeitungs- und Kombinationsfelder. Dieses Aktualisierung führt auch die Möglichkeit ein, das Fenster einer MQL-Anwendung zur Laufzeit in der Größe zu ändern.
Verbesserte Erkennung von Kerzenmustern am Beispiel des Doji
Wie kann man mehr Kerzenmuster als üblich finden? Hinter der Einfachheit von Kerzenmustern verbirgt sich auch ein schwerwiegender Nachteil, der durch die Nutzung der erheblich erweiterten Möglichkeiten moderner Handelsautomatisierungs-Tools beseitigt werden kann.
Kann Heiken-Ashi in Kombination mit gleitenden Durchschnitten gute Signale liefern?
Kombinationen von Strategien können bessere Chancen bieten. Wir können Indikatoren oder Muster miteinander kombinieren, oder noch besser, Indikatoren mit Mustern, sodass wir einen zusätzlichen Bestätigungsfaktor erhalten. Gleitende Durchschnitte helfen uns, den Trend zu bestätigen und zu verfolgen. Sie sind die bekanntesten technischen Indikatoren, und das liegt an ihrer Einfachheit und ihrer erwiesenen Fähigkeit, einen Mehrwert für Analysen zu schaffen.
Die rechnerische Fähigkeiten von MATLAB 2018 im MetaTrader 5 nutzen
Nach dem Upgrade des MATLAB-Pakets im Jahr 2015 ist es notwendig, auf eine moderne Art der Erstellung von DLL-Bibliotheken umzustellen. Der Artikel veranschaulicht anhand eines exemplarischen prädiktiven Indikators die Besonderheiten der Verknüpfung von MetaTrader 5 und MATLAB mit modernen 64-Bit-Versionen der Plattformen, die heute genutzt werden. Mit der gesamten Verbindungssequenz von MATLAB können MQL5-Entwickler Anwendungen mit erweiterten Rechenfunktionen viel schneller erstellen und so "Fallstricke" vermeiden.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXIV): Handelsklassen - automatische Korrektur ungültiger Parametern
In diesem Artikel werden wir einen Blick auf die Behandlung ungültiger Handelsparameter werfen und die Handelsereignisklasse verbessern. Jetzt werden alle Handelsereignisse (sowohl einzelne als auch die gleichzeitig bei einem Tick auftretenden) in Programmen korrekt definiert.
Verstehen der MQL5 Objektorientierte Programmierung (OOP)
Als Entwickler müssen wir lernen, Software zu erstellen und zu entwickeln, die wiederverwendbar und flexibel ist, ohne dass Code dupliziert wird, vor allem, wenn wir verschiedene Objekte mit unterschiedlichen Verhaltensweisen haben. Dies kann durch die Verwendung objektorientierter Programmiertechniken und -prinzipien reibungslos erfolgen. In diesem Artikel werden wir die Grundlagen der objektorientierten Programmierung von MQL5 vorstellen, um zu verstehen, wie wir die Prinzipien und Praktiken dieses wichtigen Themas in unserer Software nutzen können.
Erstellen eines EA, der automatisch funktioniert (Teil 15): Automatisierung (VII)
Zum Abschluss dieser Artikelserie über Automatisierung werden wir das Thema des vorangegangenen Artikels weiter erörtern. Wir werden sehen, wie alles zusammenpassen wird, damit der EA wie ein Uhrwerk läuft.
Ein Indikator zum Anlegen eines Kagi-Diagramms
In diesem Beitrag wird ein Indikator für ein Kagi-Diagramm nebst unterschiedlicher Darstellungsvarianten und Zusatzfunktionen vorgestellt. Darüber hinaus werden die Abbildungsgrundlagen des Indikators sowie die Möglichkeiten zu seiner Umsetzung in MQL5 betrachtet. Die verbreitetsten Fälle seiner Umsetzung im Börsenhandel werden ebenfalls aufgeführt: die Strategie zum Wechsel von Yin und Yang, das „Abstoßen“ von der Trendlinie sowie die anhaltende Verbreiterung der „Schultern“ / Verjüngung der „Taillen“.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXV): Behandlung der Fehlermeldungen von Server
Nachdem wir einen Handelsauftrag an den Server gesendet haben, müssen wir die Fehlercodes oder das Fehlen von Fehlern überprüfen. In diesem Artikel werden wir die Behandlung von Fehlern, die vom Handelsserver zurückgegeben werden, besprechen und die Erstellung von ausstehenden Handelsanfragen vorbereiten.
Alles, was Sie über die MQL5-Programmstruktur wissen müssen
Jedes Programm in jeder Programmiersprache hat eine bestimmte Struktur. In diesem Artikel lernen Sie wesentliche Teile der MQL5-Programmstruktur kennen, indem Sie die Programmiergrundlagen jedes Teils der MQL5-Programmstruktur verstehen, die bei der Erstellung unseres MQL5-Handelssystems oder -Handelswerkzeugs, das im MetaTrader 5 ausführbar ist, sehr hilfreich sein können.
Den Ballast selbstgemachter "dynamischer Programmbibliotheken" loswerden
Wenn der Funktionsumfang der Programmiersprache MQL5 zur Erfüllung bestimmter Aufgaben nicht ausreicht, muss sich ein MQL5-Programmierer weiterer Hilfsmittel bedienen. Ein Weg besteht im Wechsel zu einer anderen Programmiersprache und dem Anlegen einer zwischengelagerten dynamischen Programmbibliothek (DLL). MQL5 bietet die Möglichkeit, unterschiedliche Datenarten abzubilden und sie an eine Programmierschnittstelle (API) weiterzugeben, leider ist MQL5 jedoch nicht in der Lage, das Problem des Auszugs von Daten aus einer zugelassenen Speicheradresse zu lösen. In diesem Beitrag wollen wir auf jedes „i“ einen Punkt setzen und einige einfache Mechanismen für den Austausch und die Arbeit mit komplexen Datenarten vorstellen.
Die Wahrscheinlichkeitstheorie für den Handel von Kurslücken verwenden
In diesem Artikel werden wir die Wahrscheinlichkeitstheorie und die mathematischen Methoden der Statistik für das Erstellen und Testen von Handelsstrategien anwenden. Wir werden auch nach einem optimalen Handelsrisiko suchen, indem wir die Unterschiede zwischen dem Preis und dem Random Walk nutzen. Es ist bewiesen, dass, wenn sich die Preise wie ein Random Walk mit Null-Drift verhalten (ohne Richtungswechsel), ein profitabler Handel unmöglich ist.
Markttheorie
Eine logisch vollständige Markttheorie, die alle Arten und Sorten der Märkte für Waren und Dienstleistungen, Mikro und Makro Märkte sowie Forex abdecken würde, stand bisher nicht zur Verfügung. Dieser Artikel behandelt den Kern einer neuen Markt-Theorie, die auf der Gewinnanalyse basiert. Sie enthüllt Muster der aktuellen Kursbewegung und das Prinzip, dass es einem Kurs erlaubt, seinen optimalen Wert durch das Bilden von einer Kette von virtuellen Kursen zu finden, welche einen kontrollierenden Einfluss auf den aktuellen Kurs haben können. Die Mechanismen der Bildung und Veränderung von Markttrends werden hier auch identifiziert.
Risikobewertung durch die Abfolge von Positionen von Finanzanlagen. Fortsetzung
Der Artikel entwickelt die im vorhergehenden Teil vorgeschlagenen Ideen und führt sie weiter aus. Er beschreibt die Probleme der Ertragsverteilung, der grafischen Darstellung und untersucht statistische Gesetzmäßigkeiten.
Verwendung eines Cloud-Speichers für den Datenaustausch zwischen Terminals
Immer beliebter werden die wolkigen Technologien. Sowohl kostenpflichtige, als auch kostenfreie Speicher stehen uns zur Verfügung. Können wir sie im Traiding verwenden? In diesem Artikel wird die Technologie für den Datenaustausch zwischen Terminals durch die Verwendung wolkiger Speichers angeboten.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXXII): Schwebende Handelsanfragen - Orders unter bestimmten Bedingungen platzieren
Wir setzen die Entwicklung der Funktionsweisen fort, die es den Benutzern ermöglicht, mit schwebenden Anfragen zu handeln. In diesem Artikel werden wir die Möglichkeit einführen, Pending-Orders unter bestimmten Bedingungen zu platzieren.
Kontinuierliche Walk-Forward-Optimierung (Teil 6): Logikteil und die Struktur des Auto-Optimizers
Wir haben bereits früher die Schaffung einer automatischen Walk-Forward-Optimierung in Betracht gezogen. Dieses Mal werden wir zur internen Struktur des Auto-Optimizers übergehen. Der Artikel wird für all diejenigen nützlich sein, die mit dem erstellten Projekt weiterarbeiten und es modifizieren möchten, sowie für diejenigen, die die Programmlogik verstehen möchten. Der aktuelle Artikel enthält UML-Diagramme, die die interne Struktur des Projekts und die Beziehungen zwischen den Objekten darstellen. Er beschreibt auch den Prozess des Optimierungsstarts, enthält jedoch keine Beschreibung des Implementierungsprozesses des Optimizers.
Grafische Interfaces VIII: Das Datei-Navigator Control (Kapitel 3)
In den vorherigen Kapiteln des 8 Teils dieser Serie, haben wir unsere Bibliothek um mehrere Klassen für die Entwicklung von Mauszeigern, Kalendern und Baum-Ansichten erweitert. In dem aktuellen Artikel beschäftigen wir uns mit dem Datei-Navigator-Control, welcher auch als Teil eines grafischen Interfaces einer MQL Anwendung verwendet werden kann.
Matrizen und Vektoren in MQL5
Durch die Verwendung der speziellen Datentypen 'matrix' und 'vector' ist es möglich, Code zu erstellen, der der mathematischen Notation sehr nahe kommt. Mit diesen Methoden müssen Sie keine verschachtelten Schleifen erstellen oder auf die korrekte Indizierung von Arrays in Berechnungen achten. Die Verwendung von Matrix- und Vektormethoden erhöht daher die Zuverlässigkeit und Geschwindigkeit bei der Entwicklung komplexer Programme.
Fertige Vorlagen für die Einbindung von Indikatoren in Expert Advisors (Teil 2): Volumen- und Bill-Williams-Indikatoren
In diesem Artikel werden wir uns mit den Standardindikatoren der Kategorie Volumen und den Indikatoren von Bill Williams beschäftigen. Wir werden gebrauchsfertige Vorlagen für die Verwendung von Indikatoren in EAs erstellen - Deklaration und Einstellung von Parametern, Initialisierung und Deinitialisierung von Indikatoren sowie Empfang von Daten und Signalen aus Indikatorpuffern in EAs.
Unterstützen Sie Ihre Entwicklungsprojekte mit EX5-Bibliotheken
Indem Sie die Umsetzungsdetails von Klassen/Funktionen in einer .ex5-Datei verbergen, können Sie Ihre Know-how-Algorithmen mit anderen Entwicklern teilen, gemeinsame Projekte in die Wege leiten und sie im Internet bewerben. Und während das Team von MetaQuotes keine Mühen scheut, um die direkte Vererbung von ex5-Bibliotheksklassen zu ermöglichen, setzen wir sie jetzt schon um.
Die Behandlung der Ergebnisse der Optimierung mit einem grafischen Interface
Dies ist eine Fortsetzung der Idee der Verarbeitung und Analyse von Optimierungsergebnissen. Diesmal geht es darum, die 100 besten Optimierungsergebnisse auszuwählen und in einer GUI-Tabelle darzustellen. Der Benutzer kann eine Zeile in der Optimierungsergebnistabelle auswählen und erhält ein Saldo mehrerer Symbole und eine Drawdown-Grafik auf einer eigenen Seite.
Verständnis der Auftragsvergabe in MQL5
Bei der Entwicklung jedes Handelssystems gibt es eine Aufgabe, die wir effektiv bewältigen müssen. Diese Aufgabe besteht darin, Aufträge zu erteilen oder das erstellte Handelssystem automatisch mit Aufträgen umgehen zu lassen, da dies in jedem Handelssystem von entscheidender Bedeutung ist. Daher finden Sie in diesem Artikel die meisten Themen, die Sie über diese Aufgabe verstehen müssen, um Ihr Handelssystem in Bezug auf die Auftragsvergabe effektiv zu gestalten.
Lernen Sie, wie man ein Handelssystem nach Fibonacci entwickelt
In diesem Artikel setzen wir unsere Serie zur Erstellung eines Handelssystems auf der Grundlage des beliebtesten technischen Indikators fort. Hier ist ein neues technisches Werkzeug, das Fibonacci und wir werden lernen, wie man ein Handelssystem auf der Grundlage dieses technischen Indikators zu entwerfen.
Grafische Interfaces IV: Informierende Interface-Elemente (Kapitel 1)
Zum aktuellen Stand der Entwicklung, beinhaltet die Bibliothek für die Erzeugung von grafischen Interfaces ein Formular und verschiedene Steuerelemente (Controls), welche dem Formular hinzugefügt werden können. Wie zuvor schon erwähnt, sollte sich einer der zukünftigen Artikel mit dem Thema Multi-Window-Modus beschäftigen. Dafür liegt nun alles vor, und wir werden in dem folgenden Kapitel dieses Thema behandeln. In diesem Kapitel schreiben wir Klassen für die Erzeugung der Statusbar und des Tooltip-Elementes.
Einen technischen Indikator selber machen
In diesem Artikel gehe ich auf die Algorithmen ein, mit denen Sie Ihren eigenen technischen Indikator erstellen können. Sie werden lernen, wie man mit sehr einfachen Ausgangsannahmen ziemlich komplexe und interessante Ergebnisse erzielen kann.
Lernen Sie, wie Sie ein Handelssystem mit Hilfe der Envelopes entwickelt
In diesem Artikel werde ich Ihnen eine der Methoden vorstellen, wie man mit Bändern handeln kann. Dieses Mal werden wir uns mit Envelopes (Hüllkurve) beschäftigen und sehen, wie einfach es ist, einige Strategien auf der Grundlage der Envelopes zu erstellen.
Bibliothek für ein leichtes und schnelles Entwickeln vom Programmen für den MetaTrader (Teil XXXI): Schwebende Handelsanfragen - Positionseröffnung unter bestimmten Bedingungen
Ausgehend von diesem Artikel werden wir eine Funktionsweise entwickeln, die es den Benutzern ermöglicht, unter bestimmten Bedingungen mit schwebenden Anfragen zu handeln, z.B. bei Erreichen eines bestimmten Zeitlimits, Überschreiten eines bestimmten Gewinns oder Schließen einer Position durch Stop-Loss.
Grafische Interfaces V: Das ListView-Element (Kapitel 2)
In dem vorherigen Kapitel haben wir Klassen für die Erzeugung der vertikalen und horizontalen Scrollbar geschrieben. In diesem Kapitel werden wir diese implementieren. Wir werden eine Klasse für das Erzeugen eines ListView Elementes (Liste / Listenansicht) schreiben, bei der eine Komponente eine vertikale Scrollbar darstellt.