利用5分钟 10分钟 30分钟 三个不同的周期,以及当MA5、MA10两条均线交叉来判断。
设定:
在5分钟、30分钟两周期里当CROSS(MA5,MA10)、CROSS(MA10,MA5)成立时,分别只开多跟只开空,不做平仓动作;
在10分钟周期里当CROSS(MA5,MA10)、CROSS(MA10,MA5)成立时,分别只平空跟只平多,不做开仓动作;
请帮忙写下
公式1:
cross1:cross(ma(c,5),ma(c,10));
cross2:cross(ma(c,10),ma(c,5));
公式2:
s1_min5:=stkindi('','公式1.cross1',0,2);
s2_min5:=stkindi('','公式1.cross2',0,2);
s1_min30:=stkindi('','公式1.cross1',0,4);
s2_min30:=stkindi('','公式1.cross2',0,4);
s1_min10:=stkindi('','公式1.cross1',0,18);
s2_min10:=stkindi('','公式1.cross2',0,18);
if s1_min5 and s2_min5 then buy(holding=0,1,market);
if s1_min30 and s2_min30 then buyshort(holding=0,1,market);
if s1_min10 then sellshort(1,0,market);
if s2_min10 then sell(1,0,market);
修改为30分钟周期使用,如下
s1_min30:=stkindi('',‘公式1.cross1',0,4);//30分钟买开
s2_min30:=stkindi('','公式1.cross2',0,4);//30分钟卖开
s1_min60:=stkindi('','公式1.cross1',0,11);//60分钟卖平
s2_min60:=stkindi('','公式1.cross2',0,11);//60分钟买平
s1_min120:=stkindi('','公式1.cross1',0,13);//120分钟买开
s2_min120:=stkindi('','公式1.cross2',0,13);//120分钟卖开
if s1_min30 and s1_min120 then buy(holding=0,1,market);
if s2_min30 and s2_min120 then buyshort(holding=0,1,market);
if s1_min60 then sellshort(1,0,market);
if s2_min60 then sell(1,0,market);
仍然无法达到预期的效果,编程有问题吗?
公式1写了没?
效果是啥效果?