以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- [求助]求助程序不能正常运行 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=167555) |
-- 作者:yjxqq -- 发布时间:2019/1/7 20:27:20 -- [求助]求助程序不能正常运行 请老师帮我看下,我的程序中信号显示是对的 ,但是系统没有执行,不知道是什么问题,请求老师的帮助。感谢。 一下为程序代码: //准备需要的中间变量 INPUT:n1(5,5,10,1),n2(8,8,10,1),n3(13,13,20,1),ss(1,1,10,1); //均线 ma1:ma(c,n1); ma2:ma(c,n2); ma3:ma(c,n3); //MACD DIFF := floor(EMA(CLOSE,12) - EMA(CLOSE,26)); DEA := floor(EMA(DIFF,9)); //KD RSV:=(CLOSE-LLV(LOW,13))/(HHV(HIGH,13)-LLV(LOW,13))*100; K:=floor(SMA(RSV,5,1)); D:=floor(SMA(K,5,1)); //持仓手数; 手数:=ss; //空头进场 M1:=(EXIST(CROSS(MA2,MA1),3)) or (EXIST(CROSS(MA3,MA2),3)); M2:=(EXIST(CROSS(D,K),3) AND DIFF<DEA) OR (EXIST(CROSS(DEA,DIFF),3) AND K<D); M3:=M1 AND M2 AND REF(ISDOWN OR ISEQUAL ,1); //空头平仓 EE:=REF(C>REF(HIGH,1),1)&&HIGH>=OPEN+6*MINDIFF; FF:=REF(C>REF(HIGH,1),2)&&REF(HIGH<OPEN+6*MINDIFF,1)&&HIGH>=REF(OPEN,1)+6*MINDIFF; JJ:=EE OR FF; //多头进场 M5:=(EXIST(CROSS(MA1,MA2),3)) OR (EXIST(CROSS(MA2,MA3),3)); M6:=(EXIST(CROSS(K,D),3) AND DIFF>DEA) OR (EXIST(CROSS(DIFF,DEA),3) AND K>D); M7:=M5 AND M6 AND REF(ISUP OR ISEQUAL,1); //多头平仓 GG:=REF(C<REF(LOW,1),1)&&LOW<=OPEN-6*MINDIFF; HH:=REF(C<REF(LOW,1),2)&&REF(LOW>OPEN-6*MINDIFF,1)&&LOW<=REF(OPEN,1)-6*MINDIFF; XX:=GG OR HH; //出仓线 CC:OPEN+6,LINEDASH,COLORBLUE;//空出仓线 DD:OPEN-6,LINEDOT,COLORGREEN;//多出仓线 //开仓与平仓条件 平空条件:=(JJ and time>094500 and time<162500);
平多条件:=(XX and time>094500 and time<162500); 开空条件:=(M3 and time>094500 and time<160000); 开多条件:=(M7 and time>094500 and time<160000); //开仓信号过滤 AA:DRAWICON(FILTER(开多条件,5),OPEN+1,1); BB:DRAWICON(FILTER(开空条件,5),OPEN-1,2); //平仓信号输出 WW:DRAWICON(EE,OPEN+6,4); ZZ:DRAWICON(GG,OPEN-6,5); //平仓 平空:SELLSHORT(平空条件 AND HOLDING<0,0,THISCLOSE); 平多:SELL(平多条件 AND HOLDING>0,0,THISCLOSE); 开空:BUYSHORT(BB AND HOLDING=0,手数,THISCLOSE); 开多:BUY(AA AND HOLDING=0,手数,THISCLOSE); //强平 平多1:SELL( TIME>162600 AND HOLDING>0,0,THISCLOSE); 平空1:SELLSHORT(TIME>162600 AND HOLDING>0,0,THISCLOSE); |
-- 作者:yukizzc -- 发布时间:2019/1/7 23:18:09 -- 图上都有交易信号的? 那样应该是没有问题的,看下交易日志中是怎么记录的,是不是盘中触发信号但是没下单? |
-- 作者:yjxqq -- 发布时间:2019/1/7 23:29:51 -- 就是没有交易的信号,显示的信号是图标显示是对的 。系统没有显示交易信号,也没有发出下单指令,麻烦老师了帮我看看这个应该怎么处理啊?感谢! |
-- 作者:wenarm -- 发布时间:2019/1/8 8:35:00 -- //开仓信号过滤
AA:DRAWICON(FILTER(开多条件,5),OPEN+1,1);
BB:DRAWICON(FILTER(开空条件,5),OPEN-1,2); 开空:BUYSHORT(BB AND HOLDING=0,手数,THISCLOSE);
开多:BUY(AA AND HOLDING=0,手数,THISCLOSE);
1.这个是绘图函数没有返回值,你用它做条件,自然恒不成立。 2.满足过滤的掉的信号作为开仓条件,你不觉得逻辑有问题吗? |
-- 作者:yjxqq -- 发布时间:2019/1/8 16:28:11 -- 感谢老师的指点!再次感谢!调整过来了! |