以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  信号乱出  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=180993)

--  作者:jinxin168
--  发布时间:2020/7/2 13:32:34
--  信号乱出
手数:= 1;
持仓量:= ABS(HOLDING);
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  := EMA(DIFF,9);
MACD:=2*(DIFF-DEA);


MA1:MA(C,MA1ZQ);
MA2:MA(C,MA2ZQ);

JCZQ:=BARSLAST(CROSS(MA1,MA2))+1;
SCZQ:=BARSLAST(CROSS(MA2,MA1))+1;

MACDTJD:=COUNT(DIFF>0 , JCZQ) >0;
MACDTJK:=COUNT(DIFF<0 , SCZQ) >0;

JCZQ2:=BARSLAST(CROSS(MA1,MA2) AND MACDTJK)+1;
SCZQ2:=BARSLAST(CROSS(MA2,MA1) AND MACDTJD)+1;

UP1:=HHV(REF(C,1),JCZQ);
DN1:=LLV(REF(C,1),SCZQ);

//此处可以用于显示上下轨道
UP:REF(UP1,SCZQ2);
DN:REF(DN1,JCZQ2);


//交易条件:
开多条件:=High>=UP and REF(DIFF,1)>0 ;
开空条件:=Low<=DN and REF(DIFF,1)<0 ;

平多条件:=REF(DIFF,1)<0;
平空条件:=REF(DIFF,1)>0;


平空:sellshort(平空条件 and holding<0 and ENTERBARS>1, 持仓量,MARKET);
平多:sell(平多条件 and holding>0 and ENTERBARS>1,持仓量,MARKET);

开空:buyshort(开空条件 and HOLDING>=0,手数,limitr,DN);
开多:buy(开多条件 and HOLDING<=0, 手数,limitr,UP);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值

--  作者:wenarm
--  发布时间:2020/7/2 14:04:09
--  

请把你不要实现的逻辑表述一下,否者只给代码没法分析。并且你说的乱出信号,也具体形容下。

 


--  作者:jinxin168
--  发布时间:2020/7/2 15:08:41
--  
就是自己看绝开仓部分没写错啊,但是信号是乱的。
--  作者:jinxin168
--  发布时间:2020/7/2 15:10:53
--  
怎么传图片啊,我传一点图片上来,您一看就明白了。
--  作者:banzhuan
--  发布时间:2020/7/2 15:19:25
--  
 
图片点击可在新窗口打开查看此主题相关图片如下:ct.gif
图片点击可在新窗口打开查看

--  作者:jinxin168
--  发布时间:2020/7/2 15:24:10
--  
就是这样
--  作者:jinxin168
--  发布时间:2020/7/2 15:25:31
--  

图片点击可在新窗口打开查看此主题相关图片如下:1.gif
图片点击可在新窗口打开查看

就是这样,我检查了好就,开仓程序没有问题啊。

--  作者:banzhuan
--  发布时间:2020/7/2 15:27:06
--  
白色箭头是指开平仓价格不在K线范围内,是无效信号,需要在开平仓语句后加上 IGNORECHECKPRICE 函数
--  作者:jinxin168
--  发布时间:2020/7/2 15:30:27
--  
好的,可以了,谢谢,以后开仓语句都要加吗,在什么情况下要加。
--  作者:banzhuan
--  发布时间:2020/7/2 15:31:45
--  
开仓价格超出该根K线范围都要加,在K线范围内的话不用