Qu'est-ce que les optimisations MT5 ?
Un worker Docker sur votre ordinateur exécute les optimisations MT5 et consulte régulièrement les commandes du tableau de bord.
Vous fournissez l'EA (.ex5), les grilles de paramètres (.set) et un compte MT5 chez un courtier (démo ou réel). Les résultats sont enregistrés dans le dossier reports de votre ordinateur et apparaissent comme passes et favoris dans le tableau de bord. Les portefeuilles société nécessitent le code source de l'EA de portefeuille pris en charge.
Cette fonctionnalité est auto-hébergée. PositionRelay n'exécute pas MetaTrader pour vous. Il n'y a pas d'optimiseur hébergé aujourd'hui.
Comment ça marche
L'image Docker publiée Wine + MetaTrader 5 s'exécute sur votre machine. Le heartbeat s'authentifie avec votre User ID PositionRelay, vérifie l'accès Ultimate et attend les commandes du tableau de bord.
Les résultats validés apparaissent sous Passed et Favorites. Les portefeuilles société exigent aussi le code source de l'EA de portefeuille pris en charge.
- Abonnez-vous à Ultimate et ouvrez Dashboard → Setup → MT5 Optimizations.
- Installez Docker et suivez l'assistant de configuration adapté à votre système.
- Montez Experts et SetFiles, écrivez optimizer.env et démarrez le conteneur.
- Vérifiez d'abord l'autorisation du courtier dans les logs de démarrage, puis que le worker est en ligne sur Dashboard → Optimizations.
- Configurez dates, symboles et stratégies, puis appuyez sur Start.
Prérequis
- Abonnement PositionRelay Ultimate actif.
- Un ordinateur x64 sous Windows, Linux ou macOS Intel avec Docker. Apple Silicon / ARM n'est pas pris en charge.
- Prévoyez assez de RAM et d'espace disque pour les ticks réels ; si vous utilisez Docker Desktop, réglez ses ressources dans les paramètres.
- Un compte MT5 chez un courtier, démo ou réel (identifiant, mot de passe, serveur).
- Votre propre EA compilé (.ex5). Les EA du Market MQL5 sont verrouillés par activation et ne s'exécutent pas.
- Fichiers .set sous SetFiles/Classic/<timeframe>, comme indiqué dans l'assistant.
Configuration Docker
L'installation pas à pas se trouve dans Dashboard → Setup → MT5 Optimizations. L'assistant affiche les dossiers, fichiers et commandes adaptés à votre système et renseigne votre User ID.
Où se trouvent vos fichiers : l'option 1 est un dossier sur votre ordinateur (C:\PositionRelay\optimizer sous Windows, $HOME/PositionRelay/optimizer sous Linux et macOS) contenant l'EA, les fichiers .set, Broker/servers.dat et optimizer.env. C'est aujourd'hui la seule option, et l'assistant l'utilise. L'option 2, l'envoi de l'EA, des fichiers .set et des variables d'environnement vers PositionRelay, arrive bientôt et se fera à vos propres risques.
Dans chaque ligne -v de Experts, SetFiles, Broker et reports, le chemin à gauche désigne le dossier de votre ordinateur et /data/... le chemin dans le conteneur. Si vos fichiers sont ailleurs, remplacez chaque chemin hôte complet, y compris la lettre du lecteur sous Windows. Changer --env-file ne modifie pas ces montages.
Dans un terminal MT5 déjà connecté, choisissez Fichier → Ouvrir le dossier des données. Copiez config/servers.dat dans le dossier Broker de l'optimiseur pour que Docker trouve votre courtier. Ne copiez pas accounts.dat. L'assistant indique le chemin exact.
Suivez l'assistant. Utilisez votre compte MT5 et ne retirez MT5_PASSWORD qu'après la mention « Broker login authorized » dans les logs.
Au premier démarrage, la connexion au courtier précède le heartbeat et peut prendre plusieurs minutes. Suivez les logs du conteneur. Après "Starting optimizer heartbeat", attendez quelques interrogations avant que le worker apparaisse en ligne sur Optimizations.
- Ne committez jamais optimizer.env.
- Experts et SetFiles sont montés en lecture seule ; reports est accessible en écriture.
- L'arbre MT5 et le cache de ticks vivent sur le volume nommé positionrelay-mt5.
Exécuter depuis le tableau de bord
Ouvrez Dashboard → Optimizations. Choisissez la plage de dates, les symboles, timeframes, stratégies, mode d'optimisation, solde et drawdown equity max. Activez éventuellement la robustesse après validation.
Start démarre un nouveau lot. Resume continue une exécution interrompue. Stop arrête le lot actif ; le worker reste en ligne. Clean efface les artefacts de cache du testeur sur l'hôte.
Le statut en direct se rafraîchit toutes les quelques secondes tant que la page est ouverte. Gardez le conteneur en marche pendant toute la durée du job.
Résultats, favoris et portefeuille
Les lignes Passed sont des survivants validés du lot. Marquez des favoris dans le tableau de bord ; le worker peut les synchroniser dans le dossier Favorites sur l'hôte.
Les portefeuilles société ne prennent actuellement en charge qu'un EA de portefeuille PositionRelay et nécessitent son code source, absent de l'image publique. Avec votre propre .ex5 compilé, vous pouvez optimiser, valider et choisir des favoris, mais pas construire de portefeuille.
Les reports sont enregistrés dans le dossier reports créé sur l'hôte.
Mettre à jour l'image
Pour vérifier si une nouvelle image est disponible, lancez docker pull ghcr.io/razvantomegea/position-relay-portfolio-optimizer:latest (commande Télécharger de l'assistant de configuration). Le statut du pull ne décrit que l'image locale—pas si le conteneur en cours l'utilise déjà. Comparez docker inspect --format '{{.Image}}' positionrelay-optimizer avec docker inspect --format '{{.Id}}' ghcr.io/razvantomegea/position-relay-portfolio-optimizer:latest. S'ils correspondent, laissez le conteneur tourner. S'ils diffèrent—ou si vous en avez déjà téléchargé une plus tôt et reporté la recréation—, attendez la fin de toute exécution en cours, puis recréez le conteneur avec les commandes de la dernière étape de l'assistant. L'image ne met à jour que le worker ; le volume conserve MT5 et le cache de ticks. Une nouvelle version de MT5 demande une mise à jour distincte.
Dépannage
- Worker reste hors ligne — confirmez qu'Ultimate est actif, que POSITIONRELAY_USER_ID correspond à Setup, et que docker logs montre le heartbeat.
- Connexion au courtier non confirmée — vérifiez Broker/servers.dat du terminal MT5 connecté, puis MT5_LOGIN, MT5_PASSWORD et MT5_SERVER. Retirez le mot de passe du fichier env seulement après "Broker login authorized".
- Wine peut afficher des messages fixme et des erreurs de bibliothèques graphiques lors de la première connexion. Ces lignes seules ne prouvent ni réussite ni échec. Cherchez "Broker login authorized" ou "broker login not confirmed", puis "Starting optimizer heartbeat". Le worker peut être en ligne malgré un échec de connexion au courtier.
- L'EA ne s'exécute pas — les EA achetés sur le Market sont verrouillés par activation. Utilisez votre propre .ex5 compilé.
- Plus d'espace / ticks lents — augmentez les ressources Docker Desktop et libérez de l'espace pour l'historique des ticks réels.
- Apple Silicon / ARM — non pris en charge. Utilisez un ordinateur x64.
- Commande échouée sur le tableau de bord — ouvrez docker logs -f positionrelay-optimizer pour l'erreur du worker.
