以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- [注意]xx行解释错误 (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=63846) |
-- 作者:qwer123 -- 发布时间:2014/4/14 8:45:47 -- [注意]xx行解释错误 xx行解释错误在金字塔使用过程中经常遇到,开始还以为是自己写的程序有问题,往往是费了半天的工夫也找不到问题。一般把金字塔重启一下就能恢复正常。现在我才发现出现这个问题是由于计算机资源问题引起的(除个别是代码写的有问题)。 下面是一段进行统计的程序,在“日线”下显示 我的计算机一般情况下用4个“stkindiex”问题不大,如果多了就会出现“xx行解释错误”; 但有时候只用2个“stkindiex”也会出现这个问题,并且要把金字塔重启好几遍才能正常; 你们可以测试一下,看看这个问题是不是“正常”的。随便找一个交易程序替代“qq25”就可以了,qq25有500行的码; //股指期货自动交易程序(系统测试) //编制: //日期: //修改记录: //******************************** r1:=barslast(date<>ref(date,1)); r2:=ref(o,r1); //partline(r1>0,r2); //******************************** rr1:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,80,0); rr2:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,120,0); rr3:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,135,0); //rr4:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,120,0); //rr5:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,135,0); //rr6:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,95,0); //rr7:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,100,0); //rr8:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,105,0); //rr9:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,110,0); //rr10:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,115,0); //rr11:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,120,0); //rr12:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,125,0); //rr13:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,130,0); //rr14:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,135,0); //rr15:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,140,0); //rr16:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,145,0); //rr17:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,150,0); //rr18:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,155,0); //rr19:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,160,0); //rr20:=stkindiex(\'if00\',\'qq25.盈亏\',0,22,165,0); r15:=rr1+rr2+rr3{+rr4+rr5+rr6+rr7+rr8+rr9+}; //******************************** 总盈利:r15,colorred,linethick1,noaxis; variable:hc=0; 回撤:=hhv(r15,3000)-r15,linethick0,coloryellow; if 回撤>hc then hc:=回撤; 最大回撤:hc,linethick0,coloryellow; 日盈亏:r15-ref(r15,1),linethick0; 总盈利/最大回撤:r15/回撤,colorwhite,linethick0; r20:=if(r15>ref(r15,1),1,0); r22:=if(r15<>ref(r15,1),1,0); r21:=100*sum(r20,0)/(sum(r22,0)); 胜率:r21,linethick0,colorwhite; r30:=if(r15>ref(r15,1),r15-ref(r15,1),0); r31:=sum(r30,0); r32:=if(r15>ref(r15,1),1,0); r33:=sum(r32,0); 平均盈利:=r31/r33,linethick0,colorwhite; r40:=if(r15<ref(r15,1),r15-ref(r15,1),0); r41:=sum(r40,0); r42:=if(r15<ref(r15,1),1,0); r43:=sum(r42,0); 平均亏损:=r41/r43,linethick0,colorwhite; r50:=平均盈利/(-1*平均亏损),linethick0; 平均盈利/平均亏损:r50,linethick0,colorwhite; 总盈利/总亏损:r31/(-1*r41),colorwhite,linethick0; 模型综合性能:胜率*r50,linethick0,colorwhite; |
-- 作者:yukizzc -- 发布时间:2014/4/14 9:50:45 -- qq25这个换成系统自带的那些交易系统有这个现象吗?我这边调用个自带的没有这个错误提示 |
-- 作者:qwer123 -- 发布时间:2014/4/14 10:09:16 -- 这个没有试,把替代qq25的程序搞的复杂一点,qq25有500行代码。这个问题重复性非常好,多试试! [此贴子已经被作者于2014/4/14 10:10:10编辑过]
|
-- 作者:qwer123 -- 发布时间:2014/4/14 10:17:23 -- 再:我用自己的其他程序替代qq25也会出现这个问题。qq25单独使用没有程序“解释错误”的问题! |
-- 作者:yukizzc -- 发布时间:2014/4/14 11:27:19 -- 这个盈亏是代码里其他计算得出的,你在qq25里面添加个a:c,然后引用这个a指标没有问题吧 |
-- 作者:qwer123 -- 发布时间:2014/4/14 14:57:32 -- 好,我什么时候试试 |
-- 作者:lcgs005 -- 发布时间:2020/11/28 9:47:26 -- v5.31也出现同样的错误,策略写完后,点编译公式,显示 测试通过,加载到图表上时,显示错误,关键显示错误的行号内容是没问题的,导致查不到, |