求两根均线,金叉死叉之间的K线根数、如何编写
void OnStart() { Print(GetMaCrossKCount(30,60,MODE_SMA)); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int GetMaCrossKCount(int maPeriodShort,int maPeriodLong,ENUM_MA_METHOD maMethod) { int kStart=-1,kEnd=-1; double maShortCur,maShortPrev,maLongCur,maLongPrev; for(int ii=0; ii<Bars(Symbol(),Period())-1; ii++) { maShortCur=iMA(Symbol(),Period(),maPeriodShort,0,maMethod,PRICE_CLOSE,ii); maShortPrev=iMA(Symbol(),Period(),maPeriodShort,0,maMethod,PRICE_CLOSE,ii+1); maLongCur=iMA(Symbol(),Period(),maPeriodLong,0,maMethod,PRICE_CLOSE,ii); maLongPrev=iMA(Symbol(),Period(),maPeriodLong,0,maMethod,PRICE_CLOSE,ii+1); if(kStart==-1 && ((maShortCur>maLongCur && maShortPrev<maLongPrev) || (maShortCur<maLongCur && maShortPrev>maLongPrev))) { kStart=ii; continue; } if(kStart!=-1 && kEnd==-1 && ((maShortCur>maLongCur && maShortPrev<maLongPrev) || (maShortCur<maLongCur && maShortPrev>maLongPrev))) { kEnd=ii; break; } if(kStart!=-1 && kEnd!=-1) break; } if(kStart!=-1 && kEnd!=-1) return kEnd-kStart+1; return -1; }
mt4 版
tanjimn:
求两根均线,金叉死叉之间的K线根数、如何编写
mt5呢?
求两根均线,金叉死叉之间的K线根数、如何编写
连个谢都不说?呵呵,那还是留给其他网上朋友接力吧。。。
ambercrystal:
连个谢都不说?呵呵,那还是留给其他网上朋友接力吧。。。
谢谢兄弟😊
连个谢都不说?呵呵,那还是留给其他网上朋友接力吧。。。
ambercrystal:
谢谢!测试了,没动作。
mt4 版
stone1968:
谢谢!测试了,没动作。
谢谢!测试了,没动作。
这是代码范例,以脚本方式来作代码分享,输出结果在日志。