Discussão do artigo "Criação de um painel administrativo de negociação em MQL5 (Parte XII): Integração de uma calculadora Forex"
Oi, Clemence,
Ótimo artigo. Fiz o download, revisei os caminhos dos arquivos de inclusão, compilei e funcionou! Na minha avaliação preliminar, percebi que, quando o botão vertical superior é pressionado e não há mais nada no gráfico, ele não oculta completamente os outros botões. Parece que sua posição xy está incorreta, já que a faixa vertical do botão ainda reconhece o evento de clique.
Também parece que você pode ter um problema de espaçamento em alguns textos. No entanto, isso também pode ser causado pela minha configuração de tamanho de texto no Windows 11,
O arquivo anexo ilustra esses problemas.
Aqui vai uma sugestão para facilitar seus downloads. Crie um subdiretório no diretório “include”, coloque todos os seus arquivos de inclusão nele e ajuste as instruções #include para que reconheçam o subdiretório: #include <AdminPanel\....>. Isso também ajuda quem faz o download a manter seu diretório “include” mais organizado.
Oi, Clemence,
Ótimo artigo. Fiz o download, revisei os caminhos dos arquivos de inclusão, compilei e funcionou! Na minha avaliação preliminar, percebi que, quando o botão vertical superior é pressionado e não há mais nada no gráfico, ele não oculta completamente os outros botões. Parece que sua posição xy está incorreta, pois a faixa vertical do botão ainda reconhece o evento de clique.
Também parece que você pode ter um problema de espaçamento em alguns textos. No entanto, isso também pode ser causado pela minha configuração de tamanho de texto no Windows 11,
O arquivo anexo ilustra esses problemas.
Aqui vai uma sugestão para facilitar seus downloads. Crie um subdiretório no diretório “include”, coloque todos os seus arquivos de inclusão nele e ajuste as instruções #include para que reconheçam o subdiretório: #include <AdminPanel\....>. Isso também ajuda quem faz o download a manter seu diretório “include” mais organizado.
Obrigado,@CapeCoddah, pelo seu feedback e por sugerir uma estrutura de subdiretórios mais organizada para os arquivos relacionados a este projeto.
Vou considerar implementar isso em atualizações futuras — é uma ótima ideia e ajudará a evitar a mistura de arquivos de projetos diferentes.
Quanto ao espaçamento do texto, acho que provavelmente está relacionado ao seu sistema operacional ou a algumas configurações do seu lado, já que tudo aparece devidamente alinhado do meu lado. Você pode experimentar diferentes tamanhos de fonte e espaçamento no eixo x no código para obter o melhor resultado visual.
Olá,
Eu estava tentando instalar, mas nenhum botão apareceu; só consigo ver duas caixas de seleção. Extraí os arquivos para a pasta “Include”, conforme indicado, e as imagens foram extraídas para a pasta “images”
Oi, Clemence,
Vou dar uma olhada nisso e te aviso daqui a alguns dias.
Estou usando !!AdminPanel como nome do meu subdiretório. Os dois “!!” fazem com que o subdiretório apareça no topo da lista do explorador de arquivos. Além disso, quando você atualizar a versão, pode copiar os diretórios “include” e “ea” e renomeá-los com o número da versão, por exemplo, !! AdmnPanel - 1.13. Se você fizer isso, o Terminal terá o diretório EA original, bem como aquele marcado com a geração, para que você possa facilmente voltar a executar a versão antiga, se necessário. Encontrei esta diretiva: #property version _Version adicionará o número da string _Version ao nome do programa exibido na tela de entrada, o que ajuda a identificar qual versão você está procurando. Também uso o Beyond Compare, da Scooter Software — ele é incrível —, para comparar as versões entre si
Também vou extrair todas as funções de suporte do EA para um arquivo de cabeçalho, para que eu possa incorporar seu sistema ao meu EA, pois aprecio todo o excelente trabalho que você dedicou a este projeto. Também gosto do seu uso das classes de controles; vou aprender muito avaliando seu código.
Abraços,
CapeCoddah
Oi de novo,
Talvez você venha a se arrepender do dia em que baixei seu EA Admin, mas aqui vai:
Separei o código exclusivo do EA em um arquivo chamado Admin Common.mqh, compilei-o e ele funciona.
No entanto...
Quando comecei a testar, os botões, de cima para baixo, funcionam bem, com a exceção de que o botão inferior não faz nada. Mas quando movo um painel para cima de outro, eles “unem forças” e se movem juntos. Isso também ocorre com todos os três painéis.
A tela 1 mostra o programa pressionando os botões sequencialmente, de cima para baixo. Observe que o botão inferior não faz nada
A tela 2 mostra os três painéis sobrepostos. Se você tentar mover um, todos se movem. O movimento do mouse precisa distinguir qual gráfico deve ser movido.
A tela 3 ilustra que um movimento move todos os três
A tela 4 ilustra que, quando se clica no botão “x” (fechar) de um dos painéis, o programa fecha todos, além de encerrar e se remover
A tela 5 ilustra que, quando você fecha o terceiro painel usando o botão “X” (fechar) e, em seguida, pressiona o botão para exibi-lo novamente, o painel de fundo não é redesenhado.
Também incluí um arquivo zip que contém o diretório “includes” e coloquei o código-fonte e o executável do !! AdminPanel nele para você. Além disso, incluí meu GoldBug common. 99% dele provavelmente é inútil, mas contém DTS (Double to String), pois cansei de digitar o nome longo. As versões DTSC ainda não foram totalmente depuradas. Eu estava planejando usá-las para inserir vírgulas na exibição de moedas, com ou sem o símbolo $. Provavelmente, o formato de string seria mais fácil.
Até mais! Coma seus Wheaties e boa programação
Cape CoddaH
Até mais! Coma seus Wheaties e boa programação
Cape CoddaH
Obrigado,@CapeCoddah, por todos os seus comentários e pelo esforço que você dedicou — isso realmente contribui para uma versão mais estável dessa ferramenta de negociação com painéis múltiplos.
Agradeço muito o tempo que você está dedicando para explorar e entender como tudo funciona.
No momento, estou analisando os problemas que você destacou e também verificarei as modificações que você enviou. As melhorias estão a caminho.
Atenciosamente,
Clemence Benjamin
Olá,
Eu estava tentando instalar, mas nenhum botão apareceu; só consigo ver duas caixas de seleção. Extraí os arquivos para a pasta “Include”, conforme indicado, e as imagens foram extraídas para a pasta “images”
Olá, @Oluwafemi Olabisi,
Você poderia, por favor, compartilhar uma captura de tela para que eu possa ajudá-lo de forma mais eficaz?
Olá, @Oluwafemi Olabisi,
Você poderia, por favor, compartilhar uma captura de tela para que eu possa ajudá-lo de forma mais eficaz?
Oi, Clemence,
Tenho algumas perguntas e talvez você possa esclarecer algumas delas.
A primeira é sobre o Strategy Tester
Quando executo meu EA nele, nenhum texto, painel, botão etc. é exibido na máquina de teste. Percebi que alguns dos seus são exibidos. Você tem alguma ideia do que causa essa diferença? Estou planejando incorporar o seu EA ao meu e tentar descobrir o que causa essas diferenças.
Segundo: como você entra em contato com a MetaQuotes para relatar bugs e enviar sugestões de melhorias? Passei um tempo considerável no site MQL5.com e não consigo encontrar uma maneira de fazer isso.
Anexei aqui como os arquivos foram extraídos para os diretórios INCLUDE e IMAGES, respectivamente.
O EA deve estar na pasta “experts”, e não na pasta “include”. Depois de movê-lo, é preciso parar o EA e reiniciá-lo para que ele apareça no Painel do Navegador. Essa é uma das coisas que o MQ deveria mudar. Pelo menos permitir que os usuários ocultem a pasta, seja “Indicadores” ou “EAs”, e então atualizem a lista ao executar o comando de expansão, em vez de parar o Terminal, reiniciá-lo e abrir todos os subdiretórios até chegar ao destino. Melhor ainda, isso deveria acontecer automaticamente sempre que um novo executável fosse colocado no subdiretório.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Criação de um painel administrativo de negociação em MQL5 (Parte XII): Integração de uma calculadora Forex foi publicado:
A arquitetura modular que adotamos ao longo desta série de artigos nos permite trabalhar em partes específicas do programa sem comprometer o funcionamento dos demais componentes. Essa flexibilidade agora nos permite atualizar o Painel de Gerenciamento de Operações para abrir espaço à integração das ferramentas de cálculo.
Para isso, utilizaremos classes adicionais da biblioteca padrão do MQL5. Em vez de manter seções de entrada separadas para cada tipo de ordem, implementaremos um menu suspenso para selecionar o tipo de ordem, combinado com uma única linha de campos de entrada. Essa reorganização da interface liberará espaço para os componentes da nossa calculadora.
Embora não seja necessário exibir todas as métricas de negociação, alguns valores são essenciais para a tomada de decisões fundamentadas e precisam estar facilmente acessíveis. Além disso, nem todos exigem cálculos específicos, pois alguns já podem ser obtidos diretamente dos dados de mercado em tempo real disponibilizados pelo MQL5.
Começaremos examinando detalhadamente os principais termos e valores utilizados no mercado Forex, incluindo suas definições, fórmulas e formas de representação no MQL5. Em seguida, passaremos à implementação, começando pela adaptação da seção de Ordens no Painel de Gerenciamento de Operações para acomodar a interface da calculadora.
Autor: Clemence Benjamin