BarsCalculated

Retorna o número de dados calculados para o indicador especificado.

int  BarsCalculated(
   int       indicator_handle,     // handle do indicador
   );

Parâmetros

indicator_handle

[in]  O handle do indicador, retornado pela função do indicador correspondente.

Valor do Retorno

Retorna a quantidade de dados calculados no buffer de indicador, ou -1 em caso de erro (dados ainda não calculados)

Observação

A função é útil quando é necessário obter os dados do indicador imediatamente após sua criação (o handle do indicador está disponível).

Exemplo:

void OnStart()
  {
   double Ups[];
//--- define a ordenação de série de tempo para os arrays
   ArraySetAsSeries(Ups,true);
//--- cria handle para o indicador Fractal
   int FractalsHandle=iFractals(NULL,0);
//--- redefine o código de erro
   ResetLastError();
//--- tenta copiar os valores do indicador
   int i,copied=CopyBuffer(FractalsHandle,0,0,1000,Ups);
   if(copied<=0)
     {
      Sleep(50);
      for(i=0;i<100;i++)
        {
         if(BarsCalculated(FractalsHandle)>0)
            break;
         Sleep(50);
        }
      copied=CopyBuffer(FractalsHandle,0,0,1000,Ups);
      if(copied<=0)
        {
         Print("Failed to copy upper fractals. Erro = ",GetLastError(),
         "i = ",i,"    copiado = ",copied);
         return;
        }
       else
         Print("Upper fractals copied",
         "i = ",i,"    copiado = ",copied);
     }
   else Print("Upper fractals copied. ArraySize = ",ArraySize(Ups));
  }