Discussion de l'article "MetaTrader 5 sur Linux" - page 32

 
Thiago Ferreira #:
wine-10.8-staging-tkg-ntsync

J'ai installé wine-10.8-staging-tkg-ntsync depuis Lutris sans tambourin. Le logiciel ProtonUp-Qt installe les builds WINE pour Lutris. Le mode Windows 10 est activé par défaut et je ne l'ai pas changé pour Windows 11. Ce n'est que pour l'installation de MicrosoftEdgeWebview2Setup.exe que j'ai essayé la compatibilité avec Windows 8.1.

 
Après avoir remarqué quelques incohérences dans le graphique lors du glissement de la souris dans les menus après l'installation de MT5 via Wine Staging, j'ai décidé de créer une VM avec Windows Server 2019 afin de ne plus avoir de problèmes avec ce dernier. J'ai désactivé toutes les fonctionnalités (ou presque) d'un Serveur et c'est devenu comme Windows 10 pour moi, mais avec l'avantage d'avoir le support des mises à jour pendant encore quelques années. Tant que je n'aurai pas de solution MT5 native pour Linux, mon premier choix devrait être les VM Windows.
 
En effet, l'intégration de versions plus récentes de Wine avec le mode windows 11 permet de contourner les problèmes de démarrage. Mais, maintenant, les tampons des indicateurs fléchés ne sont pas affichés sur les graphiques (du tout, même les indicateurs standards). La police Wingdins est présente et visible dans les autres applications. Et tout fonctionnait avant.
 
Ilya Filatov indicateurs fléchés ne sont pas affichés sur les graphiques (du tout, même les indicateurs standards). La police Wingdins est présente et visible dans les autres applications. Et tout fonctionnait avant.
Il s'est avéré que le terminal fonctionnait sans la police correctement écrite dans HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts dans le système, mais maintenant ce n'est plus le cas. Par conséquent, si les flèches sont manquantes, cela signifie que vous devez mettre de l'ordre dans la présence de la police wingding.ttf.
 

J'ai réussi à le faire fonctionner en suivant les étapes suivantes (je suis sur CachyOS) et je suis novice en linux

1. Installation de Bottles et création d'une bouteille (application)

2. J'ai téléchargé l'installation de mt5 windows depuis le site web original de mql5 (les autres versions donnaient des erreurs de proxy pendant l'installation).

3. Dans le bootle, le "runner" est "ge-proton10-25" que j'ai téléchargé depuis le bootle home (Preferences => Runners).

4. Dans les paramètres de la bouteille metatrader5, j'ai choisi windows 11.

5. Les dépendances du bootle que j'ai téléchargé sont : dotnet48 - allfonts - vcredist2019 - vcredist2015

6. Lancer le mt5.exe dans la bouteille de metatrader5 que je viens de créer

7. Ensuite, dans les paramètres de la bouteille, vous pouvez ouvrir un terminal, écrire "winecfg", dans la nouvelle fenêtre, allez dans graphics et réglez le "dpi" en fonction du zoom que vous voulez donner à votre mt5, le mien est à 96 (j'ai eu le même problème de zoom lorsque j'ai essayé de l'installer avec lucris, maintenant il fonctionne très bien).

C'est ce qui a fonctionné pour moi, j'ai essayé et codé différentes choses et cela semble fonctionner correctement.

 
@Federico Quintieri C'est la seule méthode qui a fonctionné pour moi. Je suis sur Ubuntu 24.0 LTS et j'ai essayé tellement d'options que rien n'a résolu le problème d'affichage du marché sur MT5. Ces étapes exactes ont résolu tous les problèmes. Merci beaucoup !
 
J'ai utilisé bottles, pure wine et playonelinux et rien de ce que j'installe ne fonctionne correctement dans bottles par exemple mais il ne charge pas les templates il a toujours des problèmes avec le market et donc j'ai du utiliser virtual box pour le pc le plus puissant installer windows sur les deux autres pc j'ai du revenir à windows en attendant que mql5 fasse une application qui fonctionne nativement sous linux.
 
Federico Quintieri #:

J'ai réussi à le faire fonctionner avec les étapes suivantes (je suis sur CachyOS) et je suis novice en linux.

1. Installation de Bottles et création d'une bouteille (application)

2. Téléchargement de l'installation mt5 windows depuis le site web original de mql5 (les autres versions donnaient des erreurs de proxy lors de l'installation).

3. Dans le bootle le "runner" est "ge-proton10-25" que j'ai téléchargé depuis le bootle home (Preferences => Runners)

4. Dans les paramètres de la bouteille metatrader5, j'ai changé pour windows 11.

5. Les dépendances du bootle que j'ai téléchargé sont : dotnet48 - allfonts - vcredist2019 - vcredist2015

6. Lancer le mt5.exe dans la bouteille de metatrader5 que je viens de créer

7. Ensuite, dans les paramètres de la bouteille, vous pouvez ouvrir un terminal, écrire "winecfg", dans la nouvelle fenêtre, allez dans "graphics" et réglez le "dpi" en fonction du zoom que vous voulez donner à votre mt5, le mien est à 96 (j'ai eu le même problème de zoom lorsque j'ai essayé de l'installer avec lucris, maintenant il fonctionne très bien).

C'est ce qui a fonctionné pour moi, j'ai essayé et codé différentes choses et cela semble fonctionner correctement.

Merci beaucoup. J'ai eu du mal avec ça pendant près de 3 semaines même en utilisant des bouteilles. en utilisant vos proton runners tout se passe bien. merci beaucoup. plus besoin d'un vps wndows très cher maintenant. lol
 

Le script d'installation fonctionne. Le trading fonctionne également, ainsi que l'exécution de MT5 avec des indicateurs de base.

Mais il y a déjà quelques problèmes car tous les indicateurs ne sont pas créés égaux. Certains ont une fenêtre de configuration différente et tous ne permettent pas de changer les couleurs. En effet, le sélecteur de couleurs ne s'ouvre pas. Vous pouvez cependant changer la période.

Essayez les canaux du dossier Custom Indicators inclus : vous ne pouvez pas changer les couleurs sur les canaux.

Ce qu'il ne peut pas faire non plus, c'est créer et manipuler plusieurs objets graphiques via un Expert. Il ne fonctionne pas avec n'importe quelle combinaison de bouteilles parce qu'il ne fonctionne pas avec le script d'installation.

:-|
 
#include <ChartObjects/ChartObjectsShapes.mqh>

CChartObjectRectangle   m_rect[];


bool IsFirstRun=true;

//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'expert|
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   ArrayResize(m_rect,4);
   for(int i=0;i<ArraySize(m_rect);i++)
     {
      if(!(m_rect[i].Create(0,"Profit",0,0,0,0,0)
       ))
      Print("Test Rectangle objects creation failed!");

   else
      PrintFormat("Test Rectangle%d creation succeeded",i);
     }
   

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Fonction de désinitialisation de l'expert|
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   for(int i=0;i<ArraySize(m_rect);i++)
     {
      if(m_rect[i].Delete())PrintFormat("Test Rectangle%d deleted",i);
      else PrintFormat("Test Rectangle%d removal failed",i);
     }
  }
//+------------------------------------------------------------------+
//| Fonction de tic-tac expert|
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(IsFirstRun || IsNewBar())
     {
      int barShift=0;
      for(int i=0;i<ArraySize(m_rect);i++)
        {
         if(!m_rect[i].SetPoint(0,iTime(_Symbol,_Period,barShift),SymbolInfoDouble(_Symbol,SYMBOL_ASK))) PrintFormat("Point %d, %d Setting failed",i,0); else PrintFormat("Point %d, %d Setting succeeded",i,0);
         barShift+=10;
         if(!m_rect[i].SetPoint(1,iTime(_Symbol,_Period,barShift),SymbolInfoDouble(_Symbol,SYMBOL_ASK)+0.003))PrintFormat("Point %d, %d Setting failed",i,1); else PrintFormat("Point %d, %d Setting succeeded",i,1);
        }
      

      IsFirstRun=false;
     }
  }

bool IsNewBar()
  {
   bool result=false;
   static datetime newBar=0;
   datetime currBar = iTime(_Symbol,_Period,0);
   if(newBar!=currBar)
     {
      result=true;
      newBar=currBar;
     }
   return result;
  }

Cet EA de test doit afficher quatre rectangles en ligne lorsqu'il est lancé sur un graphique EURUSD. Seul le dernier rectangle est visible. J'ai également eu des problèmes pour changer la couleur et le remplissage des rectangles, ce qui m'a été signalé lorsque j'ai essayé de construire un petit EA avec deux rectangles et quelques boutons. Les boutons n'étaient pas visibles non plus.

Curieusement, l'Expert test"Controls" affiche parfaitement tous les boutons.

Dans les bouteilles, j'ai essayé de résoudre le problème en installant différentes dépendances, notamment directx, car je me souviens avoir pensé que directx pourrait avoir quelque chose à voir avec les objets graphiques de MT5, mais je ne suis pas sûr que ce soit exact.