开多条件是这样的
日线
ma5:=ma(c,5);
ma10:=ma(c,10);
kd:=c>ma10 and ma5>ma10;
求开多以来K线的根数
variable:a=0;
ma5:ma(c,5);
ma10:ma(c,10);
KD:=c>ma10 and ma5>ma10; //开多条件
PD:=ma5<ma10; //平多条件
KK:==c<ma10 and ma5<ma10; //开空条件
PK:= ma5>ma10; //平空条件
if TYPEBAR(1 , 1)>0 then A:=A+1;//每根K线+1
平空:SELLSHORT(PK,1,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,1,THISCLOSE); //开多信号
平多:SELL(PD,1,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,1,THISCLOSE); //开空信号
通不过呀,具体怎么用这个函数,
上面怎么样修改
没看懂你的A是用来干什么的,如果是没用来干什么的,那么你那样写就可以了
enterbars是指开仓以来的K线根数,
可是此时并不开仓,是因为条件条复杂,不是单纯用BARSLAST统计个数,
还要可能要引用这个K线根数
比如上面为例
c>ma10 and ma5>ma10满足这个条件以来类似开仓的个数
这还要加一个条件才是真正的开仓,
这时才可以用enterbars
也就是统一某个条件成立了多少根k线和开仓没有什么直接关系?
是的,统计某个成立的条件以来的K线个数,
不是开仓以来的个数