您现在的位置:程序化交易>> 期货公式>> 金字塔等>> 金字塔知识>>正文内容

关于“引用公式过多......"的问题 [金字塔]

  • 咨询内容:
    1、在引用公式的时候,如果参数超出范围,会有“引用公式过多....”的错误。实际上,是参数超出范围,应该属于程序提示错误没有区分。2、我的如下代码也引起。“引用公式过多....”  貌似是把close赋值给变量引起的
    /////////////////////////////  逐K线模式 VARIABLE:mxk=0;VARIABLE:Kwf=1; VARIABLE:dl=0;   Bnmin:=3 ;    BnBT:=2;     URSI:=1;     YJ:=2;     RSIF:=3;     dl:=0;     dl:=close;  // 这里如果换成了具体数字,就不会弹出“引用公式过多....”的警告。     Kwf:=DL  ;  
         Bnmins:=numtostr(Bnmin,0);     BnBTs:=numtostr(BnBT,0);     URSIs:=numtostr(URSI,0);     YJs:=numtostr(yj,0);     RSIFs:=numtostr(RSIF,0);     Kwfs:=numtostr(Kwf,0);        PT0:= STKINDIEX('','Formula3.tx('&Bnmins&','&BnBTs&','&URSIs&','&yjs&','&rsifs&','&kwfs&')',0,1, 0 , 300 );     // PT0:= STKINDIEX('','Formula3.tx',0,1, 0 , 300 );   这里用默认参数的,不会有“引用公式过多....”

    //////////////////////////////////////////////////////////// Formula3 代码  逐K线模式
    INPUT:Bnmin(3,1,8,1), BnBT(2,1,8,1), URSI(1 , 0 ,1 , 1) , YJ(2 , 0, 1000, 1),RSIF(3, 3, 100,1) , Kwf(20,-400, 400,10);   VARIABLE: tx=1;   VARIABLE :DATA=0;      DATA:=close   ;    //TX:="MACD.DEA"(DATA ,data-11,9);   TX:= "SFJ@SDATA"(10 ,data   );         // 这个函数是DLL 输出的函数,逐K线模式,这里是返回一个随机数字。      



     

  • 金字塔客服: 另外 测试了下, 真的在公式中引用了50个以上的公式,没有问题。  看起来问题就是出在参数处理上面。

     

  • 用户回复:

    首先感谢您的测试,感谢对我们软件的支持

     

    然后说下这个问题

    其实你的测试已经很具体的,但是有个关键性的问题那就是根本没考虑到close,close在每根k线上的数值是不一样的,这个就造成了每根k线上都引用不同参数的公式,造成了实际上的重复引用,所以当前k线过多时会报错。你试试看把当前k线图缩小到50根k线之内,再看看是不是不会报错了。

     

     

     

     

 

有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友

可联系技术人员 QQ: 1145508240  有需要帮忙请点击这里留言!!!进行 有偿 编写!不贵!点击查看价格!


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容