int IndicatorCounted( )
在自定义最后一次开启之后,函数返回柱的总数不会改变。计算过的柱数无须重新计算。大多数情况下, 同样数额的索引值不需要重估。函数应用到优化计算中。
注解: 最近的柱无须考虑计算, 在多数情况下, 这个柱是要被重估的。不过,自定义指标显示交易中的新柱的第一替克。 可能先前柱的最后一个替克没有处理的结果(因为在最后 一个替克进入时倒数第二个没有 处理 完成)客定义标将不会显示和计算。 在这样的情况下为了避免错误, IndicatorCounted()函数会返回前一个柱。
示例:
- int start()
- {
- int limit;
- int counted_bars=IndicatorCounted();
- //---- 检验可能出现错误
- if(counted_bars<0) return(-1);
- //---- 最后数的柱将被重数
- if(counted_bars>0) counted_bars--;
- limit=Bars-counted_bars;
- //---- 主环
- for(int i=0; i<limit; i++)
- {
- //---- ma_shift set to 0 because SetIndexShift called abowe
- ExtBlueBuffer[i]=iMA(NULL,0,JawsPeriod,0,MODE_SMMA,PRICE_MEDIAN,i);
- ExtRedBuffer[i]=iMA(NULL,0,TeethPeriod,0,MODE_SMMA,PRICE_MEDIAN,i);
- ExtLimeBuffer[i]=iMA(NULL,0,LipsPeriod,0,MODE_SMMA,PRICE_MEDIAN,i);
- }
- //---- 完成
- return(0);
- }
复制代码
|