第一部分
MA5:MA(C,5);
MA10:MA(C,10);
AA:=CROSS(MA5,MA10);
BUY(HOLDING=0 AND AA,1,MARKET);
第二部分
COND1:=REF(C,1);
COND2:=REF(C,1);
TJA:=COND1+10*MINDIFF;
TJB:=COND2-10*MINDIFF;
我有个非常简单的想法,想通过跟上一根K线的收盘价对比,大于收盘价10*MINDIFF就开多,小于就开空
不过在程序运行前,我得先设置个已入场点(如第一部分),好让接下来根据上一条K线比值来做反手(如第二部分)
但是,第一部分这样写法,好像会干扰到接下来的条件判断,虽然我用HOLDING=0来限制,但结果不理想。
请问,有没有好的写法,代替第一部分,人为的设置起始点?
看不懂这两个部分的关系,请说明下这两个没有关系的部分是有什么作用
MA5:MA(C,5);
MA10:MA(C,10);
AA:=CROSS(MA5,MA10);
BUY(HOLDING=0 AND AA,1,MARKET);
COND1:=REF(C,1);
COND2:=REF(C,1);
TJA:=COND1+10*MINDIFF;
TJB:=COND2-10*MINDIFF;
A:=OPEN<TJA AND HIGH>TJA AND ENTERBARS>0;
B:=OPEN>TJB AND LOW<TJB AND ENTERBARS>0;
IF HOLDING<0 AND A THEN
BEGIN
SELLSHORT(1,0,LIMITR,TJA);
BUY(1,S,LIMITR,TJA);
END
IF HOLDING>0 AND B THEN
BEGIN
SELL(1,0,LIMITR,TJB);
BUYSHORT(1,S,LIMITR,TJB);
END
这样写是否有问题?
没有第一部分做个起点,是没有信号出现的
当根K线对应的上一根K线的收盘价 (1分钟周期)
如果一开始持有多单,现在这根K线<ref(c,1)几个点,就反手做空;
如果一开始持有空单,。。。。。
你把它复制运行下不就知道了吗