【常见问题】:全局变量的作用和功能 [文华财经]
-
咨询内容:
定义全局变量VARIABLE:VAR1:=X,VAR2:=Y;
IF 条件1 THEN
VAR1:=VAR1+1;
IF 条件2 THEN
VAR2:=VAR2+1;
VARIABLE 表示声明后面的变量名为全局变量
VAR1 VAR2全局变量的名字
X Y 为全局变量的初始值
VAR1:=VAR1+1;表示给VARI赋值
如果当前K线条件满足条件1,则给VARI赋值为VAR1+1,否则仍旧取值为之前的VAR1的值
请问一下,全局变量的作用是什么?能不能给举个例子。是为了实现什么功能。或者有没有除此以外的详细介绍,就这么点,我根本看不懂。。来源:程序化99
-
文华技术人员:
全局变量:是在历史第一根K线上定义变量初始值,后续K线上关于该变量的计算始终调用上一根K线上该变量的返回值。
普通变量:在每一根K线上普通变量的初始值都是NULL,通过模型的计算,得到一个最后返回值。
全局变量的使用目的在于实现一些过去不容易实现,或者不能实现的思路,编写时配合IF THEN BEGIN语句可以使整个编写逻辑更加清晰明了
来源: WWW.CXH99.COM
- 文华客服: 来源: WWW.CXH99.COM
- 文华客服:IF THEN BEGIN语句 来源: WWW.CXH99.COM
- 文华客服:主要实现的功能是什么?类似C语言的FOR循环语句吗? 来源: WWW.CXH99.COM
-
文华客服:这个语句有无帮助或者实例,我要好好研究研究。
-
网友回复:
请参考2楼,在文华编写复杂思路时,如果配合IF THEN BEGIN语句可以简化编写逻辑
不仅可以循环定义变量,同时也能兼容其他程序化软件的编写语言
比如我们经常用到根据前一笔交易情况来控制当前开仓手数,这种思路使用全局变量来写就更简便了
举个例子吧:
初始下单手数为1,上一次交易如果盈利,下单手数在之前的下单手数上加2
上一次没有盈利,继续使用上一次的下单手数。
——————
未加入全局变量:
SSS:=1;//定义初始手数
HH:=HV(H,10);//10个周期最高价
LL:=LV(L,10);//10个周期最低价
CROSS(C,HH)&&COUNT(BARSBK=1,BARPOS)<1,BK(SSS);
//历史第一次出现满足条件发出BK信号时,以手数SSS进行委托
SS:=IF(TRADE_REF(1)=1,REF(SS,BARSSP+1)+2,REF(BKVOL,BARSSP+1));
//定义手数SS 判断上一次交易是否盈利,如果盈利则在原有手数基础上+2,如果没有盈利 则取上一次开仓手数
CROSS(C,HH),BK(SS);
CROSS(LL,C),SP(BKVOL);
加入全局变量:
VARIABLE:SS:1;//定义全局变量SS
IF TRADE_REF(1)=1 THEN//如果上一笔交易盈利
BEGIN
SS:=REF(SS,BARSSP+1)+2;//SS取上一笔委托手数+2 否则沿用之前的委托手数
END
HH:=HV(H,10);
LL:=LV(L,10);
CROSS(C,HH),BK(SS);
CROSS(LL,C),SP(BKVOL);
类似的思路,您可以在论坛搜:全局,来查看研究一下
- 网友回复: 老师,你真好。讲的的真详细,这个例子我收藏了。 是天使。 文华的老师确实厉害,是我们的天使
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 262069696 或微信:cxhjy888 进行 有偿收费 编写!(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,谢谢您!)
相关文章
-
没有相关内容