求助:数K线

 

我想以两根均线交叉时的那根K线为基准,数一下现价的K线柱到均线交叉的那根K线有几根,不知道怎么实现?可否用计算时间的方法来数。例如两根均线交叉时的那根K线的时间,到现价K线柱的时间差.不知道可不可以实现.如可以实现的话,应该怎么样编.请指教.谢谢

如图上中所示,我想数一下红线到黄线之间的K线柱,不知道怎么样实现?

fasterMAnow = iMA(NULL, 0, ma1, 0, my_mode1, PRICE_CLOSE, limit);
fasterMAprevious = iMA(NULL, 0, ma1, 0, my_mode1, PRICE_CLOSE, limit+1);
fasterMAafter = iMA(NULL, 0, ma1, 0, my_mode1, PRICE_CLOSE, limit-1);
slowerMAnow = iMA(NULL, 0, ma2, 0, my_mode2, PRICE_CLOSE, limit);
slowerMAprevious = iMA(NULL, 0, ma2, 0, my_mode2, PRICE_CLOSE, limit+1);
slowerMAafter = iMA(NULL, 0, ma2, 0, my_mode2, PRICE_CLOSE, limit-1);

tm1=(TimeDay(TimeCurrent())-1)*24*60+TimeHour(TimeCurrent())*60+TimeMinute(TimeCurrent());

if ((fasterMAnow > slowerMAnow) && (fasterMAprevious < slowerMAprevious) && (fasterMAafter > slowerMAafter))
{//up
myprice=slowerMAafter;
tm=tm1;
}
else
{
if ((fasterMAnow < slowerMAnow) && (fasterMAprevious > slowerMAprevious) && (fasterMAafter < slowerMAafter))
{//down
myprice=slowerMAafter;
tm=tm1;
}
}

运行后,发现均线交叉后再运行二根K线,TM就为O了,不知道哪里错了,请高人帮忙解决一下

 

点下十字光标拉下不就知道了

 
分别将当时的ibars赋值给不同变量,两者一减就行了
原因: