[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 172

 
100yan:
Ele pede um valor inteiro, mas uma matriz também pode ser declarada como variável?!

Você sabe o que é uma variável? É uma célula na memória que pode ser trocada. int é um tipo de variável.

https://book.mql4.com/ru/basics/vars

https://book.mql4.com/ru/basics/types

 
Para testar um sistema de negociação no MT4 sobre dados históricos, preciso carregar um arquivo de cotações, selecionar o par de moedas de interesse, selecionar todos os prazos, inclusive o minuto, e carregá-lo. Não há desencontros de gráficos durante os testes, mas há um problema que afeta significativamente os resultados dos testes e a otimização. Por exemplo, no gráfico H1 após a vela de 7 de maio de 2010 há uma vela a partir de 8 de julho de 2010, ou seja, uma lacuna de 1 mês. O download repetido do arquivo de citações não resolve a situação. Tenho espaço livre mais do que suficiente em meu disco rígido para baixar as citações.

A pergunta: Como posso baixar corretamente todas as citações sem intervalos de tempo para o MT4?
 
polsvv:

Você pode me dizer qual é o significado dessa porcaria nos troncos? Como posso evitá-lo? O Expert Advisor negocia com este indicador, após um erro o comércio congela até que você reinicie o terminal, pois reiniciar o Expert Advisor pode travar novamente.

22:39:53 +ZigZag_Levels CLJ1,M5: uninit reason 3
22:39:53 Zigzag CLJ1,M5: razão uninit 1

22:39:53 Zigzag CLJ1,M5: removido

Talvez seja porque estou usando o terminal em um servidor remoto e em meu próprio computador ao mesmo tempo?

https://docs.mql4.com/ru/constants/uninit verifique as razões para a desinicialização, parece que você está mudando de período/símbolo gráfico com a EA funcionando, daí os acidentes.
 
wizmon:
Pergunta: como fazer o download correto de todas as citações sem lacunas de tempo no MT4?

+ antes de carregar (se você tiver tais furos), é aconselhável apagar o histórico existente

+ definir a profundidade do histórico nas configurações pelo menos 10 000 000 de barras

+ Após carregar o histórico, você precisa clicar novamente no botão "Load" e confirmar o recálculo de todos os TFs.

 
polsvv:

Especialista negocia usando este indicador, após um erro o comércio pára

Provavelmente um código em loop.
 
polsvv:

Você pode me dizer qual é o significado dessa porcaria nos troncos? Como posso evitá-lo? O Expert Advisor negocia com este indicador, após um erro o comércio congela até que você reinicie o terminal, pois reiniciar o Expert Advisor pode travar novamente.

22:39:53 +ZigZag_Levels CLJ1,M5: uninit reason 3
22:39:53 Zigzag CLJ1,M5: razão uninit 1

22:39:53 Zigzag CLJ1,M5: removido

Talvez seja porque uso o terminal no servidor remoto e no meu PC ao mesmo tempo?

Eu não acho que o código seja em loop. O que significa, de qualquer forma, 1 ou 3? Você tem uma decodificação?

A EA está operando normalmente há 2 dias.

Mais uma vez, gostaria de repetir a pergunta sobre os terminais.

Se eu tiver um terminal com EA em um servidor remoto e rodar o mesmo terminal em meu PC, eu faço meus negócios nele. Eu os otimizo e assim por diante. Gostaria de lembrar que a EA não está na janela de uma ferramenta comercial no terminal doméstico porque está rodando localmente em meu computador (remoto) e não no servidor do corretor.

Então a EA pode falhar se estiver funcionando em um terminal, que está funcionando 2 vezes ao mesmo tempo?

 
polsvv:

Eu não acho que o código seja em loop. O que significa a razão 1 ou 3 mesmo? Existe uma decodificação?

leia minha resposta acima
 
polsvv:

Eu não acho que o código seja em loop. O que significa a razão 1 ou 3 mesmo? Qualquer decodificação ?


RAZÃO_REMOVE1O programa é retirado da tabela
MUDANÇA_DE_RAZÕES3O símbolo ou período do gráfico foi alterado
 
alsu:
https://docs.mql4.com/ru/constants/uninit verifique as razões para a desinicialização, parece que você está mudando o período/símbolo do gráfico com a EA em execução, daí os crashes.
Sim. Aparentemente essa é a razão. Obrigado pela dica!
 

Olá.

Desmontando e modificando o indicador Laguerre, simplesmente não funciona muito bem. Por favor, ajude com o código.

No final, a Laguerre iniciou seu código.

i=CountBars-1;
   while(i>=0)
   {
      L0A = L0;
      L1A = L1;
      L2A = L2;
      L3A = L3;
      L0 = (1 - gamma)*Close[i] + gamma*L0A;
      L1 = - gamma *L0 + L0A + gamma *L1A;
      L2 = - gamma *L1 + L1A + gamma *L2A;
      L3 = - gamma *L2 + L2A + gamma *L3A;

      CU = 0;
      CD = 0;
      
      if (L0 >= L1) CU = L0 - L1; else CD = L1 - L0;
      if (L1 >= L2) CU = CU + L1 - L2; else CD = CD + L2 - L1;
      if (L2 >= L3) CU = CU + L2 - L3; else CD = CD + L3 - L2;

      if (CU + CD != 0) LRSI = CU / (CU + CD);
      val1[i] = LRSI;
          i--;
        }
for(int a=0; a<Bars; a++ )
{if(LRSI[i]>0.45)
   LastLag++;
  
  }
 

Pelo que entendi, a própria linha indicadora é chamada LRSI.

Portanto, não posso atribuir um contravalor a ele. Por exemplo, quando a linha cruza 0,45 para cima, a LastLag é adicionada por um.

Até o momento, o único problema é atribuir um contravalor. Posso escrever a idéia inteira mais tarde. Obrigado.

Arquivos anexados:
laguerre.mq4  4 kb
Razão: