金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 454|回复: 7

GLOBALVARIABLE定义字符型的全局变量正常吗?貌似对字符变量无效

[复制链接]

4093

主题

4163

帖子

4188

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 15:15 | 显示全部楼层 |阅读模式
请教:GLOBALVARIABLE定义字符型的全局变量正常吗?貌似对字符变量无效
GLOBALVARIABLE:应NA:='-null-',应CHU:='-null-';
        DRAWTEXTEX(islastbar,1,850,100,'应NA=  '&应NA&'\n'&'应CHU= '&应CHU,COLORyellow);
        DRAWTEXTEX(islastbar,1,850,100,'\n'&'应CHU= '&应CHU,COLORgreen);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

31

主题

7810

帖子

7820

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 15:18 | 显示全部楼层
不是可以吗
截图202408121518016619.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

38

帖子

38

积分

Rank: 1

等级: 新手上路

注册:
2021-5-28
曾用名:
发表于 2024-8-12 15:52 | 显示全部楼层
GLOBALVARIABLE:应NA:='',应CHU:='';

        if  应NA='' then
        BEGIN
                EXTGBstringset('应NA','盈利');
            应NA:=EXTGBstring('应NA');
        END;
        if 应CHU='' then
        BEGIN
                EXTGBstringset('应CHU','平手');
            应CHU:=EXTGBstring('应CHU');
        END;
        DRAWTEXTEX(islastbar,1,850,100,'应NA=  '&应NA,COLORyellow);
        DRAWTEXTEX(islastbar,1,850,100,'\n'&'应CHU= '&应CHU,COLORgreen);

这个代码就有问题,初次加载这个指标的话正常,再刷新一下就消失。。。
回复

使用道具 举报

31

主题

7810

帖子

7820

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-8-12 16:19 | 显示全部楼层
看下这里说明,因为刷新的话不会重新初始化GLOBALVARIABLE
截图202408121618562605.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

34

主题

9209

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2024-8-12 16:40 | 显示全部楼层
图表中不能使用globa这类的函数。GLOBALVARIABLE变量:当策略被加载启用时,GLOBALVARIABLE变量进行初始化操作,GLOBALVARIABLE变量的仅在最新k上有效并且基于上一次的运行结果进行运算。

它根本不符合图表运行机制。

刷新后由于GLOBALVARIABLE定义的全局变量没有初始化,无法进入if语句中进行复制。所以无法对指定的变量进行字符串显示打印。


这类GLOBALVARIABLE、ext函数都应该在后台中使用,其执行结果的验证,应该使用debugfile输出。而不是放在图表中使用。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

38

帖子

38

积分

Rank: 1

等级: 新手上路

注册:
2021-5-28
曾用名:
发表于 2024-8-12 18:47 | 显示全部楼层
本来就是只在islastbar这一个BAR存取数据啊,金字塔GLOBALVARIABLE定义的全局变量不就是保存最后一次刷新的单值数据吗?并没有毛病,客服回答的应该答不到问题点上

[PEL] 复制代码
GLOBALVARIABLE:应NA:='',应CHU:='';
if islastbar THEN
BEGIN
	if  应NA='' then 
	BEGIN
		EXTGBstringset('应NA','盈利');
	    应NA:=EXTGBstring('应NA');
	END;
	if 应CHU='' then 
	BEGIN
		EXTGBstringset('应CHU','平手');
	    应CHU:=EXTGBstring('应CHU');
	END;
	DRAWTEXTEX(islastbar,1,850,100,'应NA=  '&应NA,COLORyellow);
	DRAWTEXTEX(islastbar,1,850,100,'\n'&'应CHU= '&应CHU,COLORgreen);
END;


补充内容 (2024-8-12 18:48):
如果是数字类型的赋值就没毛病,说明客服的回答不是原因

补充内容 (2024-8-12 19:00):
这只是一次的赋值,并没有迭代
回复

使用道具 举报

8

主题

38

帖子

38

积分

Rank: 1

等级: 新手上路

注册:
2021-5-28
曾用名:
发表于 2024-8-12 18:54 | 显示全部楼层
我把数值型的赋值也加上一起对比,刷新图表后,只显示数值赋值的那个全局变量,这说不通吧

[PEL] 复制代码
GLOBALVARIABLE:应NA:='',应CHU:='',YINA:=0;
if islastbar THEN
BEGIN
	if  应NA='' then 
	BEGIN
		EXTGBstringset('应NA','盈利');
	    应NA:=EXTGBstring('应NA');
	END;
	if 应CHU='' then 
	BEGIN
		EXTGBstringset('应CHU','平手');
	    应CHU:=EXTGBstring('应CHU');
	END;
	IF YINA=0 THEN 
	BEGIN
		EXTGBdataset('YINA',9999);
	    YINA:=EXTGBdata('YINA');
	END;
	DRAWTEXTEX(islastbar,1,850,100,'应NA=  '&应NA,COLORyellow);
	DRAWTEXTEX(islastbar,1,850,100,'\n'&'应CHU= '&应CHU,COLORgreen);
	DRAWTEXTEX(islastbar,1,850,100,'\n \n'&'YINA= '&numtostr(YINA,0),COLORred);
END;

回复

使用道具 举报

8

主题

38

帖子

38

积分

Rank: 1

等级: 新手上路

注册:
2021-5-28
曾用名:
发表于 2024-8-12 18:56 | 显示全部楼层
哪怕字符类型赋值给全局变量不正常,前面的字符“'\n'&'应CHU= '”按理说该打印到图表上啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-12-25 12:20 , Processed in 0.216879 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表