以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  建议增加文本配置文件读写支持(类似GetTBProfileString2File)  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=30723)

--  作者:jazzson
--  发布时间:2012/11/18 21:37:53
--  建议增加文本配置文件读写支持(类似GetTBProfileString2File)

强烈建议金字塔增加文本配置文件读写支持!!!

 

原来使用Tb,现在正在考虑是否迁移到金字塔。但是金字塔有几个问题现在很受困扰

1、对文本配置文件的读写,如 GetTBProfileString2File 和 SetTBProfileString2File 这两个函数。把论坛翻了一遍,也找不到一个好用的解决方法。虽然都说可以通过VBS 的document 来进行解决。但是我相信文本文件的读写,肯定是大家的常见需求。因为文本配置文件对于程序灵活性的帮助是显而易见的。对于Db 的支持考虑到随时可查看/可修改以及效率,Db 永远比不上文本文件! 强烈建议增加对于这两个函数的支持

 

2、图表上的锁定显示时段名不副实,锁定显示时段后。应该超过这个时段的数据全都不予显示。但是我手贱,多按了几下向下的箭头键,结果金字塔就没有响应了。金字塔的K线数量显示稍大以后,速度就成为明显的瓶颈! 这些虽然可以在维护里面设置,但是为神马不借鉴Tb 的商品属性设置,可以直接设置可显示K线数量或者显示数据时段呢?不符合的数据,直接不予显示,不管用上下箭头怎样动作,都不应显示的。让用户容易困惑的功能,还不如没有这个功能!

 

平台是基础,金字塔所进行的简单开发,可以极大减少大家的开发量。大家节省的时间总和,将是无可估量的。

强烈建议以上功能,在 2.933 上得到实现!!!!!

 

说明 读取公式信息文件指定块中的键名对应的字符串。
语法 String GetTBProfileString2File(String strPath,String strSection,String strKey)
参数 strPath 指定文件的路径,请使用全路径表示,并使用\\\\做路径分割符,否则会执行失败
strSection 指定的信息块的块名
strKey 指定的信息的键名
备注 读取某个文件指定块中的键名对应的字符串。返回值为读取的字符串,不成功则返回InvalidString,读取字符串长度不能超过256字节。 提示:配合SetTBProfileString2File使用。
示例 MyStr = GetTBProfileString2File("c:\\\\tradelog.log","MySection","MyKey");

--  作者:RogarZ
--  发布时间:2012/11/18 23:08:05
--  
首先,非常感谢你对金字塔的支持。
TB和金字塔毕竟是2个软件,很多实现的方式可能不一样,一般会先入为主的找自己熟悉的方式,这当然会碰壁。
具体到问题
问题1我不是很明白。
读写文件,对于程序员来说是非常的熟悉,但是对于一般的用户来说,会显的较复杂。
对于复杂的策略,金字塔支持6种全局变量+自定义数据 ,能满足绝大部分的需求。以下为说明链接
不知道你读写文件是为了实现什么目的。还请告知你策略的相关的需求,是为了解决什么问题。
若合适,我们会增加。

问题2,不同的软件,其构架不同,处理方式不同,我们是全推数据,所有的数据是在你计算机本地的。而TB是点播数据。
还请您暂时抛弃原来使用其他软件的习惯,了解下金字塔的用法。
按你的要求,在工具——选项——维护中  去除智能扩充以上以上大小数量
公式运行效率的问题,可在策略编辑界面选择快速计算、仅刷最后一根K线
建议您多了解下金字塔的运行机理



--  作者:王锋
--  发布时间:2012/11/18 23:24:17
--  

如果你注重效率,那么金字塔提供的全局变量数据库的速度完全可以超越INI文件的。

请参考 EXTGBDATA( )EXTGBDATASET( , )EXTGBSTRING( )EXTGBSTRINGSET( , )
这4个函数


--  作者:jazzson
--  发布时间:2012/11/19 8:29:24
--  
以下是引用RogarZ在2012-11-18 23:08:05的发言:
首先,非常感谢你对金字塔的支持。
TB和金字塔毕竟是2个软件,很多实现的方式可能不一样,一般会先入为主的找自己熟悉的方式,这当然会碰壁。
具体到问题
问题1我不是很明白。
读写文件,对于程序员来说是非常的熟悉,但是对于一般的用户来说,会显的较复杂。
 
谢谢版主回复,我想是我描述的不准确
我现在是两台机器,一台测试开发。一台用于实盘交易。
我通常在测试机上测试优化后,写成模型运行配置文件。然后将就模型运行配置文件直接拷贝到实盘机器上,重新加载一次模型。在加载过程中,模型会读入运行配置文件。这样会非常方便
运行配置文件通常如下:
[RB_30]
vDebugMode=0
vDirection=0
vMaxVolToOpen=1
vMaxCycles4Leave=30
 
这样检查起来,也非常直观。
 
如果没有文件接口,只能通过数据库进行的话,则必须考虑很多情况,增加了很多复杂性。所以强烈建议增加文件接口。我想,有了这个功能之外,其他人肯定可以相处比我更妙的用法。
 

--  作者:jazzson
--  发布时间:2012/11/19 8:32:24
--  
以下是引用王锋在2012-11-18 23:24:17的发言:

如果你注重效率,那么金字塔提供的全局变量数据库的速度完全可以超越INI文件的。

请参考 EXTGBDATA( )EXTGBDATASET( , )EXTGBSTRING( )EXTGBSTRINGSET( , )
这4个函数

 

谢谢版主热心回复,远远超过我的期望。

 

我现在的运行环境,是放在ramdisk 上的,效率还可以。

除了效率之外,主要是考虑到不同机器之间同步的方便性、维护、调试时候的简单等。在此情况下,文本方式就是最佳选择了


--  作者:jazzson
--  发布时间:2012/11/19 8:55:01
--  
问题2,不同的软件,其构架不同,处理方式不同,我们是全推数据,所有的数据是在你计算机本地的。而TB是点播数据。
还请您暂时抛弃原来使用其他软件的习惯,了解下金字塔的用法。
按你的要求,在工具——选项——维护中  去除智能扩充以上以上大小数量
公式运行效率的问题,可在策略编辑界面选择快速计算、仅刷最后一根K线
 
谢谢版主解答
其实在提出这个帖子前,我也全部 google 过了。可能我这里提到Tb引发了你的误会。我在此表示歉意
对于点播、还是全推数据机制,这不是太大问题(某种程度上,全推数据引发的问题可能更麻烦。就像前几天我一直在论坛里面,有帖子提到的FTP 数据错误)
现在的主要问题是:
1、金字塔一旦显示大量数据,会严重影响效率
2、设置快速计算,仅刷最后一根K线等,会导致指定时间段测试复杂化(比如,现在M05 暂时下跌,但是现在想测试m05 10月30 至11月5日的上涨趋势中模型表现,我该怎么办呢?目前我的做法是只能编写以下代码,限制模型的有效时段。但是即便如此,因为要引用到3/4 个月前的 5 分钟线,效率还是不够。如果能够直接限制显示的时间段,则这些会方便很多。毕竟,金字塔是平台。平台的任何一点改善,对于大规模的使用者来说,便利加起来的总量就是很明显了。
//为提高测试效率,在此限制测试时间段
//if (date < 1120921 or date > 1121120 ) then
//BEGIN
// Exit Function;
//END
 
谢谢版主耐心看完


--  作者:RogarZ
--  发布时间:2012/11/19 9:05:38
--  

您要的这个是一些参数设置?   金字塔里可以用 Input来实现。

 

对于测试的话,金字塔和TB不同啊 你在测试界面直接选择时间不就是了,而不是设置K的数量。

我说的仅刷最后一根K 和快速计算是针对实盘快速计算而来。

若这个觉得效率还不行的,在已验证自己策略可行的情况下,可转后台程序化(金字塔特有),其效率的提高比起图表是几何级的增长。


--  作者:jazzson
--  发布时间:2012/11/19 9:27:59
--  
以下是引用RogarZ在2012-11-19 9:05:38的发言:

您要的这个是一些参数设置?   金字塔里可以用 Input来实现。

大哥,不是一件事情呀。要知道我是需要在两台机器之间同步呀。参数随时可能优化,这边测试好了,再到那边一个一个的设置。经常重复,要烦S 人滴

 

 

对于测试的话,金字塔和TB不同啊 你在测试界面直接选择时间不就是了,而不是设置K的数量。

测试有两种目的: 一种是为了得到优化结果,这种可以直接在测试界面选择时间。另外一种是模型开发时候的同步测试。如果能够限制时间,直接修改/加载模型/就可以直接在上面看到我的开平仓,这样不是很方便吗?
如果第二种实在不行,能否帮忙提供一个第一种的替代方案呢? 否则,这样来回设置参数,我真的吃不消呀
 
 
 
 


--  作者:ackvz
--  发布时间:2012/11/19 9:38:01
--  

这个可以有


--  作者:jazzson
--  发布时间:2012/11/19 9:46:37
--  
以下是引用ackvz在2012-11-19 9:38:01的发言:

这个可以有

 

呵呵,真是一个好消息。

 

如果第二个也可以限制成那样就好了。我相信肯定有人也和我同样想法

 

而且,这样也可以方便Tb 的用户选择平台呀

[此贴子已经被作者于2012-11-19 9:47:29编辑过]