Discussão do artigo "MetaTrader 5 no Linux" - página 32

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

Eu instalei o wine-10.8-staging-tkg-ntsync a partir do Lutris sem nenhum problema. O software ProtonUp-Qt instala compilações WINE para o Lutris. O modo Windows 10 é definido por padrão e eu não o alterei para Windows 11. Apenas para instalar o MicrosoftEdgeWebview2Setup.exe, tentei a compatibilidade com o Windows 8.1.

 
Depois que percebi algumas inconsistências  no gráfico ao arrastar o mouse nos menus após instalar a MT5 pelo Wine Staging, decidi criar uma VM com Windows Server 2019 para não ter mais problemas com isso. Desativei todas as funcionalidades (ou quase todas) de um Server e ficou para mim como o Windows 10, mas com a vantagem de ter suporte de atualizações por mais alguns anos. Enquanto não tiver uma solução nativa da MT5 para Linux, a minha primeira opção deverá ser por VMs com Windows.
 
Ilya Filatov dos indicadores de seta não são exibidos nos gráficos (nem mesmo os indicadores padrão). A fonte Wingdins está presente e visível em outros aplicativos. E tudo funcionava antes.
Descobriu-se que o terminal costumava funcionar sem a fonte corretamente escrita em HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts no sistema, mas agora não funciona mais. Portanto, se as setas estiverem faltando, isso significa que você precisa arrumar a presença da fonte wingding.ttf.
 

Pois consegui fazê-lo funcionar com estas etapas (estou no CachyOS) e sou novo no Linux

1. Instalei o Bottles e criei uma garrafa (aplicativo)

2. Baixei a configuração do mt5 para Windows do site original do mql5 (outras versões apresentaram erros de proxy durante a instalação)

3. No bootle, o "runner" é "ge-proton10-25", que eu baixei da home do bootle (Preferences => Runners)

4. Nas configurações da garrafa do metatrader5, mudei para o Windows 11

5. As dependências do bootle que baixei são: dotnet48 - allfonts - vcredist2019 - vcredist2015

6. Executei o mt5.exe na garrafa do metatrader5 que acabei de criar

7. Em seguida, nas configurações da garrafa, você pode abrir um terminal, escrever "winecfg", na nova janela, ir para gráficos e ajustar o "dpi" com base em quanto zoom você quer seu mt5, o meu está em 96 (eu tive o mesmo problema de zoom quando tentei instalá-lo com lucris, agora ele funciona bem)

Isso foi o que funcionou para mim, estou tentando e codificando coisas diferentes e parece que está funcionando bem.

 
Esse é o único método que funcionou para mim. Estou usando o Ubuntu 24.0 LTS e tentei muitas opções, mas nada resolveu o problema de não exibição do mercado no MT5. Essas etapas exatas resolveram todos os problemas. Muito obrigado!
 
Já usei o bottles, o pure wine e o playonelinux e nada do que instalo roda bem no bottles, por exemplo, mas não carrega os modelos, sempre tem problemas com o market e, por isso, tive que usar o virtual box para o pc mais potente e instalar o windows nos outros dois pc, tive que voltar para o windows e estou esperando que a mql5 faça um aplicativo que rode nativamente no linux
 
Federico Quintieri #:

Pois consegui fazê-lo funcionar com estas etapas (estou no CachyOS) e sou novo no Linux

1. Instalei o Bottles e criei uma garrafa (aplicativo)

2. Baixei a configuração do mt5 para Windows do site original do mql5 (outras versões apresentaram erros de proxy durante a instalação)

3. No bootle, o "runner" é "ge-proton10-25", que eu baixei da home do bootle (Preferences => Runners)

4. Nas configurações da garrafa do metatrader5, mudei para o Windows 11

5. As dependências do bootle que baixei são: dotnet48 - allfonts - vcredist2019 - vcredist2015

6. Executei o mt5.exe na garrafa do metatrader5 que acabei de criar

7. Em seguida, nas configurações da garrafa, você pode abrir um terminal, escrever "winecfg", na nova janela, ir para gráficos e ajustar o "dpi" com base no nível de zoom que você deseja para o seu mt5, o meu está em 96 (tive o mesmo problema de zoom quando tentei instalá-lo com o lucris, agora ele funciona bem)

Isso foi o que funcionou para mim, estou tentando e codificando coisas diferentes e parece que está funcionando bem.

Muito obrigado. Estou lutando com isso há quase três semanas, mesmo usando garrafas. Usar seus corredores de prótons faz com que tudo funcione sem problemas. muito obrigado. não preciso mais de um vps wndows caro agora. rs
 

O script de instalação funciona. A negociação também funciona, assim como a execução do MT5 com indicadores básicos.

Mas já existem alguns problemas, pois nem todos os indicadores são iguais. Alguns têm uma janela de configuração diferente e nem todos permitem que você altere as cores. Porque o seletor de cores não abre. No entanto, você pode alterar o período.

Experimente os Channels da pasta Custom Indicators incluída: você não pode alterar as cores nos canais.

O que ele também não pode fazer é criar e manipular vários objetos gráficos por meio de um Expert. Ele não funciona com nenhuma combinação de Bottles porque não funciona com o script de instalação.

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

CChartObjectRectangle   m_rect[];


bool IsFirstRun=true;

//+------------------------------------------------------------------+
//| Função de inicialização de especialista|
//+------------------------------------------------------------------+
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);
  }
//+------------------------------------------------------------------+
//| Função de desinicialização de especialista|
//+------------------------------------------------------------------+
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);
     }
  }
//+------------------------------------------------------------------+
//| Função de tique de especialista|
//+------------------------------------------------------------------+
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;
  }

Esse EA de teste deve mostrar quatro retângulos em uma linha quando lançado em um gráfico EURUSD. Somente o último retângulo é visível. Também tive problemas para alterar as cores e o preenchimento dos retângulos. Isso me chamou a atenção quando estava tentando criar um pequeno EA com dois retângulos e alguns botões. Os botões também não estavam visíveis.

Estranhamente, o teste Expert"Controls" mostra todos os botões perfeitamente.

Em garrafas, tentei solucionar o problema instalando dependências diferentes, principalmente o directx, pois me lembro de ter pensado que o directx poderia ter algo a ver com os objetos gráficos do MT5, mas não tenho certeza se isso está correto.

 
Tobias Johannes Zimmer "Controls" mostra todos os botões com perfeição.

Em garrafas, tentei solucionar o problema instalando dependências diferentes, principalmente o directx, pois me lembro de ter pensado que o directx poderia ter algo a ver com os objetos gráficos do MT5, mas não tenho certeza se isso está correto.

O que exatamente você está discutindo? Suspeito que esteja fora do tópico, embora não tenha certeza.