Erste Schritte mit MQL5 Algo Forge
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.
Nützliche Links:
Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/ru/articles/18518
Warnung: Alle Rechte sind von MetaQuotes Ltd. vorbehalten. Kopieren oder Vervielfältigen untersagt.
MQL5-Handelswerkzeuge (Teil 2): Verbesserung des interaktiven Handelsassistenten durch dynamisches, visuelles Feedback
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 62): Nutzung der Muster von ADX und CCI mit Reinforcement-Learning TRPO
Entwicklung des Price Action Analysis Toolkit (Teil 22): Korrelation Dashboard
Erstellen eines Handelsadministrator-Panels in MQL5 (Teil XI): Modernes Merkmal Kommunikationsschnittstelle (I)
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.


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
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.
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).
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!😁
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.