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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 全局变量使用问题

   

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


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

主题:全局变量使用问题

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


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
EXTGBDATA全局变量问题  发帖心情 Post By:2020/11/2 11:20:45    Post IP:58.246.57.26[显示全部帖子]

 没啥问题的。这个本身就是个字符串。
STRENTRYBARPOS:=STRCAT(STKLABEL,'ENTRYBARPOS'),

这里是把品种名称和“ENTRYBARPOS”字符串 拼接起来的。你不用管这个
'ENTRYBARPOS'的。 它是作为一个参数传递进函数的,不需要用变量再定义它一次。
[此贴子已经被作者于2020/11/4 13:39:25编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/11/3 8:57:34    Post IP:58.246.57.26[显示全部帖子]

 这是个取全局变量值的操作,取值之后再和BARPOS做对比判断。

全局变量名称就是 “STRENTRYBARPOS”这个字符串的值,按照这个名字去取对应的值,取出来值再和BARPOS值做对比。 你是对“EXTGBDATA”的使用不清楚吧。建议你先看下这个函数的使用方法就大概能理清这几句代码了。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
全局变量问题  发帖心情 Post By:2020/11/3 9:03:46    Post IP:58.246.57.26[显示全部帖子]

在工具-数据管理器-全局变量


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

EXTGBDATA 取的就是这里对应名称对应的数值。
[此贴子已经被作者于2020/11/4 8:54:49编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/11/3 12:48:43    Post IP:58.246.57.26[显示全部帖子]

并不是,指标上面B显示的是0。 因为你这里代码里没有创建过这个全局变量,就直接去取,就是取不到,然后就是默认值0。

至于你这里输出这个DEF是DRAWTEXTEX 函数存在的BUG。 它在处理 输出一个错误取值的情况时候,会出现这个BUG。这里的错误取值就是这个B的取值。全局变量里面没有和B名称一致的全局变量。



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

DRAWTEXTEX 这个输出函数的问题  导致你误判了。正常过程应该是下面这样。


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



命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2020/11/4 8:54:21    Post IP:58.246.57.26[显示全部帖子]

 B:EXTGBDATA('X');//取全局变量值的函数 分取字符串和取数值2种。这里这个是取数值的。全局变量是分字符串和数值2种类型的。
DRAWTEXTEX(ISLASTBAR,1,1,500,NUMTOSTR(b,0));//这里这个B要转成字符串才能正常输出。因为这个参数默认是要字符串类型数据的。


命数如织,当如磐石。
 回到顶部