欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 关于系统提速的思路,王工看下是否可行

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有2899人关注过本帖树形打印复制链接

主题:关于系统提速的思路,王工看下是否可行

帅哥哟,离线,有人找我吗?
klc
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:993 积分:1787 威望:0 精华:5 注册:2012/11/28 17:37:20
关于系统提速的思路,王工看下是否可行  发帖心情 Post By:2015/2/25 13:11:33 [只看该作者]

1、软件白天开6小时,然后重启,晚上开11个小时,第二天重启

2、重新设计交易,将所有公式中运算量大的部分分离出来(例如复杂的指标运算)

3、利用自定义数据,将所有指标添加到自定义数据中,每7小时刷新一次,这样白天就不会刷新指标,一次也不会,不占用白天交易的cpu,但晚上开机时间比较长,必然会刷新一次

4、图表交易公式中,利用这个代码取得当天交易日期:

GLOBALVARIABLE:maxdate=0;

maxdate:=max(maxdate,date);

然后所有复杂指标的值这样取:

指标值:=stkindiex(stklabel,'指标A.指标值B',0,1,0,500);//这里的参数500根K线根据该指标的需要进行设置,但必须大于一日的K线数

if date<maxdate then
begin

  指标值:=selfdatas('自定义数据A');

end

 

这样的思路,包含昨日的历史数据的指标值,是从自定义数据中取的,不需要重新计算;今日的指标值则是stkindiex来计算的,因为限制了K线数所以效率也不会太低。

关键在于假设是否成立:

1、自定义数据的刷新时间是否从金字塔开启时开始计算?例如本案例中,设置7小时间隔,而白天只运行了6小时,重启后晚上运行11小时,就能确保每天都是白天不刷新而晚上刷新一次,请金字塔设计人员给予明确

2、使用stkindiex只是为了取当日K线的指标值(因为自定义数据并不刷新当日的K线数,只是收盘后即晚上才刷新一次),最后一个参数很重要,设置的长度必须保证足够产生当日的正确指标值,例如计算ma值,那么这个参数的长度至少必须超过ma的周期数


 回到顶部
帅哥哟,离线,有人找我吗?
FexTel
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:5960 积分:0 威望:0 精华:2 注册:2014/6/12 11:29:04
  发帖心情 Post By:2015/2/25 13:42:31 [只看该作者]

1,有关效率问题前段时间发了个帖子 http://www.weistock.com/bbs/dispbbs.asp?BoardID=16&ID=74267&replyID=&skin=1 ,可以参考下

2,实际运行公式中避免使用无必要的统计类函数

3,楼上你这么设置确定一天刷新一次的值能跟上指标的运算? 这个度自己要把握好

4,刷新间隔是从启动软件时刻开始计算

5,长度一定是要超过MA内部计算周期,还有一些周期的迭代运算,相应周期长度要给多点。



金字塔—专业程序化交易量化投资平台

产品部

-----------------------------------------------------------

欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com
 回到顶部
帅哥哟,离线,有人找我吗?
klc
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:993 积分:1787 威望:0 精华:5 注册:2012/11/28 17:37:20
  发帖心情 Post By:2015/2/25 14:44:23 [只看该作者]

恩,明白,主要是刷新间隔起算时间这里弄明白了,其他逻辑方面的东西要自己弄好

 回到顶部
帅哥哟,离线,有人找我吗?
百湛必胜客
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:723 积分:355 威望:0 精华:0 注册:2011/1/25 9:58:24
  发帖心情 Post By:2015/2/25 15:31:26 [只看该作者]

其实自定义数据的读取也是从硬盘读吧?每笔行情刷新一次读一次,读硬盘效率可不快

 回到顶部
帅哥哟,离线,有人找我吗?
klc
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:993 积分:1787 威望:0 精华:5 注册:2012/11/28 17:37:20
  发帖心情 Post By:2015/2/25 15:54:15 [只看该作者]

这个可以仅刷新最后一根K线来解决


 回到顶部
帅哥哟,离线,有人找我吗?
netfox
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搬砖的
等级:小飞侠 帖子:1670 积分:397 威望:0 精华:0 注册:2012/3/19 20:34:34
  发帖心情 Post By:2015/2/25 16:17:01 [只看该作者]

以下是引用klc在2015/2/25 15:54:15的发言:

这个可以仅刷新最后一根K线来解决

有bug 。。 参看我前阵子报告引用出错问题。 当然主要在北京时间模式下,金字塔时间不出错。


 回到顶部
帅哥哟,离线,有人找我吗?
klc
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:黑侠 帖子:993 积分:1787 威望:0 精华:5 注册:2012/11/28 17:37:20
  发帖心情 Post By:2015/2/26 10:17:35 [只看该作者]

哦,那我是做非夜盘品种的,应该没问题

 回到顶部