Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1769

 

Boa tarde a todos. Por favor, me diga se preciso iniciar um teste do indicador em mt4 em d1 e quando eu receber um sinal dele, preciso mudar para n1. Posso fazer isso sem interromper o teste?

 
DanilaMactep #:

Boa tarde a todos. Por favor, me diga se preciso iniciar um teste do indicador em mt4 em d1 e quando eu receber um sinal dele, preciso mudar para n1. Posso fazer isso sem interromper o teste?

não

você precisa iniciar no H1 e obter o sinal de D1

 
DanilaMactep #:

Boa tarde a todos. Por favor, me diga se preciso iniciar um teste do indicador em mt4 em d1 e quando eu receber um sinal dele, preciso mudar para n1. Posso fazer isso sem interromper o teste?

Não. Os prazos não podem ser trocados no testador. Portanto, você deve ajustar o ticks modelo OHLC na M1 e observar os sinais na H1 ou D1, ou selecionar H1 e esperar pelo sinal daD1.

 
MakarFX #:

não

Você tem que executá-lo no H1 e obter o sinal de D1

Isto se o Expert Advisor for testado. Preciso testá-lo manualmente. Ou seja, devo conectar o consultor especializado ao teste e anexar o indicador à tabela de teste. E eu preciso alternar manualmente entre os prazos durante o teste. Isto pode ser feito usando um roteiro ou algo mais?

 
DanilaMactep #:

Isto se a EA estiver sendo testada. Mas eu preciso testá-lo manualmente. Ou seja, devo conectar o EA ao teste e colocar o indicador no gráfico de teste. E tenho que alternar manualmente entre os períodos de tempo durante o teste. Isto pode ser feito usando um roteiro ou algo mais?

Você recebe o sinal do indicador?
 
MakarFX #:
Você recebe o sinal do indicador?
Sim do indicador, mas somente na forma de bater suas linhas de tendência e depois linhas de tendência em um período de tempo mais baixo - provavelmente mais tarde eu gravarei um vídeo para deixar isso claro;-)
 
DanilaMactep #:
Sim do indicador, mas apenas na forma de bater suas linhas de tendência e, em seguida, em linhas de contra-tendência de menor intervalo de tempo - provavelmente mais tarde eu gravarei um vídeo para deixá-lo claro;-)

Faça um indicador MTF e você ficará feliz)

 
MakarFX #:

Faça um indicador MTF e você ficará feliz)

Você pode me dizer o que eu perdi? Esta é uma função na EA.

Erro: Ultrapassou os limites da matriz

int TradeSignal() 
  {
   int limit, i, sig=-1;
   double Ma_curr, Ma_prev, Buffer[];
   limit=MaPeriod*3;
   for(i=limit;i>=0;i--)
     {
      Ma_curr=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i);
      Ma_prev=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i+1);
      Buffer[i]=Ma_curr-Ma_prev;
      if(Buffer[i]>0) sig=0;
      if(Buffer[i]<0) sig=1;
     }
   return(sig);
  }
 
MakarFX #:

Você pode me dizer o que estou perdendo? Esta é uma função na EA.

Erro: Array overrun

Você não alocou memória para a matriz tampão

int TradeSignal() 
  {
   int limit, i, sig=-1;
   double Ma_curr, Ma_prev, Buffer[];
   limit=MaPeriod*3;
   ArrayResize(Buffer, limit);
   for(i=limit-1;i>=0;i--)
     {
      Ma_curr=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i);
      Ma_prev=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i+1);
      Buffer[i]=Ma_curr-Ma_prev;
      if(Buffer[i]>0) sig=0;
      if(Buffer[i]<0) sig=1;
     }
   return(sig);
  }
 
Mihail Matkovskij #:

Você não tem nenhuma memória alocada para a matriz tampão

Muito obrigado.
Razão: