以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- [原创]金字塔调用dll公式的问题。 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=6797) |
-- 作者:coolsun -- 发布时间:2011/6/8 16:56:58 -- [原创]金字塔调用dll公式的问题。 实际测试发现,在图表程序化交易和后台程序化交易模式中,公式是序列计算模式,调用dll中的函数,金字塔会不断的初始化dll,似乎是不断重新加载计算dll函数然后卸载,这样给用dll来做程序化策略带来非常大的麻烦,我无法使用dll全局变量保存一些计算的中间值数组,每次后台程序化交易调用dll都被初始化掉,希望金字塔开发人员能重视并解决这个问题。 |
-- 作者:王锋 -- 发布时间:2011/6/8 22:55:12 -- 可以考虑使用INI文件,将一些变量存放在本地硬盘上. 如果无法是实现,请告知原因,我们这边会在日后升级版考虑改进此问题 |
-- 作者:coolsun -- 发布时间:2011/6/9 10:11:34 -- 以下是引用王锋在2011-6-8 22:55:12的发言:
如果把变量或全局数组,放到硬盘上当然可以解决这个问题,但请考虑,当使用后台程序化交易模式,使用固定时间间隔预警模式,频繁读写效率及其低下导致策略无法执行,在图表交易模式,只要有行情数据进来,一样要频繁读写硬盘。
这个问题在飞狐和大智慧下都没有,我的策略运行得很好,本来准备购买金字塔专业版,却发现这个严重的问题,请尽快修复一下。
任何复杂一点的策略都不是靠公式系统脚本所能解决,很多要依靠c++的dll,希望金字塔重视。
可以考虑使用INI文件,将一些变量存放在本地硬盘上. 如果无法是实现,请告知原因,我们这边会在日后升级版考虑改进此问题 |
-- 作者:王锋 -- 发布时间:2011/6/9 10:41:59 -- 不清楚楼主有多少数据需要写硬盘,如果只是一些全局变量写INI文件,是没有什么效率问题的,因为本身WINDOWS不会那么傻就直接写,他是有缓冲区的,只有在大量数据需要读写时才是直接对硬盘操作的. |
-- 作者:coolsun -- 发布时间:2011/6/9 11:38:54 -- 以下是引用王锋在2011-6-9 10:41:59的发言:
因为使用5分钟线,要根据最近2天的5分钟线数据生成一些中间数据,是个2维数组,其他还有几个用于交易的变量,量倒不大,5个模型,每个模型追踪10个品种,后台程序化交易模式情况下,每秒钟要打开读写50个文件。就是这么个量。在win2003下4G内存下测试,硬盘的不停闪,效率比较低。供你参考。
不清楚楼主有多少数据需要写硬盘,如果只是一些全局变量写INI文件,是没有什么效率问题的,因为本身WINDOWS不会那么傻就直接写,他是有缓冲区的,只有在大量数据需要读写时才是直接对硬盘操作的. |
-- 作者:admin -- 发布时间:2011/6/9 12:03:46 -- 可以考虑日后版本改进此问题. 但是没升级之前暂时还是按照前面楼上所说暂时写硬盘过渡一下吧 |
-- 作者:coolsun -- 发布时间:2011/6/9 12:58:39 -- 谢谢,希望能尽快升级一下 |
-- 作者:零和人生 -- 发布时间:2011/6/9 16:17:36 -- 以下是引用coolsun在2011-6-9 10:11:34的发言:
如果把变量或全局数组,放到硬盘上当然可以解决这个问题,但请考虑,当使用后台程序化交易模式,使用固定时间间隔预警模式,频繁读写效率及其低下导致策略无法执行,在图表交易模式,只要有行情数据进来,一样要频繁读写硬盘。这个问题在飞狐和大智慧下都没有,我的策略运行得很好,本来准备购买金字塔专业版,却发现这个严重的问题,请尽快修复一下。任何复杂一点的策略都不是靠公式系统脚本所能解决,很多要依靠c++的dll,希望金字塔重视。 这论坛有真的高手啊(交易与程序双修的高人)!!那个鼎砥论坛大多是垃圾!! |
-- 作者:wd369 -- 发布时间:2011/12/9 21:43:52 -- 楼主用设定独立段的方法可以解决这个问题吗? #pragma data_seg |
-- 作者:qingni0000 -- 发布时间:2011/12/12 15:48:50 -- 以下是引用coolsun在2011-6-9 11:38:54的发言:
50个不算多。要高效可以考虑用内存映像文件保存数据,这样速度是最快的。也可以试试ramdisk或者ramos,如果可以满足要求,是最方便的。
因为使用5分钟线,要根据最近2天的5分钟线数据生成一些中间数据,是个2维数组,其他还有几个用于交易的变量,量倒不大,5个模型,每个模型追踪10个品种,后台程序化交易模式情况下,每秒钟要打开读写50个文件。就是这么个量。在win2003下4G内存下测试,硬盘的不停闪,效率比较低。供你参考。 |