Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 1071

 
Bom dia! O antigo indicador tem um ciclo prescrito, sobrecarrega fortemente o terminal, ajude-me a mudá-lo para o novo modo, para que as barras não sejam recalculadas constantemente ... Sou muito grato de antemão!
int i,limit;
limit = Bars-2;
for(i=limit; i>0; i--)
 
   limit=rates_total-prev_calculated;
   if(prev_calculated>0)
      limit++;
Extraído do exemplo MACD fornecido com o terminal.
 
evillive:
Extraído do exemplo MACD da entrega do terminal.
Obrigado, mas neste caso o limite=0 e no laço o cálculo é da última barra a zero
 
Pokrov:
Obrigado, mas neste caso limite=0, e no laço o cálculo vai da última barra a zero

Nesse caso, se o 0 for contado, tomamos todas as barras, e em outros casos, tomamos tantas barras quantas não forem contadas:

  limit=rates_total-prev_calculated;
  if(prev_calculated<1) limit=rates_total-1;
 
evillive:

Então, se 0 é contado, tomamos todas as barras, em outros casos, quantas não são contadas:

Muito obrigado! Eu não entendo porque funciona, quando carregotaxas_total e pré_calculadas são iguais a igual número de barras e depois limite = 0, além da condição que não é verdadeira, porque funciona ? Explique-me, por favor,

Quero entender porque funciona ...
 
Pokrov:

Muito obrigado! Só que eu ainda não entendo porque funciona, quando carrego astaxas de indicador_total e pré_calculadas são iguais ao mesmo número de barras, e depois limite = 0, depois a condição que não é verdadeira, então porque funciona ? Por favor, me explique,

Quer entender porque funciona ...

Ao carregartaxas_total=barras, um pré_calculo=0.

 
evillive:

Ao carregartaxas_total=barras, um pré_calculo=0.

Ah, é verdade, eu só não olhei de perto para o tronco, primeiro tickprev_calculated=0. obrigado novamente!!!!
 
evillive:
Você pode. Basta deixar mais espaço para isso, pastas de história e logs estão crescendo, tenho mais de 5 Gb de história, e uma vez que meu Conselheiro Especialista tinha 20 Gb de erros em seus logs, é bom que não esteja em um pen drive ))))
Certo, estou vendo. Obrigado a todos vocês!
 

Olá a todos. Quero usar os dados de H4 no teste de estratégia no período de tempo H1. Quando inicializo o indicador, ele é renderizado corretamente, mas quando inicio o testador, ele não é redesenhado.

Esta é uma característica do testador? Como posso superar isso?

int shift = iBarShift(Symbol(), PERIOD_H4, Time[i]);

bufBuffer[i] = iClose(Symbol(),PERIOD_H4,shift); 
 
storuky:

Olá a todos. Quero usar este indicador do H4 no teste de estratégia no período de tempo H1. Quando inicializo o indicador, ele é renderizado corretamente, mas quando inicio o testador, ele não é redesenhado.

Esta é uma característica do testador? Existe alguma maneira de consertá-la?

Sim, o testador bloqueia o acesso aos dados de outros TFs no modo de visualização. Em testes normais sem visualização, os dados correm corretamente, mas a renderização sofre.

Não há como resolver este problema diretamente - só podemos complicar o algoritmo e desenhar objetos, mas será que vale a pena?