Executar roteiro através do Expert Advisor - página 9

 

E eu tenho meus botões!

Agora, vou apenas fazer um pouco de estilo.

 
onewithzachy:

Olá Dadas,

1. Tente o melhor que puder o smiley EA não é clicável.

2. Não poste código descompilado. Os códigos compilados são materiais protegidos por direitos autorais pertencem a seu proprietário. Ao descompilá-lo, você está violando os direitos autorais do proprietário. mql4-mql5 .com pertencem à MetaQuotes (MQ), e a MQ não suporta violação de direitos autorais.

1. O que você quer dizer com isso?

Eu clico na cara sorridente quando minha EA está no gráfico e o painel de controle da EA abre - sempre, quando clico uma vez no "X", no FROWN ou no SMILE.

2. OK, excluído - mas ele vem livre, e com demonstração também, então qual é o incômodo?

E eu não o descompilei! Eu postei .ex4 e não .mq4 ! Eu não tenho .mq4 para o script OneClickTrading.

3. & 4. Irrelevante - encontrei o que preciso!

 
Dadas:

1. O que você quer dizer com isso?

Eu clico na cara sorridente quando minha EA está na tabela e o painel de controle da EA abre - sempre, quando clico uma vez no "X", no FROWN ou no SMILE.

2. OK, excluído - mas ele vem livre, e com demonstração também, então qual é o incômodo?

E eu não o descompilei! Eu postei .ex4 e não .mq4 ! Eu não tenho .mq4 para o script OneClickTrading.

3. & 4. Irrelevante - encontrei o que preciso!

Olá Dadas,

1. Você está certo sobre o número 1. O smiley é codificado em MT. Meu EA funciona em loop, portanto, clicando nele não abre a janela da propriedade.

2. Ele vem livre sem o código fonte, e você estava dizendo "Eu tenho tentado encontrar um descompilador livre, mas não consegui" .A ajuda é apreciada - talvez vocês possam fazer um pouco deste arquivo"...

3. Vocês já descobriram isso na ho ho e ainda assim continuam perguntando, então eu respondi.

 
onewithzachy:

Olá Dadas,

3. Você já descobriu isso na ho ho e ainda assim continua perguntando, então eu respondi.

Não, eu não o encontrei em sua ho ho!

Eu a encontrei aqui: https://www.mql5.com/go?link=https://www.fx1.net/wiki/pmwiki.php/MT4GUI/MT4GUI

- você deve ter perdido meu posto anterior.

E está funcionando!!!

Talvez seja o mesmo em seu hoho, eu não sei.

O que eu encontrei está claramente explicado, e era o que eu precisava.

Agora, a EA está chamando uma série de Roteiros diferentes, dependendo da situação.

É abrir e fechar ordens automaticamente, ou manualmente, à escolha.

É a desativação do botão Experts, quando necessário.

Introduzirei ainda os botões ON/OFF para as diversas funções.

Em seguida, uma caixa de formulário para entrar no LotManagement se o LotManagement estiver DESLIGADO.

Então, talvez, colocarei 3 EAs diferentes em um com uma opção de interruptor.

No final, estarei pensando em fazer disto uma aplicação autônoma,

mas isso é um longo caminho, porque ainda não tenho as habilidades.

P.S. Eu verifiquei - sua ho ho é completamente diferente do que eu encontrei. BTW, eu a encontrei neste fórum!

 

Oi, pessoal,

Agora meu EA tem este aspecto:

E você pode ver que está funcionando.

Ainda assim, não está terminado.

 

No caso de alguém estar procurando por esta informação,

você pode até mesmo executar outra EA de outra EA como esta:

#include <WinUser32.mqh>
#define MT4_WMCMD_REMOVE_EXPERT   33050

int start() {
if(ConditionsForOpeningMySecondEA==true) 
{

DisableExperts(); // when Experts enabled - disables Experts
RemoveEA();
DisableExperts(); // when Experts disabled - enables Experts
RunMyEA();

{
           }

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   keybd_event(17, 0, 0, 0); // CTRL down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(17, 0, 2, 0); // CTRL up
   }

void RemoveEA()
   {
   PostMessageA(hwnd,WM_COMMAND,33050,1);
   }


void RunMyEA() { // Runs another EA with HOTKEY assigned
   keybd_event(18, 0, 0, 0); // ALT down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(18, 0, 2, 0); // ALT up
}

Eu uso isto, e funciona.
 

BTW em vez de

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   keybd_event(17, 0, 0, 0); // CTRL down
   keybd_event(69, 0, 0, 0); // E down
   keybd_event(69, 0, 2, 0); // E up
   keybd_event(17, 0, 2, 0); // CTRL up
   }

uso

#include <WinUser32.mqh>
#import "user32.dll"
  int GetAncestor(int hWnd, int gaFlags);
#import

void DisableExperts() // Emulates keyboard event for Ctrl+E
   {
   int hwnd = GetAncestor(WindowHandle(Symbol(),Period()),2);
   PostMessageA(hwnd,WM_COMMAND,33020,1);
   }

PS ALT + E não faz nada

 
qjol:

BTW em vez de

uso

PS ALT + E observa


Alt+E não é atribuído a nada por padrão.

Primeiro é preciso atribuí-lo a algo.

Eu acabei de editar, agora está correto.

 
Sim, funciona muito bem, obrigado!
 

Olá a todos,

Obrigado pelas contribuições feitas aqui.

Sou novo na codificação e gostaria de criar uma EA que processe scripts para colocar minhas encomendas, mas gostaria que os scripts fossem executados usando hotkeys. Estou usando o MT4. Alguma sugestão de como posso fazer isso acontecer? Nesta fase não estou muito claro sobre como fazer as conexões para que isto possa se tornar realidade.

Suas sugestões são muito bem-vindas!


Agradecemos antecipadamente :).