joaopedrodev / Profil
Wir haben die fortgeschrittene Verwendung von #define für die Metaprogrammierung in MQL5 erforscht, indem wir Entitäten erstellt haben, die Tabellen und Spaltenmetadaten (Typ, Primärschlüssel, Autoinkrement, Nullbarkeit usw.) darstellen. Wir haben diese Definitionen in TickORM.mqh zentralisiert, wodurch die Generierung von Metadatenklassen automatisiert und der Weg für eine effiziente Datenmanipulation durch den ORM geebnet wird, ohne dass SQL manuell geschrieben werden muss.
Wir erforschen, wie man Datenbanken in MQL5 mit den systemeigenen Funktionen der Sprache manipuliert. Wir decken alles ab, vom Erstellen, Einfügen, Aktualisieren und Löschen von Tabellen bis zum Import und Export von Daten, alles mit Beispielcode. Der Inhalt dient als solide Grundlage für das Verständnis der internen Mechanismen des Datenzugriffs und ebnet den Weg für die Diskussion von ORM, die wir in MQL5 aufbauen werden.
Wir haben ein System zur Unterdrückung von Protokollen in der Logify-Bibliothek erstellt. Es wird beschrieben, wie die Klasse CLogifySuppression das Konsolenrauschen durch Anwendung konfigurierbarer Regeln reduziert, um sich wiederholende oder irrelevante Meldungen zu vermeiden. Wir behandeln auch das externe Konfigurations-Framework, Validierungsmechanismen und umfassende Tests, um Robustheit und Flexibilität bei der Protokollerfassung während der Bot- oder Indikatorentwicklung zu gewährleisten.
Dieser Artikel zeigt, wie man die Verwendung der Logify-Bibliothek mit dem Builder-Muster und automatischen Standardkonfigurationen drastisch vereinfachen kann. Es erklärt die Struktur der spezialisierten Builder, wie man sie mit intelligenter Autovervollständigung verwendet und wie man ein funktionierendes Protokoll auch ohne manuelle Konfiguration sicherstellt. Es umfasst auch Anpassungen für MetaTrader 5 Build 5100.
In diesem achten Teil der Serie Meistern der Log-Einträge untersuchen wir die Implementierung mehrsprachiger Fehlermeldungen in Logify, einer leistungsstarken Protokollierungsbibliothek für MQL5. Sie lernen, wie Sie Fehler mit Kontext strukturieren, Meldungen in mehrere Sprachen übersetzen und Protokolle dynamisch nach Schweregrad formatieren können. Und das alles in einem sauberen, erweiterbaren und produktionsreifen Design.
Lernen Sie, wie man Logs direkt auf einem MetaTrader-Chart anzeigt, mit Rahmen, Titeln und automatischem Scrollen. In diesem Artikel zeigen wir Ihnen, wie Sie mit MQL5 ein visuelles Protokollsystem erstellen, das sich ideal für die Überwachung der Aktivitäten Ihres Roboters in Echtzeit eignet.
Dieser Artikel befasst sich mit der Verwendung von Datenbanken zur strukturierten und skalierbaren Speicherung von Protokollen. Es behandelt grundlegende Konzepte, wesentliche Operationen, Konfiguration und Implementierung eines Datenbank-Handlers in MQL5. Schließlich werden die Ergebnisse validiert und die Vorteile dieses Ansatzes für die Optimierung und effiziente Überwachung hervorgehoben.
Dieser Artikel verbessert die Logging-Bibliothek durch Hinzufügen von Formatierern durch die Klasse CIntervalWatcher zur Verwaltung von Ausführungszyklen, Optimierung mit Caching und Dateirotation, Leistungstests und praktischen Beispielen. Mit diesen Verbesserungen gewährleisten wir ein effizientes, skalierbares und anpassungsfähiges Protokollierungssystem für unterschiedliche Entwicklungsszenarien.
In diesem Artikel zeige ich Ihnen die grundlegenden Dateioperationen und wie Sie einen flexiblen Handler zur Anpassung konfigurieren. Wir werden die Klasse CLogifyHandlerFile aktualisieren, um Protokolle direkt in die Datei zu schreiben. Wir werden einen Leistungstest durchführen, indem wir eine Strategie für EURUSD eine Woche lang simulieren und bei jedem Tick Protokolle erstellen, mit einer Gesamtzeit von 5 Minuten und 11 Sekunden. Das Ergebnis wird in einem zukünftigen Artikel verglichen, in dem wir ein Caching-System zur Verbesserung der Leistung implementieren werden.
In diesem Artikel werden wir das Konzept der Handler in der Logging-Bibliothek erkunden, verstehen, wie sie funktionieren, und drei erste Implementierungen erstellen: Konsole, Datenbank und Datei. Wir werden alles von der grundlegenden Struktur der Handler bis hin zu praktischen Tests behandeln, um den Boden für ihre volle Funktionalität in zukünftigen Artikeln zu bereiten.
In diesem Artikel erfahren Sie, wie Sie Protokollformatierer in der Bibliothek erstellen und anwenden können. Wir werden alles sehen, von der grundlegenden Struktur eines Formatierers bis hin zu praktischen Implementierungsbeispielen. Am Ende des Kurses werden Sie über die notwendigen Kenntnisse verfügen, um Protokolle in der Bibliothek zu formatieren und zu verstehen, wie alles hinter den Kulissen funktioniert.
Willkommen zum Beginn einer neuen Reise! Dieser Artikel eröffnet eine spezielle Serie, in der wir Schritt für Schritt eine Bibliothek für die Logmanipulation erstellen, die auf diejenigen zugeschnitten ist, die in der Sprache MQL5 entwickeln.
In diesem letzten Teil unserer Connexus-Bibliotheksreihe haben wir uns mit der Implementierung des Observer-Patterns sowie mit wesentlichen Refactorings von Dateipfaden und Methodennamen beschäftigt. Diese Serie umfasst die gesamte Entwicklung von Connexus, das die HTTP-Kommunikation in komplexen Anwendungen vereinfachen soll.
In diesem Artikel setzen wir die Entwicklung der Bibliothek Connexus fort. In diesem Kapitel erstellen wir die Klasse CHttpClient, die für das Senden einer Anfrage und den Empfang eines Auftrags verantwortlich ist. Wir behandeln auch das Konzept von „Mocks“, wodurch die Bibliothek von der WebRequest-Funktion entkoppelt wird, was den Nutzern mehr Flexibilität bietet.
In diesem sechsten Artikel der Connexus-Bibliotheksreihe befassen wir uns mit einer vollständigen HTTP-Anfrage, wobei jede Komponente, aus der eine Anfrage besteht, behandelt wird. Wir werden eine Klasse erstellen, die den Anfrage als Ganzes repräsentiert, was uns helfen wird, die zuvor erstellten Klassen zusammenzuführen.
In diesem Artikel werden wir HTTP-Methoden und Status-Codes erklären, zwei sehr wichtige Elemente der Kommunikation zwischen Client und Server im Internet. Wenn Sie wissen, was die einzelnen Methoden bewirken, können Sie Ihre Anfragen präziser formulieren und dem Server mitteilen, welche Aktion Sie durchführen möchten, um die Effizienz zu steigern.
In diesem Artikel werden wir das Konzept des Body in HTTP-Anfragen untersuchen, das für das Senden von Daten wie JSON und Klartext unerlässlich ist. Wir besprechen und erklären, wie man es richtig mit den entsprechenden Kopfzeilen verwendet. Wir haben auch die Klasse ChttpBody eingeführt, die Teil der Connexus-Bibliothek ist und die Arbeit mit dem Body von Anfragen vereinfacht.
Wir entwickeln die Connexus-Bibliothek weiter. In diesem Kapitel wird das Konzept der Header im HTTP-Protokoll erläutert. Es wird erklärt, was sie sind, wozu sie dienen und wie man sie in Anfragen verwendet. Wir behandeln die wichtigsten Header, die bei der Kommunikation mit APIs verwendet werden, und zeigen praktische Beispiele, wie sie in der Bibliothek konfiguriert werden können.
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.