Automação com interceptação por botão e clique do mouse. - página 4

 
HIDDEN >> :

interessado no controle de software do testador de estratégia.

1. Abra-o do Consultor Especialista (código encontrado)

2. pressione o botão Start

etc. Em geral, seria desejável ter todos os códigos a partir desta janela. botões, etc.

Você quer sair com facilidade. :))

Há muitas coisas complicadas aqui:


1. Abra a janela do testador.

2. abrir a lista de EA, selecionar um determinado EA da lista pelo nome (pode ser pulado, deixando uma posição na lista de antemão)

3. Abra a lista de símbolos, selecione um determinado símbolo da lista pelo nome (você pode pular isso deixando uma posição na lista de antemão)

4. Abra a lista de métodos, selecione um determinado método da lista por nome ou número.

5. Abrir lista de períodos, selecionar determinado período da lista por nome ou número

6. Marque a caixa "Data de uso", marque-a

7. Marque a caixa "Otimizar", marque a caixa de seleção. 10.

8. Marque a caixa "Visualização", desmarque-a (opcional)

9. Insira a data dada na janela "De" (se possível)

10. Insira a data definida na janela "Para" (se possível)

11. pressione o botão "Start

12. Receber um sinal do fim da otimização, ou seja, o texto "Start" retorna ao botão (um timer pode ser usado)

13. Feche a janela do testador


Isto se eu ainda não tiver perdido nada.

 
granit77 >> :

Você quer sair com facilidade. :))

Há muitas coisas complicadas aqui:


1. Abra a janela do testador.

2. Abra a lista de Expert Advisors, selecione um determinado Expert Advisor da lista por nome (pode ser pulado, deixando uma posição na lista de antemão)

3. Abra a lista de símbolos, selecione um determinado símbolo da lista pelo nome (você pode ignorá-lo deixando uma posição na lista de antemão)

4. Abra a lista de métodos, selecione um determinado método da lista por nome ou por número.

5. Abrir lista de períodos, selecionar determinado período da lista por nome ou número

6. Marque a caixa "Data de uso", marque-a

7. Marque a caixa "Otimizar", marque a caixa de seleção. 10.

8. Marque a caixa "Visualização", desmarque-a (opcional)

9. Insira a data dada na janela "De" (se possível)

10. Insira a data definida na janela "Para" (se possível)

11. pressione o botão "Start

12. Receber um sinal do fim da otimização, ou seja, o texto "Start" retorna ao botão (um timer pode ser usado)

13. Feche a janela do testador


Se eu ainda não perdi nada

Há um arquivo lastparameters.ini na pasta do testador, o que impede que ele seja preparado no Expert Advisor, escrito e aberto no testador e o botão Start pressionado. Acontece que a metade dos itens já está faltando.

 

É verdade, eu tinha esquecido.

Se você já trabalhou com ela, consulte a lista, talvez tudo o que você realmente precise fazer é pressionar 'Start'?

 
granit77 >> :

Certo, eu tinha esquecido.

Se você já trabalhou com ela, consulte a lista, talvez você realmente só precise pressionar "Start"?

otimização=0 //optimização on e off
genética=1 //genetics
fitnes=0
método=0 // método de teste
use_date=0 // por data
a partir de=1226620800 // data de início em segundos desde 1970
para=1226620800 // data final


o mesmo para a EA, após testar e otimizar é feito uma vez manualmente, os parâmetros são salvos e mudam como você quiser. Eu ainda preciso pressionar o botão Start, oh quanto eu preciso....


Se estiver ocorrendo a otimização para o Expert Advisor que negocia em um gráfico, o código F6 pode ser pressionado e, correspondentemente, o Expert Advisor e o par de moedas são selecionados automaticamente. ou seja, faltam mais alguns pontos.

 
HIDDEN >> :

Eu ainda preciso apertar o botão start, oh quanto eu preciso....

Não me sinto particularmente lisonjeado. Uma execução manual com otimizações periódicas ainda não produziu um resultado inequivocamente positivo.

Além disso, a questão da escolha do melhor conjunto de parâmetros também paira no ar, todos surgem de novo.

O Mathemat prometeu um artigo, talvez ele esclareça um pouco.

Mas com esta ferramenta, as possibilidades aumentarão em uma ordem de grandeza; será um avanço.

 

A partir de uma linha próxima Erics sugere.


Os códigos dos botões são procurados em Spy++ (Control ID)

E eles são usados para obter o descritor de botões:

hButtonStart = GetDlgItem(hTester, 0x40A);



Vou acordar e descobrir como anexá-lo.

 

Antes de executar qualquer ação na janela do Testador de Estratégia, você deve primeiro entender como uma árvore de janela é disposta no MetaTrader e, em segundo lugar, determinar
seu descritor de sistema. Então, usando a função GetDlgItem(int hDlg,int nIDDlgItem), você pode obter as identificações dos controles necessários.


A figura abaixo mostra uma parte da árvore da janela do MetaTrader em Spy++. O marcadorvermelho indica sua raiz. O marcador amarelo mostra a localização da janela "Terminal" na árvore, etc.
Assim, para obter o identificador do sistema do botão "Start" (marcado com um marcador azul na figura), você deve passar seqüencialmente por todos os níveis superiores
. Para ilustração, cada nível é marcado com uma cor.




Aqui está um exemplo de código em MQL para obter o descritor de botão "Start".

#include <WinUser32.mqh>

#import "user32.dll"
   int GetAncestor(int hWnd, int gaFlags);
   int GetDlgItem(int hDlg, int nIDDlgItem);
#import

void start()
{
   int hMetaTrader, hTerminal, hTester, hButtonStart;
   
   hMetaTrader = GetAncestor(WindowHandle(Symbol(),Period()),2); //дескриптор основного окна терминала
	
   hTerminal = GetDlgItem(hMetaTrader,0xE81E);
   hTester = GetDlgItem(hTerminal,0x53);
   hButtonStart = GetDlgItem(GetDlgItem(hTester,0x81BF),0x40A);  //дескриптор кнопки "Старт"
}

Para determinar o descritor, o segundo parâmetro da função GetDlgItem() é passar o ID de controle para o componente da janela. Ela pode ser definida ligando para
no menu "Propriedades...", clicando com o botão direito do mouse. Como exemplo, na figura abaixo, o ID de controle da janela "Terminal"(0xE81E) está marcado em vermelho .


 
Ilnur >> :

Antes de fazer qualquer ação na janela do Testador de Estratégias, você deve primeiro entender como a árvore da janela no MetaTrader está estruturada e, em segundo lugar, determinar


Obrigado pelo tutorial. O botão Start é pressionado com segurança, assim como os outros botões necessários no painel de controle chamado MetaTrader 4.

 

Eh.... vem à mente.


Os americanos enviaram um turista a um submarino soviético. Ele se embebedou no primeiro dia. Pela manhã, acordou e viu o capitão com um bastão correndo atrás dos marinheiros e gritando: "Quem apertou o botão vermelho? Quem apertou o botão vermelho"? O americano o repreende:
- Você sabe, senhor, não temos capitães na América comportando-se assim!
- Não há mais América! Quem apertou o botão vermelho?!

 
HIDDEN писал(а) >>

Eh.... Lembro-me.

Os americanos enviaram um turista em um submarino soviético. Ele ficou bêbado no primeiro dia. Pela manhã ele acordou e viu o capitão com um bastão perseguindo os marinheiros e gritando: "Quem apertou o botão vermelho? Quem apertou o botão vermelho"? O americano o repreende:
- Você sabe, senhor, não temos capitães na América comportando-se assim!
- Não há mais América! Quem apertou o botão vermelho?!

Era um bom terminal : -))))