以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  金字塔软件的输入变量最大允许多少个变量?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=164574)

--  作者:qq代人发帖
--  发布时间:2018/7/25 13:42:58
--  金字塔软件的输入变量最大允许多少个变量?
金字塔软件的输入变量最大允许多少个变量?
用INPUT变量自动输入参数,在复杂程序设计时发现输入参数变量的数目受到了限制,没能完成全部参数输入功能。
请问金字塔软件是否有规定多少个变量,如何解决这个问题?
现在程序无法进行优化工作。

图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:2.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/7/25 13:46:06编辑过]

--  作者:FireScript
--  发布时间:2018/7/25 13:51:34
--  
 你总共定义了大概多少输入参数,我本地试下。

--  作者:jinniu1058
--  发布时间:2018/7/25 14:01:10
--  

输入参数超过了35个,发现没能全部输入。


--  作者:FireScript
--  发布时间:2018/7/25 14:40:33
--  
 
图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

35个是不会受到限制的。
优化那个地方是会对变量做一个排序的。你看到的变量顺序和代码里面定义的不一定一致。

--  作者:jinniu1058
--  发布时间:2018/8/5 13:29:28
--  

我按照你的方法进行了测试,输入60个变量都可以,变量个数关系不大,问题出现在设置数值大小上,如果将参数100换成800 或者1000就出现问题了。


--  作者:jinniu1058
--  发布时间:2018/8/5 13:31:58
--  

 

INPUT: Value1(800,1,800,1);
INPUT: Value2(800,1,800,1);
INPUT: Value3(800,1,800,1);
INPUT: Value4(800,1,800,1);
INPUT: Value5(800,1,800,1);
INPUT: Value6(800,1,800,1);
INPUT: Value7(800,1,800,1);
INPUT: Value8(800,1,800,1);
INPUT: Value9(800,1,800,1);
INPUT: Value10(800,1,800,1);

INPUT: Value11(800,1,800,1);
INPUT: Value12(800,1,800,1);
INPUT: Value13(800,1,800,1);
INPUT: Value14(800,1,800,1);
INPUT: Value15(800,1,800,1);
INPUT: Value16(800,1,800,1);
INPUT: Value17(800,1,800,1);
INPUT: Value18(800,1,800,1);
INPUT: Value19(800,1,800,1);
INPUT: Value20(800,1,800,1);

INPUT: Value21(800,1,800,1);
INPUT: Value22(800,1,800,1);
INPUT: Value23(800,1,800,1);
INPUT: Value24(800,1,800,1);
INPUT: Value25(800,1,800,1);
INPUT: Value26(800,1,800,1);
INPUT: Value27(800,1,800,1);
INPUT: Value28(800,1,800,1);
INPUT: Value29(800,1,800,1);
INPUT: Value30(800,1,800,1);

INPUT: Value31(800,1,800,1);
INPUT: Value32(800,1,800,1);
INPUT: Value33(800,1,800,1);
INPUT: Value34(800,1,800,1);
INPUT: Value35(800,1,800,1);
INPUT: Value36(800,1,800,1);
INPUT: Value37(800,1,800,1);
INPUT: Value38(800,1,800,1);
INPUT: Value39(800,1,800,1);
INPUT: Value40(800,1,800,1);

INPUT: Value41(800,1,800,1);
INPUT: Value42(800,1,800,1);
INPUT: Value43(800,1,800,1);
INPUT: Value44(800,1,800,1);
INPUT: Value45(800,1,800,1);
INPUT: Value46(800,1,800,1);
INPUT: Value47(800,1,800,1);
INPUT: Value48(800,1,800,1);
INPUT: Value49(800,1,800,1);
INPUT: Value50(800,1,800,1);

INPUT: Value51(800,1,800,1);
INPUT: Value52(800,1,800,1);
INPUT: Value53(800,1,800,1);
INPUT: Value54(800,1,800,1);
INPUT: Value55(800,1,800,1);
INPUT: Value56(800,1,800,1);
INPUT: Value57(800,1,800,1);
INPUT: Value58(800,1,800,1);
INPUT: Value59(800,1,800,1);
INPUT: Value60(800,1,800,1);


//中间变量
MA1:=MA(CLOSE,Value1);
MA2:=MA(CLOSE,Value2);

手数:=Value3;
//交易条件

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件

//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件,手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

//注意交易系统先开后平的原则


--  作者:jinniu1058
--  发布时间:2018/8/5 13:46:16
--  

请问参数自动输入是否有什么要求?或者说INPUT函数有什么限定吗?


--  作者:无为剑
--  发布时间:2018/8/5 14:44:49
--  
变量总数太多了,建议你减小。
优化时总的变量换算成字符串后总长度不能超过49个字节

--  作者:jinniu1058
--  发布时间:2018/8/6 19:33:44
--  
“INPUT: Value60(800,1,800,1);“这个字节数和“INPUT: Value1(100,1,100,1); “”字节数是一样的吧,为什么参数100就可以,800就不可以?
--  作者:FireScript
--  发布时间:2018/8/7 9:24:03
--  
 测试了下

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

和参数值没有关系,100也好800也好,都一样。但是如上图,我缩短了变量名称,优化那里显示的变量数量就能增加。