Descargar MetaTrader 5

BarsCalculated

Devuelve la cantidad de datos calculados para el indicador especificado.

int  BarsCalculated(
   int       indicator_handle,     // manejador del indicador
   );

Parámetros

indicator_handle

[in]  Manejador del indicador obtenido por la función de indicador correspondiente.

Valor devuelto

Devuelve la cantidad de datos calculados en el búfer de indicadores, o devuelve -1 en caso del error (datos aún no han sido calculados).

Nota

Esta función es útil cuando es necesario conseguir los datos de indicador inmediatamente después de su creación (recepción del manejador del indicador).

Ejemplo:

void OnStart()
  {
   double Ups[];
//--- establecemos para los arrays el indicio de una serie temporal
   ArraySetAsSeries(Ups,true);
//--- creamos el manejador del indicador Fractals
   int FractalsHandle=iFractals(NULL,0);
//--- reinicializamos el código del error
   ResetLastError();
//--- intentaremos copiar el valor del 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("Fallo al copiar fractales superiores. Error = ",GetLastError(),
         "i = ",i,"    copied = ",copied);
         return;
        }
       else
         Print("Los fractales superiores se han copiado con éxito.",
         "i = ",i,"    copied = ",copied);
     }
   else Print("Los fractales superiores se han copiado con éxito. ArraySize = ",ArraySize(Ups));
  }


Actualizado: 2015.12.03