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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 求公式环境中全局变量动态命名方法

   

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


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

主题:求公式环境中全局变量动态命名方法

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


加好友 发短信
等级:论坛游民 帖子:216 积分:1283 威望:0 精华:0 注册:2009/8/30 14:14:47
求公式环境中全局变量动态命名方法  发帖心情 Post By:2012/10/9 11:44:34    Post IP:115.195.32.200[显示全部帖子]

  我想以 “公式名+品种名” 为全局变量命名,然后以此读写全局变量。

EXTGBDATA(GBDATA_NAME);//调用方式

GBDATA_NAME是以'FORMULANAME+STKLABEL'的形式命名的
已经尝试过使用STRCAT(DST,STR)函数,貌似不起作用,DST没有变化。

请问谁能解决这个问题?


查看使用道具详细信息
悬赏金币帖,要悬赏 2 个金币
 回到顶部
帅哥哟,离线,有人找我吗?
Marcus
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:216 积分:1283 威望:0 精华:0 注册:2009/8/30 14:14:47
  发帖心情 Post By:2012/10/9 13:52:59    Post IP:115.195.32.200[显示全部帖子]

以下是引用董小球在2012-10-9 13:21:18的发言:
楼主你用的函数不对
看看EXTGBSTRINGSET(GBDATA_NAME,GBDATA_NAME);这个函数的用法

补充一下,我是想用参数化方式命名全局变量,相当于做了一个策略模板。比如公式名被修改后,全局变量名也跟着变化。

比如当前策略名是“策略1”,应用品种是IF10,FORMULANAME()返回应该是"策略1",STKLABEL返回应该是"IF10"
而这个策略对应的全局变量自动被命名为"策略1+IF10",键值可以为数字。


目前遇到的难题是在序列模式下,变量都是常数,不好做。

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


加好友 发短信
等级:论坛游民 帖子:216 积分:1283 威望:0 精华:0 注册:2009/8/30 14:14:47
  发帖心情 Post By:2012/10/9 14:23:02    Post IP:115.195.32.200[显示全部帖子]

以下是引用Marcus在2012-10-9 13:52:59的发言:

补充一下,我是想用参数化方式命名全局变量,相当于做了一个策略模板。比如公式名被修改后,全局变量名也跟着变化。

比如当前策略名是“策略1”,应用品种是IF10,FORMULANAME()返回应该是"策略1",STKLABEL返回应该是"IF10"
而这个策略对应的全局变量自动被命名为"策略1+IF10",键值可以为数字。


目前遇到的难题是在序列模式下,变量都是常数,不好做。

我尝试过以下想法,熟悉C语言的应该明白我的意思,但在公式环境下没成功。GBDATA_H还是'H-',后面两句没起作用。
GBDATA_H:='H-';
STRCAT(GBDATA_H,STKLABEL());
STRCAT(GBDATA_H,FORMULANAME());


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


加好友 发短信
等级:论坛游民 帖子:216 积分:1283 威望:0 精华:0 注册:2009/8/30 14:14:47
  发帖心情 Post By:2012/10/11 13:14:24    Post IP:115.195.32.200[显示全部帖子]

以下是引用王锋在2012-10-10 16:33:15的发言:
GBDATA_H:='H-';
GBDATA_H:=STRCAT(GBDATA_H,STKLABEL());
GBDATA_H:=STRCAT(GBDATA_H,FORMULANAME());

已解决,谢谢!

 回到顶部