[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 859

 
FOReignEXchange:




Sei muito sobre programação, mas quando tento fazer algo com indicadores ou gráficos fico preso, é muito difícil entender este sistema de coordenadas, como desenhar com Tela, um ou dois ...
usver:


Use a variável Bars e acompanhe sua mudança. Aumentado em 5, lembrado, etc.

exemplo plz
 
if (N=0) N=iBars(Simbol(),TF);

if ((iBars(Simbol(),TF)-N)==5)
   {
   N=0;
   Также обнуляем все параметры, которые использует индикатор, чтобы он смог сделать перерасчёт.
   }

Acho que é só isso.

 

IgorM:

É mais ou menos isso mesmo.

int barsTtl;

int init()
   {
      barsTtl=iBars(Symbol(),PERIOD_H1);
      return(0);
   }

int start()
   {
      if (iBars(Symbol(),PERIOD_H1)==barsTtl+5)
        {
          // какие-то действия
          ...
          ...
          ...
          barsTtl=iBars(Symbol(),PERIOD_H1);
          return(0);
        }
   }
FOReignEXchange:

Mais ou menos o mesmo, eu acho.


Sim, era exatamente isso que eu queria dizer
 

usver, FOReignEXchange

muito obrigado, quão bem este código funcionará quando a história for paging? paging às vezes acontece aleatoriamente, mesmo que o terminal esteja funcionando 24 horas por dia, 7 dias por semana, contador de bytes

de repente parece aumentar a quantidade de informações baixadas, embora nenhuma ação seja tomada

 
usver:

IgorM:

Sobre o direito.


Sim, era exatamente isso que eu queria dizer

Experimentei esse tipo de coisa. Nem sempre funciona.
 
IgorM:

usver, FOReignEXchange

quão bem este código funcionará quando o histórico for paging? paging é às vezes iniciado aleatoriamente, mesmo que o terminal esteja em 24/7, de acordo com o contador de bytes

Pode ser visto um aumento repentino do volume de informações baixadas, embora nenhuma ação seja realizada


Sim - portanto, este método não pode ser chamado de confiável. Só a utilizo para verificar estratégias e indicadores, pois é a mais fácil. Para mim, isso nunca falhou.
 

Portanto, precisamos lembrar o tempo de barra iTime(NULL,TF,0) e depois contar as barras iBarShift.

A lógica é a mesma que a anterior, mas o tempo de barra é utilizado.

 
IgorM:

usver, FOReignEXchange

quão bem este código funcionará quando o histórico for paging? paging é às vezes iniciado aleatoriamente, mesmo que o terminal esteja em 24/7, de acordo com o contador de bytes

Você pode ver um aumento repentino na quantidade de informações baixadas, embora nenhuma ação seja tomada


Sim - é por isso que este método não pode ser chamado de confiável. Utilizo-a apenas para verificar estratégias e indicadores, como a mais fácil. Nunca tive nenhum problema com isso.

Usei-o para abrir posições no início de um novo bar (segundo/terceiro bar desde o ponto de partida), e tudo parecia bem. Analisei o histórico em excel - tudo funciona de acordo com a condição. É um caso de uma coisa para outra, como se costuma dizer. Cabe a você decidir. Como alternativa, aconselhei-o FOReignEXchange com um horário de abertura. A tecnologia é basicamente a mesma.

 
Em poucas palavras, é isso.
if (t=0) t=iTime(NULL,TF,0);

if ((iBarShift(NULL,TF,t)-iBarShift(NULL,TF,iTime(NULL,TF,0))==5)
   {
   t=0;
   Также обнуляем все параметры, которые использует индикатор, чтобы он смог сделать перерасчёт.
   }


 
FOReignEXchange:
Assim


Ótimo, mas se você não se importa, por favor, faça um atraso em minutos com este código

Isto é, em configurações de indicadores, vamos definir o redesenho em minutos, e a partir de M1 vamos tomar o contador

Razão: