以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  请问怎么没有信号  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=73204)

--  作者:qq代人发帖
--  发布时间:2014/12/17 17:20:15
--  请问怎么没有信号
请教:不开仓
INPUT:SS(1,1,10,1);
INPUT:KXGS(555,555,1000,1);       /////不同周期下 不同品种k线数
//绘制四条均线
MA1:MA(C,5);
MA2:MA(C,10);
MA3:MA(C,20);
MA4:MA(C,60);
H1:=REF(HHV(HIGH,KXGS),1);           //////////////////////前1日高
H2:=REF(HHV(HIGH,KXGS),KXGS+1);      //////////////////////前2日高
H3:=REF(HHV(HIGH,KXGS),KXGS*2+1);    //////////////////////前3日高  
H4:=REF(HHV(HIGH,KXGS),KXGS*3+1);    //////////////////////前4日高
H5:=REF(HHV(HIGH,KXGS),KXGS*4+1);    //////////////////////前5日高
H6:=REF(HHV(HIGH,KXGS),KXGS*5+1);    //////////////////////前6日高

低1:=REF(LLV(LOW,KXGS),1);           //////////////////////前1日低
低2:=REF(LLV(LOW,KXGS),KXGS+1);      //////////////////////前2日低
低3:=REF(LLV(LOW,KXGS),KXGS*2+1);    //////////////////////前3日低
低4:=REF(LLV(LOW,KXGS),KXGS*3+1);    //////////////////////前4日低
低5:=REF(LLV(LOW,KXGS),KXGS*4+1);    //////////////////////前5日低
低6:=REF(LLV(LOW,KXGS),KXGS*5+1);    //////////////////////前6日低

DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);//MACD
DEA  :=EMA(DIFF,9);
MACD1 :=2*(DIFF-DEA),COLORSTICK;

if date>ref(date,1) then begin
    end
//准备下单条件,以MA1上穿MA2作为开多条件,以MA2下破MA1作为平多条件。

开仓时间1:=TIME>=010000 AND TIME<=183000;      
收盘时间1:=TIME>=184500 AND TIME<190000;
开多条件:=开仓时间1 AND REF(CLOSE,1)>H1 AND REF(CLOSE,1)>H2 AND REF(CLOSE,1)>H3 
    AND REF(CLOSE,1)>H4 AND REF(CLOSE,1)>H5 AND REF(CLOSE,1)>H6;

开空条件:=开仓时间1 AND REF(CLOSE,1)<低1 AND REF(CLOSE,1)<低2 AND REF(CLOSE,1)<低3 
    AND REF(CLOSE,1)<低4 AND REF(CLOSE,1)<低5 AND REF(CLOSE,1)<低6;    
    

平多条件:=HOLDING>0 AND MA2<MA3 OR REF(MACD1,1)<=0;                          
平空条件:=HOLDING<0 AND MA2>MA3 OR REF(MACD1,1)>=0;

 


//下单

if holding=0 and  开多条件
        then begin 
    buy(1,ss,market);
        end
if holding=0 and 开空条件
        then begin 
    buyshort(1,ss,market);
        end
//平仓
if  开空条件 then begin 
    sell(1,ss,market); 
   end
if 开多条件 then begin 
   sellshort(1,ss,market);
end



 
//////////////////////////////////////////////////////收盘平仓
if 收盘时间1 then begin 
if holding<0 then
     sellshort(1,ss,market); 
 
 
if holding>0 then 
      sell(1,ss,market);
      end  
//其他
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

[此贴子已经被作者于2014/12/17 17:21:43编辑过]

--  作者:jinzhe
--  发布时间:2014/12/17 17:29:54
--  

开多条件:=开仓时间1 AND REF(CLOSE,1)>H1 AND REF(CLOSE,1)>H2 AND REF(CLOSE,1)>H3
    AND REF(CLOSE,1)>H4 AND REF(CLOSE,1)>H5 AND REF(CLOSE,1)>H6;

开空条件:=开仓时间1 AND REF(CLOSE,1)<低1 AND REF(CLOSE,1)<低2 AND REF(CLOSE,1)<低3
    AND REF(CLOSE,1)<低4 AND REF(CLOSE,1)<低5 AND REF(CLOSE,1)<低6;   
   

 

开仓条件不成立,ref(c,1)不满足上面的任意一个判断式

[此贴子已经被作者于2014/12/17 17:30:01编辑过]

--  作者:太阳风
--  发布时间:2014/12/17 17:35:06
--  
不懂?
--  作者:太阳风
--  发布时间:2014/12/17 17:40:10
--  
能具体点吗?谢谢
--  作者:jinzhe
--  发布时间:2014/12/18 8:52:28
--  
就是开仓条件不成立,你用shift+q进行调试下看看,开仓条件不成立