Discussão do artigo "O jogador de negociação baseado no histórico de acordo" - página 2

 
Por algum motivo, meu Expert Advisor não funciona, ele analisa o histórico e, em seguida, cria um saldo e, então, os alertas aparecem, dizendo que não há dados sobre o símbolo....history is all downloaded, qual é o motivo? Também tentei alimentar relatórios a partir do histórico de negociação do EA, que também analisa e, em seguida, passa pelo processo de criação de saldo e, então, o EA trava e nada acontece... Na pasta de arquivos, após todas as ações, são criados arquivos do Excel nos quais tudo parece estar normal.
 
arbuz:
Por alguma razão, meu Expert Advisor não funciona, ele analisa o histórico e, em seguida, cria um saldo e, então, os alertas aparecem, dizendo que não há dados sobre o símbolo....history is all downloaded, qual é a razão? Também tentei alimentar relatórios do histórico de negociação do Expert Advisor, que também analisa e, em seguida, passa pelo processo de criação de saldo e, depois, o EA trava e nada acontece... Na pasta de arquivos, após todas as ações, são criados arquivos do Excel nos quais tudo parece estar normal.

Verifique esse símbolo manualmente usando este algoritmo



  1. Certifique-se de que a seção necessária do histórico de todos os instrumentos que participam do relatório de negociação esteja disponível no período de tempo M1. Para isso, abra manualmente o gráfico necessário do TF M1, defina a linha vertical e, usando o comando Ctrl+B ou no menu de contexto Lista de objetos, por meio de propriedades, altere a data da linha vertical para a data de início da negociação.
  2. Em seguida, pressione o botão "Show". Se não houver cotações, há dois motivos possíveis. Ou as cotações não foram baixadas ou o parâmetro "Max. bars in window" (Máximo de barras na janela) está definido como muito pequeno. Barras na janela" no menu de contexto Service->Settings->Charts (Serviço->Configurações->Gráficos).
 

Obrigado pela dica, quero testar o player no trabalho, mas dois dos quatro arquivos no arquivo não estão compilados - o Relatório do Player e o Report Parser mt4 mostram alguns erros.

Segunda pergunta: o player funcionará junto com um EA pré-instalado?

 
vspexp:

Obrigado pela dica, quero testar o player no trabalho, mas dois dos quatro arquivos no arquivo não estão compilados - o Relatório do Player e o Report Parser mt4 mostram alguns erros.

Segunda pergunta - o player funcionará junto com um EA pré-instalado?

Você deve verificar, pois foi há muito tempo, talvez tenha havido algumas alterações na linguagem que são críticas para o código.

O player funciona com base em um relatório padrão, independentemente do fato de ter sido gerado pelo testador ou pelo MT.

 
Urain:

Você deveria verificar, pois foi há muito tempo, talvez tenha havido algumas alterações críticas para o código na linguagem.

O código em Structur_File.mqh (ushort type->ushort m_type) foi corrigido no artigo em anexo. A versão atualizada está no anexo.

O erro começou a aparecer depois de adicionar ao compilador a verificação da interseção de nomes de membros e métodos de classe.

É melhor usar o prefixo "m_" ao declarar os membros da classe.

Arquivos anexados:
 

Ao tentar compilar, vários erros apareceram:

Erros

 
Karputov Vladimir:

Ao tentar compilar, vários erros apareceram:

Não se trata de erros, mas de avisos do compilador de que o espaço de nomes das variáveis globais e locais se sobrepõem e que o programador deve ter cuidado.

Não há erros aqui. Fique à vontade para usá-lo.

 
Nikolay Demko:

Esses não são erros, mas avisos do compilador de que o namespace das variáveis globais e locais se sobrepõem e que o programador deve ter cuidado.

Não há erros aqui. Fique à vontade para usá-los.

Sempre achei que todo aviso é um erro em potencial ou um "cisne negro" no futuro. Você, como autor do artigo, poderia corrigir o código e remover todos esses possíveis erros?
 
Karputov Vladimir:
Sempre achei que todo aviso é um possível bug ou "cisne negro" no futuro. Você, como autor do artigo, poderia corrigir o código e remover todos esses possíveis erros?

Para fazer isso, precisamos renomear muitas variáveis (em muitos arquivos) e, afinal, os nomes das variáveis carregam alguma carga conceitual.

O que você propõe para renomear as variáveis bar, pos, time?

Apenas adicionar sufixos significa bagunçar o código e torná-lo ilegível.

Escreva para a servicedesk para que o compilador pare de gerar avisos amarelos :)

Você tornou conveniente a exibição de avisos não críticos para que os programadores escrevam com precisão em locais importantes e não está satisfeito.

 

Eu também tenho tudo parado no estágio "criar histórico de saldo". Ele cria arquivos para todos os pares e paradas. A conta foi aberta em 22 de setembro. No M1, todos os símbolos têm cotações de 16 de setembro (verifiquei pressionando Home).

Experimentei o código da postagem Automated-Trading - sem alterações.