Rss & SiteMap

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

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

标题:指示错误引用的括号不完整, 指向标注黄色区域, 但是那一行只有一句END?为什么会出错?

1楼
OscarDeng 发表于:2020/5/6 9:49:23
IF TSELLHOLDINGEX('','',2)>=空头开仓数 AND TSELLHOLDINGEX('','',1)<空头开仓数 THEN 
BEGIN
    TCANCEL(TSELLHOLDINGEX('','',3)>0,4);
    空头开仓数=TSELLHOLDINGEX('','',2);
END
//3.总空头持仓比现在开仓数要少
IF TSELLHOLDINGEX('','',2)<=空头开仓数 THEN
BEGIN
TCANCEL(TSELLHOLDINGEX('','',3)>0,4);
空头开仓数=INTPART(空头开仓数-TSELLHOLDINGEX('','',1));
//3.1 达到开空条件, 先检测程序化是否平衡先, 如果是平衡状态, 开始空
    IF(INTPART(空头开仓数)<1 ,1,INTPART(空头开仓数));//空头开仓数不能为0
//a.看成交量
//b.看卖一和买一的中间加个 DYNAINFO(34)卖一价;DYNAINFO(28)买一价; DYNAINFO(208)最小变动单位;
//成交量比例是自己设置的, 取5日的平均数。 千分之5那么多, 建议分两次下而且用加仓的方式来操作。
    IF 空头开仓数>24 or 成交量比例>=4 THEN
    BEGIN
  IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN 
  BEGIN 
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-2*DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
      IF DYNAINFO(34)-DYNAINFO(28)>DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN
  BEGIN 
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)),NOATTACK;
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END       
      IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208) THEN
      BEGIN 
      IF DYNAINFO(25)>DYNAINFO(31) THEN 
      BEGIN //DYNAINFO(31) 是买一量, DYNAINFO(25) 是卖一量,
      TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,2*空头开仓数/3,LMT,DYNAINFO(34)),NOATTACK;
    END
        IF DYNAINFO(25)<DYNAINFO(31) THEN
        BEGIN
        TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(34),NOATTACK;
    TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(28)),NOATTACK;
END
      END     
    END 
   IF 空头开仓数<=24 AND 空头开仓数>=4 AND 成交量比例<4 THEN    
   BEGIN
      IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN 
  BEGIN 
  TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
      IF DYNAINFO(34)-DYNAINFO(28)>=DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN
  BEGIN 
  TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
   END   
   IF 空头开仓数<=3 AND 空头开仓数>=2 AND 成交量比例<4 THEN //注意holding是策略的理论持仓,他不管实际仓位   
   BEGIN //DYNAINFO(31) 是买一量, DYNAINFO(25) 是卖一量,
    IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,空头开仓数,LMT,DYNAINFO(34)),NOATTACK;
  IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,空头开仓数,LMT,DYNAINFO(28)),NOATTACK;
   END
END

2楼
OscarDeng 发表于:2020/5/6 9:57:06
下面已经按照你的要求,TSELLHOLDINGEX('','',1)用了单引号, 空头开仓数:=TSELLHOLDINGEX('','',1)用了冒号, 还是出错说引用的括号不完整

//1.如果之前的开空持仓剩余数并且比现在空头开仓数还要多, 那就用之前的开空持仓剩余数,不需要开空。
IF TSELLHOLDINGEX('','',1)>=空头开仓数 THEN 空头开仓数:=TSELLHOLDINGEX('','',1);

//2.如果有平空挂单,之前的开空持仓剩余数比现在空头开仓数少, 总空头持仓比现在开仓数要多,那就用把要撤的单取消掉。 
IF TSELLHOLDINGEX('','',2)>=空头开仓数 AND TSELLHOLDINGEX('','',1)<空头开仓数 THEN 
BEGIN
    TCANCEL(TSELLHOLDINGEX('','',3)>0,4);
    空头开仓数:=TSELLHOLDINGEX('','',2);
END
//3.总空头持仓比现在开仓数要少
IF TSELLHOLDINGEX('','',2)<=空头开仓数 THEN
BEGIN
TCANCEL(TSELLHOLDINGEX('','',3)>0,4);
空头开仓数:=INTPART(空头开仓数-TSELLHOLDINGEX('','',1));
//3.1 达到开空条件, 先检测程序化是否平衡先, 如果是平衡状态, 开始空
    IF(INTPART(空头开仓数)<1 ,1,INTPART(空头开仓数));//空头开仓数不能为0
//a.看成交量
//b.看卖一和买一的中间加个 DYNAINFO(34)卖一价;DYNAINFO(28)买一价; DYNAINFO(208)最小变动单位;
//成交量比例是自己设置的, 取5日的平均数。 千分之5那么多, 建议分两次下而且用加仓的方式来操作。
    IF 空头开仓数>24 or 成交量比例>=4 THEN
    BEGIN
  IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN 
  BEGIN 
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-2*DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(34)-3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/8,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
      IF DYNAINFO(34)-DYNAINFO(28)>DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN
  BEGIN 
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)),NOATTACK;
  TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/4,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END       
      IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208) THEN
      BEGIN 
      IF DYNAINFO(25)>DYNAINFO(31) THEN 
      BEGIN //DYNAINFO(31) 是买一量, DYNAINFO(25) 是卖一量,
      TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,2*空头开仓数/3,LMT,DYNAINFO(34)),NOATTACK;
    END
        IF DYNAINFO(25)<DYNAINFO(31) THEN
        BEGIN
        TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(34),NOATTACK;
    TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(28)),NOATTACK;
END
      END     
    END 
   IF 空头开仓数<=24 AND 空头开仓数>=4 AND 成交量比例<4 THEN    
   BEGIN
      IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN 
  BEGIN 
  TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK;
TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/3,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
      IF DYNAINFO(34)-DYNAINFO(28)>=DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN
  BEGIN 
  TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK;
    TBUYSHORT(1,空头开仓数/2,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK;
      END
   END   
   IF 空头开仓数<=3 AND 空头开仓数>=2 AND 成交量比例<4 THEN //注意holding是策略的理论持仓,他不管实际仓位   
   BEGIN //DYNAINFO(31) 是买一量, DYNAINFO(25) 是卖一量,
    IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,空头开仓数,LMT,DYNAINFO(34)),NOATTACK;
  IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,空头开仓数,LMT,DYNAINFO(28)),NOATTACK;
   END
END

3楼
FireScript 发表于:2020/5/6 10:06:07
是你标记位置的下面的位置:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看
共3 条记录, 每页显示 10 条, 页签: [1]


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