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

 
Igor Zakharov:

Como posso saber? A pessoa que fez a pergunta usou iLow(), então ele precisava dela. Talvez seja mais simples, talvez ele planeje se referir a outro símbolo ou período de tempo através de uma variável de entrada (não se lembra se há copiratos em quádruplo?)

Há.

 
psyman:

Eu não postei o código aqui, mas escrevi o mais simples para simplificar o parse.

Conte-me mais sobre o que está errado, não está claro sobre a velocidade máxima.

Vladimir Karputov:

O código é GREATLY GLUCKY - porque em cada carrapato há um passe sobre TODOS os BARs.


Em quarto foiIndicatorCounted(), não sei que possibilidades há em quinto e não há lugar para ler sobre isso.

Esta opção é boa, ou pode ser simplificada?

int OnCalculate(....)
{
   int i, Counted_bars;
   
      Counted_bars=IndicatorCounted(); // Количество просчитанных баров 
      i=Bars-Counted_bars-1;           // Индекс первого непосчитанного

      while(i>=0)                      // Цикл по непосчитанным барам
      { 
        .....
        
       i--;                          
      }
}

int IndicatorCounted()
  {
   if(prev_calculated>0) return(prev_calculated-1);
   if(prev_calculated==0) return(0);
   return(0);
  }
 
psyman:


No quarto trimestre houve oIndicatorCounted(), não sei que possibilidades há no quinto trimestre e não há lugar para ler sobre ele.

Esta opção é boa, ou pode ser simplificada?

Ajuda, fórum, artigos - este é o "lugar para ler" em sua opinião? Se ao menos você tivesse o desejo. Na verdade, você está escrevendo no assunto do antigo terminal, enquanto sua pergunta é sobre a MQL5. Você tem uma discrepância.

Eu deixei o tópico.

 
psyman:


No quarto trimestre houve oIndicatorCounted(), não sei que possibilidades há no quinto trimestre e não há lugar para ler sobre ele.

Esta opção é boa ou pode ser simplificada?

Agora tanto em mql4 como em mql5 a função indicadora principal tem tudo o que você precisa

int OnCalculate (const int rates_total,      // размер входных таймсерий
                 const int prev_calculated,  // обработано баров на предыдущем вызове
                 const datetime& time[],     // Time
                 const double& open[],       // Open
                 const double& high[],       // High
                 const double& low[],        // Low
                 const double& close[],      // Close
                 const long& tick_volume[],  // Tick Volume
                 const long& volume[],       // Real Volume
                 const int& spread[]         // Spread
   );

pré_calculado é o número de barras calculadas.

 

Olá.

Se o preço mudou em 30 pips em 60 segundos, eu marcarei a barra

 for(int i=limit; i>=0; i--)
     {
      datetime t_=TimeCurrent();
      if(t_>t_b+60)
        {
         t_b = TimeCurrent();
         pr_b=close[0];
        }
      if(MathAbs(close[0]-pr_b)>=30*Point && t_<t_b+60)
        {
         BufferUP[i]=low[i]-10*Point;
        }

     }

O que está errado?

 
lil_lil:

Olá.

Se o preço mudou em 30 pips em 60 segundos, eu marcarei a barra

O que está errado?

Por que é assim

int limit=rates_total-prev_calculated-1;

e não assim?

int limit=rates_total-prev_calculated;

Onde eu estabeleço o limite?

   if(limit>1)
     {
      ArrayInitialize(BufferUP,EMPTY_VALUE);
      ArrayInitialize(BufferDN,EMPTY_VALUE);
     }
   if(limit>1)
     {
      limit=rates_total-1;
      ArrayInitialize(BufferUP,EMPTY_VALUE);
      ArrayInitialize(BufferDN,EMPTY_VALUE);
     }

Não procurou mais

 
Artyom Trishkin:

Por que é assim

e não assim?

Onde está o estabelecimento do limite?

Eu não procurei mais.

Obrigado, mas também não há nenhum resultado nesse sentido. Procure mais, por favor.

 
lil_lil:

Obrigado, mas também não há nenhum resultado nesse sentido. Procure mais, por favor.

O que é isso?

datetime t_=TimeCurrent();

Que tempo você leva no loop? O que é TimeCurrent()?

 
Olá!
Há uma função no Expert Advisor para obter texto a partir de um link.... Eu o obtenho com esta biblioteca:
https://github.com/sergeylukin/mql4-http
Tudo está bem e não há dúvidas sobre isso!
O problema é o seguinte:
Neste link o texto é sistematicamente atualizado e o terminal não o percebe, mesmo quando você zera a coruja da carta e a coloca de volta! Somente fechar e abrir o terminal ajuda! Talvez, quem saiba como consertá-lo?
 
lil_lil:

Olá.

Se o preço mudou em 30 pips em 60 segundos, eu marcarei a barra

O que está errado?

Recentemente me deparei com uma encomenda freelance com uma tarefa semelhante. Não é esse o trabalho que você está fazendo?