下载MetaTrader 5

BarsCalculated

返回指定指标计算数组的数量。

int  BarsCalculated(
   int       indicator_handle,     // 指标处理
   );

参量

indicator_handle

[in]  指标处理,通过类似指标函数返回。

返回值

在指标缓冲区返回计算数据的数量或者错误中的-1(数据不能进行计算)。

注释

当需要在创建后立即获得指标数据时,该函数是很有用的(指标处理可行)。

示例:

void OnStart()
  {
   double Ups[];
//--- 设置整理数组的时间序列
   ArraySetAsSeries(Ups,true);
//--- 为分形指标创建处理程序
   int FractalsHandle=iFractals(NULL,0);
//--- 重置错误代码
   ResetLastError();
//--- 复制指标值
   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. Error = ",GetLastError(),
         "i = ",i,"    copied = ",copied);
         return;
        }
       else
         Print("Upper fractals copied",
         "i = ",i,"    copied = ",copied);
     }
   else Print("Upper fractals copied. ArraySize = ",ArraySize(Ups));
  }


更新: 2015.12.03