Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共3 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:盈利后不再开仓,有地方不对,请高手,使用金字塔的全局变量数据库修改下

1楼
toby907 发表于:2009/12/22 15:25:55

IF (DAY()<>REF(DAY(),1)) THEN BEGIN
BWINCOUNT:=0;
SWINCOUNT:=0;
END;


IF BWINCOUNT=0 THEN BEGIN
    IF BWINCOUNT=0 THEN BEGIN
       TBUY(CLOSE>HH2 AND TTYPE(1)<>1 AND TIME<145901 AND TEXITBARS<>0,N,LMT,CLOSE+MINDIFF);
         END
      
    IF TTYPE(1)=1 THEN BEGIN
     TSELL((CLOSE<LL1 OR TIME>145900 OR CLOSE>(TENTERPRICE+20) OR CLOSE<(TENTERPRICE-5)),N,LMT,CLOSE-MINDIFF);
        END
    
    IF (TTYPE(1)=2 AND TENTERPRICE<TEXITPRICE) THEN BEGIN
     BWINCOUNT:=1;
     END
    
 END

 


     IF SWINCOUNT=0  THEN BEGIN
    IF SWINCOUNT=0 THEN BEGIN
       TBUYSHORT(CLOSE<LL2 AND TTYPE(1)<>3 AND TIME<145901 AND TEXITBARS<>0,N,LMT,CLOSE-MINDIFF);
    END
      
    IF TTYPE(1)=3 THEN BEGIN
     TSELLSHORT((CLOSE>HH1 OR TIME>145900 OR CLOSE>(TENTERPRICE+5) OR CLOSE<(TENTERPRICE-5)),N,LMT,CLOSE+MINDIFF);
     END
    
    IF (TTYPE(1)=4 AND TENTERPRICE>TEXITPRICE) THEN BEGIN
     SWINCOUNT:=1;
     END
    
     END

[此贴子已经被admin于2009-12-22 15:28:08编辑过]
2楼
admin 发表于:2009/12/22 15:34:19

IF (DAY()<>REF(DAY(),1)) THEN BEGIN
EXTGBDATASET('BWINCOUNT',0);
EXTGBDATASET('SWINCOUNT',0);
END;

BWINCOUNT:=EXTGBDATA('BWINCOUNT');
SWINCOUNT:=EXTGBDATA('SWINCOUNT');

IF BWINCOUNT=0 THEN BEGIN
    IF BWINCOUNT=0 THEN BEGIN
       TBUY(CLOSE>HH2 AND TTYPE(1)<>1 AND TIME<145901 AND TEXITBARS<>0,N,LMT,CLOSE+MINDIFF);
         END
      
    IF TTYPE(1)=1 THEN BEGIN
     TSELL((CLOSE<LL1 OR TIME>145900 OR CLOSE>(TENTERPRICE+20) OR CLOSE<(TENTERPRICE-5)),N,LMT,CLOSE-MINDIFF);
        END
    
    IF (TTYPE(1)=2 AND TENTERPRICE<TEXITPRICE) THEN BEGIN
     EXTGBDATASET('BWINCOUNT',1);
     END
    
 END

 


     IF SWINCOUNT=0  THEN BEGIN
    IF SWINCOUNT=0 THEN BEGIN
       TBUYSHORT(CLOSE<LL2 AND TTYPE(1)<>3 AND TIME<145901 AND TEXITBARS<>0,N,LMT,CLOSE-MINDIFF);
    END
      
    IF TTYPE(1)=3 THEN BEGIN
     TSELLSHORT((CLOSE>HH1 OR TIME>145900 OR CLOSE>(TENTERPRICE+5) OR CLOSE<(TENTERPRICE-5)),N,LMT,CLOSE+MINDIFF);
     END
    
    IF (TTYPE(1)=4 AND TENTERPRICE>TEXITPRICE) THEN BEGIN
     EXTGBDATASET('SWINCOUNT',1);
     END
    
     END

3楼
admin 发表于:2009/12/22 15:49:44

对于多品种交易,因为全局变量使用一个索引会导致不同品种之间的相互干扰,例如

BWINCOUNT:=EXTGBDATA('BWINCOUNT');
SWINCOUNT:=EXTGBDATA('SWINCOUNT');

 

因为所有的索引都用'BWINCOUNT'索引,所以后面的品种会把前面覆盖掉.解决办法是使用每个品种的代码加以区分,使他们相互不受干扰

EXTGBDATASET(STKLABEL&'BWINCOUNT',0);
EXTGBDATASET(STKLABEL&'SWINCOUNT',0);

&符号表示两个字符串相加

共3 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.02734 s, 3 queries.