以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  日蜡程序,我用30MA做程序化,没反应?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=148486)

--  作者:程序学习者
--  发布时间:2017/3/2 10:19:54
--  日蜡程序,我用30MA做程序化,没反应?
你好!这段代码对不对?
      我用这段代码,然后用图表化交易,先了6个品种做测试。选用30分钟的K线周期及走完K线模式
启动程序之后,为什么没有出现开仓。是不是哪里设置还是程序代码有问题,麻烦老师帮我看一下。



INPUT:N(41,3,100,1),ss(1,1,10000,1);//表示定义参数N,缺省值为41,最小值为3,最大值为100,,优化步长为1

A:=ref(isup,1) and isdown and o>ref(c,1) and c<ref(o,1);  //看空  吞没线
B:=ref(isdown,1) and isup and c>ref(o,1) and o<ref(c,1);  //看多  吞没线
A1:=ref(isdown,1) and isup and abs(c-o)/ref(abs(c-o),1)>=0.5;  //刺透线
//上涨或下跌捉腰线
A2:=(isup and (h-c)/(c-o)<=0.1) or (isup and (o-l)/(c-o)<=0.1); //多
B1:=(isdown and (c-l)/(o-c)<=0.1) or (isdown and (h-o)/(o-c)<=0.1); //空
B2:=ref(isup,1) and isdown and abs(c-o)/ref(abs(c-o),1)<0.5;  //乌云盖顶
B3:=(isup and c>ref(c,1) and (o-l)/(c-o)>=2 and (h-c)/(c-o)<=0.2) or  (isdown and c>ref(c,1) and (c-l)/(o-c)>=2 and (h-o)/(o-c)<=0.2);  //上吊线
A3:=(isup and c<ref(c,1) and (o-l)/(c-o)>=2 and (h-c)/(c-o)<=0.2) or  (isdown and c<ref(c,1) and (c-l)/(o-c)>=2 and (h-o)/(o-c)<=0.2); //锤子线
B4:=(isup and c>ref(c,1) and (h-c)/(c-o)>=2 and (o-l)/(c-o)<=0.2) or  (isdown and c>ref(c,1) and (h-o)/(o-c)>=2 and (o-l)/(o-c)<=0.2);  //流星线
A4:=(isup and c<ref(c,1) and (h-c)/(c-o)>=2 and (o-l)/(c-o)<=0.2) or  (isdown and c<ref(c,1) and (h-o)/(o-c)>=2 and (o-l)/(o-c)<=0.2);  //倒锤线
B5:=ref(isup,1) and isdown and c>ref(o,1) and o<ref(c,1);  //看空  孕线
A5:=ref(isdown,1) and isup and c<ref(o,1) and o>ref(c,1); //看多  孕线           

手数:=SS;
//交易条件:
COND1:=B OR B1 OR B2 OR B3 OR B4 OR B5;//开空平多条件
COND2:=A OR A1 OR A2 OR A3 OR A4 OR A5;//开多平空条件
//交易系统
IF COND1  THEN //如果COND1在14点55分前成立,那么
BEGIN
 IF HOLDING=0 THEN BUYSHORT(1,1,MARKET);//如果没有持单,那么以市价空头买入一手
 IF HOLDING>0 AND ENTERBARS>N THEN//如果持有多单,上次开仓到当前的周期数大于N,那么  
   BEGIN 
   SELL(1,0,MARKET);//平多单,以市价卖出所有持仓量
   BUYSHORT(1,手数,MARKET);//开空单,以市价空头买入1手
  END
END

IF COND2 THEN//如果COND2在14点55分前成立,那么
BEGIN
 IF HOLDING=0 THEN BUY(1,1,MARKET);//如果没有持单,那么以市价买入一手
 IF HOLDING<0  AND ENTERBARS>N THEN//如果持有空单,上次开仓到当前的周期数大于N,那么
   BEGIN 
   SELLSHORT(1,0,MARKET);//平空单,以市价空头卖出所有持仓量
   BUY(1,手数,MARKET);//开多单,以市价买入1手
  END
END
IF TIME>145500 THEN//如果时间在14点55分以后,那么
BEGIN
 SELL(HOLDING>0,0,MARKET);//如果持有多单,以市价卖出所有持仓量 
 SELLSHORT(HOLDING<0,0,MARKET);//如果持有空单,以市价空头卖出所有持仓量                                                                                    
END




--  作者:jinzhe
--  发布时间:2017/3/2 10:33:13
--  
k线图上有交易信号吗?
--  作者:程序学习者
--  发布时间:2017/3/2 10:40:23
--  
程序启动后,交易过程的时间段上没有信号,但过去的时段是有信号的!
比方说我今天 9:20启动程序,到现在没有一个信号出现。但昨天,前天的都有开多,开空的信号!
是不是金字塔要补数据还是什么情况。我看程序也是在系统上结合起来复制的,应该没问题啊!

--  作者:jinzhe
--  发布时间:2017/3/2 10:50:10
--  
随便找了一个,有信号的啊,你测试的是哪些品种合约?
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170302105036.png
图片点击可在新窗口打开查看

--  作者:程序学习者
--  发布时间:2017/3/2 10:57:06
--  
图片点击可在新窗口打开查看我也是有信号的,但在启动后没信号。有些是明显的信号?
--  作者:程序学习者
--  发布时间:2017/3/2 10:58:21
--  
老师图片如何上传,我传上去打不开
--  作者:jinzhe
--  发布时间:2017/3/2 11:05:09
--  
我启动交易了,前面的信号还在啊
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2017/3/2 11:05:24
--  

http://www.weistock.com/bbs/dispbbs.asp?BoardID=16&ID=94734&replyID=&skin=1

上传图片的方法


--  作者:程序学习者
--  发布时间:2017/3/2 11:06:00
--  
我知道了,图表中的“时段“之前都是标红的,我点击一下,变黑色后,就出现当前的信号了!
这个时段是什么意思,做什么用的?
[此贴子已经被作者于2017-3-2 11:06:43编辑过]

--  作者:jinzhe
--  发布时间:2017/3/2 11:12:04
--  

用来限制k线图上显示的k线数的

没有必要就不要去设置


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