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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → [求助]用VARIABLE定义的变量和直接赋值定义的变量有何不同?

   

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


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

主题:[求助]用VARIABLE定义的变量和直接赋值定义的变量有何不同?

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/11/27 21:11:33 [显示全部帖子]

  你们的功力都很深,讨论的问题很关键,

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/11/28 13:29:26 [显示全部帖子]

  阿火  一锤定音 受益匪浅
 


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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/11/29 0:39:51 [显示全部帖子]

我觉得 readonly 和jinze的观点 说的是不同问题,并不矛盾,
很显然 经过验证,variable:n=0;
if barpos=1 then m:=0;
m 和n 的运算结果是一样,
                                                                                                                                        所以一个普通变量 经过if barpos=1  then处理后,等同于一个全局变量
但是   普通变量n则不是,执行每根K线,都会先赋值为0“ 这个观点并没有错,因为普通变量如果不经过if barpos=1  then处理,则每根K线运行时要重新初始化赋值
更重要的是,不经过处理的每根K线都会初始化的普通变量非常关键,可以防止同一根K下线因为大量TICK数据而触发的重复交易,从而防止重复开平仓。


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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/11/29 23:18:50 [显示全部帖子]

  理解万岁

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/3 13:28:02 [显示全部帖子]

  A:=0;
DEBUGFILE('D:\test普通变量运行.txt','条件前A=:%.0f',A);

IF ISLASTBAR THEN BEGIN
 IF A=0 THEN
 BEGIN
  A:=1;
  DEBUGFILE('D:\test普通变量运行.txt','条件后A=:%.0f',A);
  END
 END
2012-12-03 13:26:29.862    条件前A=:0
2012-12-03 13:26:29.862    条件后A=:1
2012-12-03 13:26:30.596    条件前A=:0
2012-12-03 13:26:30.596    条件后A=:1
2012-12-03 13:26:32.096    条件前A=:0
2012-12-03 13:26:32.096    条件后A=:1
2012-12-03 13:26:33.440    条件前A=:0
2012-12-03 13:26:33.440    条件后A=:1
2012-12-03 13:26:33.596    条件前A=:0
2012-12-03 13:26:33.596    条件后A=:1
2012-12-03 13:26:35.096    条件前A=:0
2012-12-03 13:26:35.096    条件后A=:1
2012-12-03 13:26:36.596    条件前A=:0
2012-12-03 13:26:36.596    条件后A=:1
2012-12-03 13:26:38.096    条件前A=:0
2012-12-03 13:26:38.096    条件后A=:1
2012-12-03 13:26:39.596    条件前A=:0
2012-12-03 13:26:39.596    条件后A=:1
2012-12-03 13:26:41.096    条件前A=:0
2012-12-03 13:26:41.096    条件后A=:1
2012-12-03 13:26:42.596    条件前A=:0
2012-12-03 13:26:42.596    条件后A=:1
2012-12-03 13:26:51.596    条件前A=:0
2012-12-03 13:26:51.596    条件后A=:1
2012-12-03 13:26:53.096    条件前A=:0
2012-12-03 13:26:53.096    条件后A=:1
2012-12-03 13:26:56.096    条件前A=:0
2012-12-03 13:26:56.096    条件后A=:1

Variable: A=0;
DEBUGFILE('D:\test全局变量运行.txt','条件前A=:%.0f',A);
IF ISLASTBAR THEN BEGIN
 IF A=0 THEN
 BEGIN
  A:=1;
  DEBUGFILE('D:\test全局变量运行.txt','条件后A=:%.0f',A);
 END
END
2012-12-03 13:27:44.096    条件前A=:0
2012-12-03 13:27:44.096    条件后A=:1
2012-12-03 13:27:45.596    条件前A=:0
2012-12-03 13:27:45.596    条件后A=:1
2012-12-03 13:27:47.096    条件前A=:0
2012-12-03 13:27:47.096    条件后A=:1
2012-12-03 13:27:48.596    条件前A=:0
2012-12-03 13:27:48.596    条件后A=:1
2012-12-03 13:27:50.096    条件前A=:0
2012-12-03 13:27:50.096    条件后A=:1
2012-12-03 13:27:50.690    条件前A=:0
2012-12-03 13:27:50.690    条件后A=:1
2012-12-03 13:27:51.596    条件前A=:0
2012-12-03 13:27:51.596    条件后A=:1
2012-12-03 13:27:53.096    条件前A=:0
2012-12-03 13:27:53.096    条件后A=:1

[此贴子已经被作者于2012-12-3 13:28:42编辑过]

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/3 13:37:26 [显示全部帖子]

 普通变量

 A:=0;
DEBUGFILE('D:\test普通变量运行.txt','条件前A=:%.0f',A);

IF ISLASTBAR THEN BEGIN
 IF A=0 THEN
 BEGIN
  A:=1;
  DEBUGFILE('D:\test普通变量运行.txt','条件后A=:%.0f',A);
  END
 END
2012-12-03 13:35:51.596    普通变量 条件后A=:1
2012-12-03 13:35:53.096    普通变量条件前A=:0
2012-12-03 13:35:53.096    普通变量 条件后A=:1
2012-12-03 13:35:54.596    普通变量条件前A=:0
2012-12-03 13:35:54.596    普通变量 条件后A=:1
2012-12-03 13:35:56.096    普通变量条件前A=:0
2012-12-03 13:35:56.096    普通变量 条件后A=:1
2012-12-03 13:35:57.596    普通变量条件前A=:0
2012-12-03 13:35:57.596    普通变量 条件后A=:1
2012-12-03 13:35:59.096    普通变量条件前A=:0
2012-12-03 13:35:59.096    普通变量 条件后A=:1
2012-12-03 13:36:00.596    普通变量条件前A=:0
2012-12-03 13:36:00.596    普通变量 条件后A=:1

全局变量

Variable: A=0;
DEBUGFILE('D:\test全局变量运行.txt','条件前A=:%.0f',A);
IF ISLASTBAR THEN BEGIN
 IF A=0 THEN
 BEGIN
  A:=1;
  DEBUGFILE('D:\test全局变量运行.txt','条件后A=:%.0f',A);
 END
END

2012-12-03 13:34:54.596    全局变量 条件前A=:0
2012-12-03 13:34:54.596    全局变量 条件后A=:1
2012-12-03 13:34:56.096    全局变量 条件前A=:0
2012-12-03 13:34:56.096    全局变量 条件后A=:1
2012-12-03 13:34:57.596    全局变量 条件前A=:0
2012-12-03 13:34:57.596    全局变量 条件后A=:1
2012-12-03 13:34:59.096    全局变量 条件前A=:0
2012-12-03 13:34:59.096    全局变量 条件后A=:1
2012-12-03 13:35:00.596    全局变量 条件前A=:0
2012-12-03 13:35:00.596    全局变量 条件后A=:1
2012-12-03 13:35:02.096    全局变量 条件前A=:0
2012-12-03 13:35:02.096    全局变量 条件后A=:1
2012-12-03 13:35:03.596    全局变量 条件前A=:0
2012-12-03 13:35:03.596    全局变量 条件后A=:1
2012-12-03 13:35:06.596    全局变量 条件前A=:0
2012-12-03 13:35:06.596    全局变量 条件后A=:1

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/3 13:38:56 [显示全部帖子]

  全局变量和普通变量的区别还是没有搞明白啊
请问,在逐K线模式下,为什么全局变量和普通变量在同一根K线下输出的结果是一样的

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/4 17:40:39 [显示全部帖子]

2012-12-04 17:38:06.796    条件前:1
2012-12-04 17:38:08.296    条件前:1
2012-12-04 17:38:12.796    条件前:1
2012-12-04 17:38:14.296    条件前:1
2012-12-04 17:38:36.796    条件前:1
2012-12-04 17:38:39.796    条件前:1
2012-12-04 17:38:41.296    条件前:1
2012-12-04 17:38:42.796    条件前:1
2012-12-04 17:38:44.296    条件前:1
2012-12-04 17:38:45.796    条件前:1
2012-12-04 17:38:51.796    条件前:1
2012-12-04 17:38:53.296    条件前:1
2012-12-04 17:38:54.796    条件前:1
2012-12-04 17:38:59.296    条件前:1
上面是去掉 IF ISLASTBAR THEN BEGIN的运行结果,两种变量的运行原理和过程终于明白了

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/4 17:42:22 [显示全部帖子]

全局变量在开平仓过程控制及资金管理策略中的价值 无与伦比。。。

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


加好友 发短信
等级:新手上路 帖子:39 积分:215 威望:0 精华:0 注册:2012/9/18 18:02:08
  发帖心情 Post By:2012/12/9 9:41:43 [显示全部帖子]

variable:a=0;

if barpos=1 then a:=c;

aa:a;

 

variable:a=c;

aa:a;


所表达的意思是一样的,为什么还要加if barpos=1 then?


 回到顶部
总数 11 1 2 下一页