English Русский 中文 Español 日本語 Português 한국어 Français Italiano Türkçe
preview
Erste Schritte mit MQL5 Algo Forge

Erste Schritte mit MQL5 Algo Forge

MetaTrader 5Beispiele |
246 20
MetaQuotes
MetaQuotes

Die neue MQL5 Algo Forge ist mehr als nur eine Liste Ihrer Projekte – es ist ein vollwertiges soziales Netzwerk für Entwickler. Sie können Änderungen einfach nachverfolgen, die Projekthistorie pflegen, sich mit gleichgesinnten Fachleuten austauschen und neue Ideen entdecken. Hier können Sie interessanten Autoren folgen, Teams bilden und an algorithmischen Handelsprojekten mitarbeiten.  

MQL5 Algo Forge ist auf Git, dem modernen Versionskontrollsystem, aufgebaut. Es stattet jeden Entwickler mit einem leistungsstarken Toolset aus, um den Projektverlauf zu verfolgen, Entwicklungszweige zu erstellen, zu experimentieren und in Teams zu arbeiten. Aber wie funktioniert das alles? In diesem Artikel erklären wir Ihnen, wie Sie mit MQL5 Algo Forge loslegen können.


Was ist ein Repository in MQL5 Algo Forge?

Die Entwicklung von Software ist in der Regel ein langwieriger Prozess, der Zeit und Fehlersuche erfordert. Der Code muss nicht nur geschrieben und gepflegt, sondern auch sicher gespeichert werden. Moderne Handelsalgorithmen gehen weit über einfaches Kreuzen von gleitenden Durchschnitten hinaus. Sie beruhen auf mathematischen Bibliotheken, neuronalen Netzen und maschinellem Lernen. Das bedeutet, dass Entwickler eine bequeme Möglichkeit benötigen, um Änderungen schnell zu speichern und von überall auf aktuellen Code zuzugreifen. 

MQL5 Storage ist das integrierte Versionskontrollsystem von MetaEditor. Zuvor wurde Subversion 1.7 verwendet, ein zentralisiertes Versionskontrollsystem, bei dem der gesamte Verlauf auf den MetaQuotes-Servern gespeichert wurde. Ohne Internetverbindung konnten Sie keine Änderungen festschreiben, zu früheren Versionen zurückkehren oder den Verlauf einsehen. Heute ist sie vollständig durch eine leistungsfähigere und flexiblere Lösung ersetzt worden – MQL5 Algo Forge.

Jetzt funktioniert MQL5 Algo Forge anders:


MQL5 Algo Forge (Git-basiert) MQL5-Speicher (vorher)
Speicherung der Historie Lokal und in der Cloud Nur in der Cloud von MetaQuotes
Offline arbeiten Vollständig (Commits, Rollbacks, Diff) Begrenzt oder nicht verfügbar
Ausführungsgeschwindigkeit Sofort, lokal Abhängig vom Netzwerk/Server

Algo Forge gibt Ihnen Freiheit. Sie können offline an einem Training arbeiten, experimentelle Zweige erstellen, Zwischenergebnisse speichern und diese später in den Hauptzweig einfügen.

Ein Projekt-Repository in Algo Forge ist nicht nur ein Cloud-Ordner. Es ist ein strukturiertes Git-Repository, das auf Ihrem lokalen Laufwerk existiert und mit dem Cloud Server von MQL5 Algo Forge synchronisiert wird. Sie besteht aus mehreren Schichten:

Working Directory in MetaEditor

Ihre .MQ5-, .MQH-, .SET- und andere Dateien, die Sie in MetaEditor bearbeiten. Hier schreiben Sie Expert Advisor-Code, verbinden Indikatoren und testen Strategien. Solange Sie Änderungen nicht explizit hinzufügen, werden sie von Algo Forge nicht verfolgt.                                                                   

Staging Area (Index)

Bevor Sie Änderungen in der Projekthistorie speichern, sollten Sie diese vorbereiten. Mit dem Befehl „Git Add“ wählen Sie die Dateien aus, die in die nächste Übertragung aufgenommen werden sollen. Auf diese Weise können Sie Änderungen logisch gruppieren und beispielsweise Anpassungen an der Handelslogik getrennt von Aktualisierungen an der Schnittstelle oder der Konfiguration speichern.


Local Repository


Sobald Sie Änderungen mit „Git Commit“ übertragen, speichert Algo Forge einen Schnappschuss Ihrer Dateien im lokalen Repository auf Ihrem Computer. Sie können jederzeit frühere Versionen überprüfen, zu einem früheren Zustand zurückkehren oder analysieren, welche Änderungen die Leistung Ihres Expert Advisors beeinflusst haben.


Entferntes Repository in MQL5 Algo Forge


Wenn Sie fertig sind, können Sie die Übertragungen mit „Git Push“ auf den Server von MQL5 Algo Forge übertragen. Auf diese Weise wird ein sicheres Backup erstellt und Ihre Änderungen sind für alle Teammitglieder verfügbar. Selbst wenn Sie alleine arbeiten, ist dies nützlich: Ihr Code ist sicher in der Cloud gespeichert, und Ihre Projekthistorie bleibt intakt.


Wie man sich mit MQL5 Algo Forge verbindet

Um mit MQL5 Algo Forge arbeiten zu können, benötigen Sie lediglich ein MQL5-Konto. Melden Sie sich einfach mit Ihren Anmeldedaten unter https://forge.mql5.io/ an.  


Sobald Sie eingeloggt sind, können Sie alle Funktionen erkunden. Öffentliche Projekte sind im Bereich Explore verfügbar, wo Sie Projekte durchsuchen, ihren Code studieren, Ihre eigene Arbeit teilen und mit anderen zusammenarbeiten können.



Der größte Teil Ihrer Entwicklungsarbeit wird jedoch in der MetaEditor-Umgebung stattfinden. Um MetaEditor mit MQL5 Algo Forge zu verbinden, melden Sie sich einfach mit Ihren MQL5-Kontodaten unter der Registerkarte Community an.



Was ist Git und wie funktioniert es in MQL5 Algo Forge

Git ist ein Versionskontrollsystem, das aufzeichnet, wie Ihre Dateien zu verschiedenen Zeitpunkten aussahen. Es verhindert den Verlust wichtiger Änderungen, erleichtert das Rollback, unterstützt Verzweigungen für Experimente und ermöglicht die Zusammenarbeit mehrerer Entwickler an einem Projekt.

In MetaEditor arbeiten Sie nicht direkt mit Git-Befehlen – alles wird über eine nutzerfreundliche Oberfläche abgewickelt. Unter der Haube führt Git jedoch einige wichtige Vorgänge aus. Wir wollen sie aufschlüsseln und sehen, was passiert, wenn Sie die entsprechenden Befehle in MetaEditor verwenden.

Legen wir ein neues Projekt „Base_EA“ im Ordner public projects an.


Klicken Sie mit der rechten Maustaste auf die Projektdatei, um die verfügbaren Git-Befehle anzuzeigen.


1. Git Add File/Folder – Änderungen bereitstellen

Wenn Sie Dateien bearbeiten, verfolgt Git diese nicht automatisch. Um dem System mitzuteilen, dass Sie diese Änderungen speichern möchten, fügen Sie dem Index Dateien hinzu. Dies kann über „Git Add File/Folder“ oder bei der Auswahl von Dateien für eine Übertragung geschehen.

Git erstellt eine Momentaufnahme des aktuellen Zustands der Datei und bereitet sie für die Speicherung vor, z. B. indem Dokumente in einem Ordner „To be signed“ abgelegt werden.

2. Git Commit – Speichern eines Projekt-Snapshots

Wenn Sie in MetaEditor auf „Git Commit“ klicken, wird der aktuelle Stand Ihres Projekts erfasst und in der Versionsgeschichte gespeichert.

Das passiert folgendermaßen:

  • Git vergleicht Ihre Änderungen mit früheren Dateien.
  • Es werden nur die Unterschiede gespeichert (um Platz zu sparen).
  • Änderungen werden in einen ausgeblendeten .git-Ordner geschrieben. 
  • Die Übertragung erhält einen eindeutigen SHA-1-Bezeichner. 

Ein Commit ist im Wesentlichen ein Checkpoint, der zeigt, wie das Projekt zu diesem Zeitpunkt aussah. Sie können später jederzeit zu einem solchen Punkt zurückkehren und von dort aus weitermachen.

3. Git Push – Senden an die MQL5 Algo Forge Cloud

Wenn Sie „Git Push;“ wählen, werden Ihre lokalen Übertragungen auf den MQL5 Algo Forge-Server hochgeladen. 

Es ist, als würde man eine neue Version seines Projekts in die Cloud hochladen, allerdings mit einer vollständigen Änderungshistorie.

Der Einfachheit halber führt MetaEditor automatisch einen „Git Push“ direkt nach einem „Git Commit“ aus. Dadurch wird sichergestellt, dass Ihre aktuelle Version immer mit der Cloud synchronisiert wird. Wenn das Übertragen von Änderungen auf den Server aus irgendeinem Grund fehlschlägt, können Sie „Git Push“ manuell ausführen.

4. Git Pull – Abrufen der neuesten Version

Wenn Sie zusammenarbeiten, kann es sein, dass jemand anderes das Projekt vor Ihnen aktualisiert. Oder Sie übertragen Änderungen von einem Computer und setzen die Arbeit auf einem anderen fort (oder auf demselben Computer, aber in einem anderen Terminal). Um diese Aktualisierungen abzurufen, verwenden Sie „Git Pull“, das alle Änderungen aus der Forge abruft.

Git lädt die neuen Commits aus der Cloud herunter und führt sie mit Ihrer lokalen Version zusammen.

5. Git Branch – Sicheres Verzweigen und Experimentieren

Manchmal möchte man Ideen testen, ohne das Hauptprojekt zu beeinträchtigen. Dies kann über Zweige (branches) geschehen. Sie können zum Beispiel eine Zweig erstellen, um einen anderen Indikator zu testen oder einen Filter zu Ihrer Strategie hinzuzufügen. Jeder Zweig hat seinen eigenen Namen, und Sie können frei zwischen den Zweigen wechseln.

Ein Zweig ist einfach eine parallele Entwicklungslinie. Sie können so viel experimentieren, wie Sie wollen, und es dann entweder verwerfen oder in den Hauptzweig einbinden.


6. Git Difference – Überprüfung von Dateiänderungen

Dieser Befehl zeigt genau an, was in einer Datei geändert wurde (Zeile für Zeile), bevor sie übertragen wurde. Es öffnet ein Vergleichsfenster, in dem hinzugefügte, gelöschte oder geänderte Zeilen hervorgehoben werden.


7. Git Log – Anzeige der Projekthistorie

Der Befehl „Git Log“ listet alle Commits mit Datum, Autor und Commit-Nachricht auf. So erhalten Sie einen klaren Zeitplan für die Projektentwicklung und können verfolgen, wer was wann geändert hat.


8. Git Revert – Rückgängig machen einer Übertragung

„Git Revert“ erzeugt einen neuen Commit, der die Wirkung eines vorherigen Commits aufhebt, ohne diesen aus der Historie zu löschen. Dies ist der sicherste Weg, um Änderungen rückgängig zu machen. Aber es funktioniert nur mit der letzten Übertragung.

Dieser Befehl kann besonders nützlich sein, wenn Sie feststellen, dass ein Commit den Expert Advisor beschädigt hat – Sie können ihn schnell rückgängig machen, ohne dass andere Commits davon betroffen sind. Wenn der zurückgenommene Commit jedoch denselben Code wie spätere Commits betrifft, kann ein Merge-Konflikt entstehen, der manuell gelöst werden muss.


Sichere Praktiken für die Arbeit mit Projekten

Eines der häufigsten Probleme bei der Versionskontrolle sind Konflikte zwischen lokalen und entfernten Versionen. Um sie zu vermeiden, sollten Sie einfache Regeln befolgen: Immer zuerst laden. Wenn Sie ein Projekt öffnen, um weiterzuarbeiten, führen Sie „Git Pull“ aus, um sicherzustellen, dass Sie die neueste Version haben.

Eine weitere Regel lautet: Zuletzt immer committen + pushen. Wenn Sie Ihre Arbeit beendet haben, führen Sie „Git Commit“ (mit automatischem Push) aus, um Ihre Aktualisierungen an die Cloud zu senden. Wenn Sie diese Gewohnheiten befolgen, wird Ihr Arbeitsablauf reibungslos und konfliktfrei ablaufen, und Ihr Code ist stets sicher.


MQL5 Algo Forge – alles was Sie für ein zuverlässiges Projektmanagement benötigen

Sie müssen die Git-Befehle nicht manuell eingeben. Alles ist in MetaEditor integriert:

  • Adding files, committing und branching – über das Kontextmenü des Projekts.
  • Push und Pull – nur zwei Tasten für die Synchronisierung mit der Cloud.
  • Branch und Revert – einfache Befehle zur Entwicklungskontrolle.
  • Change history – verfügbar als übersichtliches, integriertes Protokoll.

Diese 8 Befehle sind alles, was Sie brauchen, um MQL5 Algo Forge sicher zu nutzen. Sie bieten strukturierte Entwicklung, sicheres Experimentieren, Unterstützung der Teamarbeit und vollständigen Schutz vor Datenverlust.



Beginnen Sie heute

MQL5 Algo Forge ist mehr als nur ein Speicher – es ist ein komplettes Projektmanagementsystem für algorithmische Händler. Damit können Sie jede Änderung nachverfolgen, ohne Risiko experimentieren, in Teams zusammenarbeiten und stabilen, zuverlässigen Code pflegen.

Während Git zu komplex wurde, macht MQL5 Algo Forge es wieder einfach. MetaEditor integriert die wichtigsten Befehle, sodass Sie sich auf das Schreiben von Code, das Speichern von Fortschritten und die Vorbereitung auf ein Rollback konzentrieren können.


Willkommen bei MQL5 Algo Forge!


Nützliche Links:

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/ru/articles/18518

Letzte Kommentare | Zur Diskussion im Händlerforum (20)
Yuriy Bykov
Yuriy Bykov | 5 Sept. 2025 in 12:33
Fernando Carreiro #:

Zu Testzwecken habe ich eine Beschreibung der Heikin Ashi-Publikation als README-Datei im Markdown-Format hinzugefügt und in das Repository übertragen.

Bitte prüfen Sie, ob Sie eine Benachrichtigung über diese Änderung erhalten haben und ob Sie den Fork aktualisieren können.

Ich habe dies in der Webschnittstelle des Repositorys gesehen:

Ich werde versuchen, den Fork später zu aktualisieren

Yuriy Bykov
Yuriy Bykov | 5 Sept. 2025 in 12:49
Fernando Carreiro #:

Zu Testzwecken habe ich eine Beschreibung der Heikin Ashi-Publikation als README-Datei im Markdown-Format hinzugefügt und in das Repository übertragen.

Bitte prüfen Sie, ob Sie eine Benachrichtigung über diese Änderung erhalten haben und ob Sie den Fork aktualisieren können.

Zunächst einmal hat mein lokaler Fork-Klon noch nicht den neuesten Commit:


Laut der Git-Dokumentation muss ich das ursprüngliche Repository verbinden:

Ich gehe auf die Weboberfläche des Forks und sehe dies:


Ich klicke auf die Schaltfläche "Sync" und mache dann einen Pull in MetaEditor:


Wie Sie sehen können, waren alle Ihre Commits sicher im Fork und dann nach Pull im Klon des Forks auf meinem lokalen Computer.

Auf dieser Dokumentationsseite gibt es noch andere Möglichkeiten, mit Konsolenbefehlen zu synchronisieren, aber ich habe sie nicht getestet, da alle Commits bereits synchronisiert sind.

Ich werde später mehr experimentieren, um zu sehen, wie sich der Commit- und Push-Befehl in MetaEditor für den Fork verhält. Ich frage mich, ob er versuchen wird, Änderungen auch an das ursprüngliche Repository zu senden.

Fernando Carreiro
Fernando Carreiro | 5 Sept. 2025 in 13:00
@Yuriy Bykov #:

Zunächst einmal hat mein lokaler Fork-Klon noch nicht den neuesten Commit:

Laut der Git-Dokumentation muss ich das Original-Repository verbinden:

Ich gehe auf die Weboberfläche des Forks und sehe dies:

Ich klicke auf die Schaltfläche "Sync" und führe dann einen Pull in MetaEditor durch:

Wie Sie sehen können, waren alle Ihre Commits sicher in der Fork und dann nach Pull in den Klon der Fork auf meinem lokalen Computer.

Auf dieser Seite der Dokumentation gibt es noch andere Möglichkeiten, mit Konsolenbefehlen zu synchronisieren, aber ich habe sie nicht getestet, weil alle Commits bereits synchronisiert sind.

Das ist alles schön und gut, aber Sie haben meinen Standpunkt bestätigt, dass ein "Clone" und ein "Fork" nicht dasselbe sind, und die Methode, die MetaQuotes übernommen hat, erfordert zusätzliche Eingriffe außerhalb von MetaEditor, nur um das Projekt synchronisieren zu können.

Ganz zu schweigen davon, daß für "Forks" zusätzlicher Speicherplatz auf den AlgoForge-Servern benötigt wird, während für einen "Clone" weder zusätzlicher Speicherplatz noch zusätzliche Schritte erforderlich sind.

Ich halte die MetaQuotes-Implementierungen für zu "fehlerhaft", um sie effektiv zu nutzen, und werde weiterhin einen externen Git-Client oder VSCode verwenden (was mit AlgoForge problemlos funktioniert).

Vladislav Boyko
Vladislav Boyko | 5 Sept. 2025 in 13:22
Fernando Carreiro #:
Ich halte die MetaQuotes-Implementierungen für zu "fehlerhaft", um sie effektiv zu nutzen, und werde weiterhin einen externen Git-Client oder VSCode verwenden (was mit AlgoForge problemlos funktioniert).

Wir freuen uns, Sie in unserer Gemeinschaft der Nutzer externer Git-Clients begrüßen zu dürfen!😁

Yuriy Bykov
Yuriy Bykov | 5 Sept. 2025 in 14:25
Fernando Carreiro #:

Ich finde die MetaQuotes-Implementierung zu "fehlerhaft", um sie effektiv zu nutzen, und werde weiterhin einen externen Git-Client oder VSCode verwenden (der mit AlgoForge problemlos funktioniert).

Leider ist dies im Moment tatsächlich der Fall. Auch ich ziehe es vor, im Moment einen externen Client zu verwenden. Aber wenn man vergleicht, was dem MetaEditor in den letzten 5 Monaten hinzugefügt wurde, ist es ein deutlicher Fortschritt. Es ist nur so, dass es vorher überhaupt keine Werkzeuge für die Arbeit mit dem neuen Repository gab, und jetzt gibt es zumindest eine solche reduzierte Version.

MQL5-Handelswerkzeuge (Teil 2): Verbesserung des interaktiven Handelsassistenten durch dynamisches, visuelles Feedback MQL5-Handelswerkzeuge (Teil 2): Verbesserung des interaktiven Handelsassistenten durch dynamisches, visuelles Feedback
In diesem Artikel aktualisieren wir unser Handelsassistenten-Tool durch Hinzufügen von Drag-and-Drop-Funktionen und Hover-Effekten, um die Oberfläche intuitiver und reaktionsschneller zu gestalten. Wir verfeinern das Tool zur Validierung von Echtzeit-Auftrags-Setups, um präzise Handelskonfigurationen im Verhältnis zu den Marktpreisen sicherzustellen. Wir führen auch Backtests dieser Verbesserungen durch, um ihre Zuverlässigkeit zu bestätigen.
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 62): Nutzung der Muster von ADX und CCI mit Reinforcement-Learning TRPO MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 62): Nutzung der Muster von ADX und CCI mit Reinforcement-Learning TRPO
Der ADX-Oszillator und der CCI-Oszillator sind Trendfolge- und Momentum-Indikatoren, die bei der Entwicklung eines Expert Advisors miteinander kombiniert werden können. Wir machen dort weiter, wo wir im letzten Artikel aufgehört haben, indem wir untersuchen, wie das Training in der Praxis und die Aktualisierung unseres entwickelten Modells dank des Verstärkungslernens erfolgen kann. Wir verwenden einen Algorithmus, den wir in dieser Serie noch behandeln werden, die sogenannte Trusted Region Policy Optimization (Optimierung vertrauenswürdiger Regionen). Und wie immer erlaubt uns die Zusammenstellung von Expert Advisors durch den MQL5-Assistenten, unser(e) Modell(e) zum Testen viel schneller und auch so einzurichten, dass es mit verschiedenen Signaltypen verteilt und getestet werden kann.
Entwicklung des Price Action Analysis Toolkit (Teil 22): Korrelation Dashboard Entwicklung des Price Action Analysis Toolkit (Teil 22): Korrelation Dashboard
Bei diesem Tool handelt es sich um ein Korrelations-Dashboard, das Korrelationskoeffizienten für mehrere Währungspaare in Echtzeit berechnet und anzeigt. Durch die Visualisierung, wie sich Paare im Verhältnis zueinander bewegen, fügt es Ihrer Preisaktionsanalyse wertvollen Kontext hinzu und hilft Ihnen, die Dynamik zwischen den Märkten zu antizipieren. Lesen Sie weiter, um seine Funktionen und Anwendungen kennenzulernen.
Erstellen eines Handelsadministrator-Panels in MQL5 (Teil XI): Modernes Merkmal Kommunikationsschnittstelle (I) Erstellen eines Handelsadministrator-Panels in MQL5 (Teil XI): Modernes Merkmal Kommunikationsschnittstelle (I)
Heute konzentrieren wir uns auf die Verbesserung der Messaging-Schnittstelle des Kommunikationspanels, um sie an die Standards moderner, leistungsstarker Kommunikationsanwendungen anzupassen. Diese Verbesserung wird durch eine Aktualisierung der Klasse CommunicationsDialog erreicht. Begleiten Sie uns in diesem Artikel und in der Diskussion, wenn wir die wichtigsten Erkenntnisse erkunden und die nächsten Schritte bei der Weiterentwicklung der Schnittstellenprogrammierung mit MQL5 skizzieren.