Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共16 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:【提问】加variable和不加variable好像没有区别?

1楼
cathero2001 发表于:2014/6/3 15:10:12
老师,您好。

我试了以下代码:

==========================
test:=0
VARIABLE: vtest=0;
GLOBALVARIABLE: gtest=0;

debugout('tp1: test = %.2f', test);
test:=1;
debugout('tp2: test = %.2f', test);

debugout('tp1: vtest = %.2f', vtest);
vtest:=1;
debugout('tp2: vtest = %.2f', vtest);

debugout('tp1: gtest = %.2f', gtest);
gtest:=1;
debugout('tp2: gtest = %.2f', gtest);
==========================

输出结果是:


tp1: test = 0.00
tp2: test = 1.00

tp1: vtest = 0.00
tp2: vtest = 1.00

tp1: gtest = 0.00
tp2: gtest = 1.00
运行结束

tp1: test = 0.00
tp2: test = 1.00

tp1: vtest = 0.00
tp2: vtest = 1.00

tp1: gtest = 1.00
tp2: gtest = 1.00
运行结束

这样看来,有没有VARIABLE效果是一样的,每次循环这个变量都会别初始化,对吗?


谢谢!


2楼
jinzhe 发表于:2014/6/3 15:21:05

这个是在同一根k线上才是这的样,同一根k线数据还没有被计算,

你到第二根k线看看输出结果,variable的那个是不是都是1了

[此贴子已经被作者于2014/6/3 15:21:13编辑过]
3楼
cathero2001 发表于:2014/6/3 15:29:05
第二根K线上也不是全1: (怎么看后台程序用的是什么周期的k线?我在设置里设的应该是1分钟线)

以下是真实的打印结果(test就是vtest):

14.06.03 14:54:48 IF00
tp1: test = 0.00
14.06.03 14:54:48 IF00
tp2: test = 1.00
14.06.03 14:54:48 IF00
tp1: gtest = 0.00
14.06.03 14:54:48 IF00
tp2: gtest = 1.00
14.06.03 14:54:48 IF00
运行结束
14.06.03 14:54:58 IF00
tp1: test = 0.00
14.06.03 14:54:58 IF00
tp2: test = 1.00
14.06.03 14:54:58 IF00
tp1: gtest = 1.00
14.06.03 14:54:58 IF00
tp2: gtest = 1.00
14.06.03 14:54:58 IF00
运行结束
14.06.03 14:55:08 IF00
tp1: test = 0.00
14.06.03 14:55:08 IF00
tp2: test = 1.00
14.06.03 14:55:08 IF00
tp1: gtest = 1.00
14.06.03 14:55:08 IF00
tp2: gtest = 1.00
14.06.03 14:55:08 IF00
运行结束
14.06.03 14:55:18 IF00
tp1: test = 0.00
14.06.03 14:55:18 IF00
tp2: test = 1.00
14.06.03 14:55:18 IF00
tp1: gtest = 1.00
14.06.03 14:55:18 IF00
tp2: gtest = 1.00
14.06.03 14:55:18 IF00
运行结束
14.06.03 14:55:28 IF00
tp1: test = 0.00
14.06.03 14:55:28 IF00
tp2: test = 1.00
14.06.03 14:55:28 IF00
tp1: gtest = 1.00
14.06.03 14:55:28 IF00
tp2: gtest = 1.00
14.06.03 14:55:28 IF00
运行结束
14.06.03 14:55:38 IF00
tp1: test = 0.00
14.06.03 14:55:38 IF00
tp2: test = 1.00
14.06.03 14:55:38 IF00
tp1: gtest = 1.00
14.06.03 14:55:38 IF00
tp2: gtest = 1.00
14.06.03 14:55:38 IF00
运行结束
14.06.03 14:55:48 IF00
tp1: test = 0.00
14.06.03 14:55:48 IF00
tp2: test = 1.00
14.06.03 14:55:48 IF00
tp1: gtest = 1.00
14.06.03 14:55:48 IF00
tp2: gtest = 1.00
14.06.03 14:55:48 IF00
运行结束
14.06.03 14:55:58 IF00
tp1: test = 0.00
14.06.03 14:55:58 IF00
tp2: test = 1.00
14.06.03 14:55:58 IF00
tp1: gtest = 1.00
14.06.03 14:55:58 IF00
tp2: gtest = 1.00
14.06.03 14:55:58 IF00
运行结束
14.06.03 14:56:08 IF00
tp1: test = 0.00
14.06.03 14:56:08 IF00
tp2: test = 1.00
14.06.03 14:56:08 IF00
tp1: gtest = 1.00
14.06.03 14:56:08 IF00
tp2: gtest = 1.00
14.06.03 14:56:08 IF00
运行结束
14.06.03 14:56:18 IF00
tp1: test = 0.00
14.06.03 14:56:18 IF00
tp2: test = 1.00
14.06.03 14:56:18 IF00
tp1: gtest = 1.00
14.06.03 14:56:18 IF00
tp2: gtest = 1.00
14.06.03 14:56:18 IF00
运行结束
14.06.03 14:56:28 IF00
tp1: test = 0.00
14.06.03 14:56:28 IF00
tp2: test = 1.00
14.06.03 14:56:28 IF00
tp1: gtest = 1.00
14.06.03 14:56:28 IF00
tp2: gtest = 1.00
14.06.03 14:56:28 IF00
运行结束
14.06.03 14:56:38 IF00
tp1: test = 0.00
14.06.03 14:56:38 IF00
tp2: test = 1.00
14.06.03 14:56:38 IF00
tp1: gtest = 1.00
14.06.03 14:56:38 IF00
tp2: gtest = 1.00
14.06.03 14:56:38 IF00
运行结束
14.06.03 14:56:48 IF00
tp1: test = 0.00
14.06.03 14:56:48 IF00
tp2: test = 1.00
14.06.03 14:56:48 IF00
tp1: gtest = 1.00
14.06.03 14:56:48 IF00
tp2: gtest = 1.00
14.06.03 14:56:48 IF00
运行结束
14.06.03 14:56:58 IF00
tp1: test = 0.00
14.06.03 14:56:58 IF00
tp2: test = 1.00
14.06.03 14:56:58 IF00
tp1: gtest = 1.00
14.06.03 14:56:58 IF00
tp2: gtest = 1.00
14.06.03 14:56:58 IF00
运行结束
14.06.03 14:57:08 IF00
tp1: test = 0.00
14.06.03 14:57:08 IF00
tp2: test = 1.00
14.06.03 14:57:08 IF00
tp1: gtest = 1.00
14.06.03 14:57:08 IF00
tp2: gtest = 1.00
14.06.03 14:57:08 IF00
运行结束
14.06.03 14:57:18 IF00
tp1: test = 0.00
14.06.03 14:57:18 IF00
tp2: test = 1.00
14.06.03 14:57:18 IF00
tp1: gtest = 1.00
14.06.03 14:57:18 IF00
tp2: gtest = 1.00
14.06.03 14:57:18 IF00
运行结束
14.06.03 14:57:28 IF00
tp1: test = 0.00
14.06.03 14:57:28 IF00
tp2: test = 1.00
14.06.03 14:57:28 IF00
tp1: gtest = 1.00
14.06.03 14:57:28 IF00
tp2: gtest = 1.00
14.06.03 14:57:28 IF00
运行结束
14.06.03 14:57:38 IF00
tp1: test = 0.00
14.06.03 14:57:38 IF00
tp2: test = 1.00
14.06.03 14:57:38 IF00
tp1: gtest = 1.00
14.06.03 14:57:38 IF00
tp2: gtest = 1.00
14.06.03 14:57:38 IF00
运行结束
14.06.03 14:57:48 IF00
tp1: test = 0.00
14.06.03 14:57:48 IF00
tp2: test = 1.00
14.06.03 14:57:48 IF00
tp1: gtest = 1.00
14.06.03 14:57:48 IF00
tp2: gtest = 1.00
14.06.03 14:57:48 IF00
运行结束
14.06.03 14:57:59 IF00
tp1: test = 0.00
14.06.03 14:57:59 IF00
tp2: test = 1.00
14.06.03 14:57:59 IF00
tp1: gtest = 1.00
14.06.03 14:57:59 IF00
tp2: gtest = 1.00
14.06.03 14:57:59 IF00
运行结束
14.06.03 14:58:09 IF00
tp1: test = 0.00
14.06.03 14:58:09 IF00
tp2: test = 1.00
14.06.03 14:58:09 IF00
tp1: gtest = 1.00
14.06.03 14:58:09 IF00
tp2: gtest = 1.00
14.06.03 14:58:09 IF00
运行结束
4楼
jinzhe 发表于:2014/6/3 15:31:12
?test不是全局变量,是普通变量,每根k线都会被重新赋值成0,这个不明白?
5楼
cathero2001 发表于:2014/6/3 15:34:45
“(test就是vtest)”

这里的test就是vtest,真实的代码是这个:


VARIABLE: test=0;
GLOBALVARIABLE: gtest=0;

debugout('tp1: test = %.2f', test);
test:=1;
debugout('tp2: test = %.2f', test);

debugout('tp1: gtest = %.2f', gtest);
gtest:=1;
debugout('tp2: gtest = %.2f', gtest);


谢谢~:)
6楼
jinzhe 发表于:2014/6/3 15:44:21

上面有两段代码,哪段是你测试的,你确定下

7楼
cathero2001 发表于:2014/6/3 15:46:59
好吧。

代码:
VARIABLE: test=0;
GLOBALVARIABLE: gtest=0;

debugout('tp1: test = %.2f', test);
test:=1;
debugout('tp2: test = %.2f', test);

debugout('tp1: gtest = %.2f', gtest);
gtest:=1;
debugout('tp2: gtest = %.2f', gtest);

输出:
14.06.03 14:54:48 IF00
tp1: test = 0.00
14.06.03 14:54:48 IF00
tp2: test = 1.00
14.06.03 14:54:48 IF00
tp1: gtest = 0.00
14.06.03 14:54:48 IF00
tp2: gtest = 1.00
14.06.03 14:54:48 IF00
运行结束
14.06.03 14:54:58 IF00
tp1: test = 0.00
14.06.03 14:54:58 IF00
tp2: test = 1.00
14.06.03 14:54:58 IF00
tp1: gtest = 1.00
14.06.03 14:54:58 IF00
tp2: gtest = 1.00
14.06.03 14:54:58 IF00
运行结束
14.06.03 14:55:08 IF00
tp1: test = 0.00
14.06.03 14:55:08 IF00
tp2: test = 1.00
14.06.03 14:55:08 IF00
tp1: gtest = 1.00
14.06.03 14:55:08 IF00
tp2: gtest = 1.00
14.06.03 14:55:08 IF00
运行结束
14.06.03 14:55:18 IF00
tp1: test = 0.00
14.06.03 14:55:18 IF00
tp2: test = 1.00
14.06.03 14:55:18 IF00
tp1: gtest = 1.00
14.06.03 14:55:18 IF00
tp2: gtest = 1.00
14.06.03 14:55:18 IF00
运行结束
14.06.03 14:55:28 IF00
tp1: test = 0.00
14.06.03 14:55:28 IF00
tp2: test = 1.00
14.06.03 14:55:28 IF00
tp1: gtest = 1.00
14.06.03 14:55:28 IF00
tp2: gtest = 1.00
14.06.03 14:55:28 IF00
运行结束
14.06.03 14:55:38 IF00
tp1: test = 0.00
14.06.03 14:55:38 IF00
tp2: test = 1.00
14.06.03 14:55:38 IF00
tp1: gtest = 1.00
14.06.03 14:55:38 IF00
tp2: gtest = 1.00
14.06.03 14:55:38 IF00
运行结束
14.06.03 14:55:48 IF00
tp1: test = 0.00
14.06.03 14:55:48 IF00
tp2: test = 1.00
14.06.03 14:55:48 IF00
tp1: gtest = 1.00
14.06.03 14:55:48 IF00
tp2: gtest = 1.00
14.06.03 14:55:48 IF00
运行结束
14.06.03 14:55:58 IF00
tp1: test = 0.00
14.06.03 14:55:58 IF00
tp2: test = 1.00
14.06.03 14:55:58 IF00
tp1: gtest = 1.00
14.06.03 14:55:58 IF00
tp2: gtest = 1.00
14.06.03 14:55:58 IF00
运行结束
14.06.03 14:56:08 IF00
tp1: test = 0.00
14.06.03 14:56:08 IF00
tp2: test = 1.00
14.06.03 14:56:08 IF00
tp1: gtest = 1.00
14.06.03 14:56:08 IF00
tp2: gtest = 1.00
14.06.03 14:56:08 IF00
运行结束
14.06.03 14:56:18 IF00
tp1: test = 0.00
14.06.03 14:56:18 IF00
tp2: test = 1.00
14.06.03 14:56:18 IF00
tp1: gtest = 1.00
14.06.03 14:56:18 IF00
tp2: gtest = 1.00
14.06.03 14:56:18 IF00
运行结束
14.06.03 14:56:28 IF00
tp1: test = 0.00
14.06.03 14:56:28 IF00
tp2: test = 1.00
14.06.03 14:56:28 IF00
tp1: gtest = 1.00
14.06.03 14:56:28 IF00
tp2: gtest = 1.00
14.06.03 14:56:28 IF00
运行结束
14.06.03 14:56:38 IF00
tp1: test = 0.00
14.06.03 14:56:38 IF00
tp2: test = 1.00
14.06.03 14:56:38 IF00
tp1: gtest = 1.00
14.06.03 14:56:38 IF00
tp2: gtest = 1.00
14.06.03 14:56:38 IF00
运行结束
14.06.03 14:56:48 IF00
tp1: test = 0.00
14.06.03 14:56:48 IF00
tp2: test = 1.00
14.06.03 14:56:48 IF00
tp1: gtest = 1.00
14.06.03 14:56:48 IF00
tp2: gtest = 1.00
14.06.03 14:56:48 IF00
运行结束
14.06.03 14:56:58 IF00
tp1: test = 0.00
14.06.03 14:56:58 IF00
tp2: test = 1.00
14.06.03 14:56:58 IF00
tp1: gtest = 1.00
14.06.03 14:56:58 IF00
tp2: gtest = 1.00
14.06.03 14:56:58 IF00
运行结束
14.06.03 14:57:08 IF00
tp1: test = 0.00
14.06.03 14:57:08 IF00
tp2: test = 1.00
14.06.03 14:57:08 IF00
tp1: gtest = 1.00
14.06.03 14:57:08 IF00
tp2: gtest = 1.00
14.06.03 14:57:08 IF00
运行结束
14.06.03 14:57:18 IF00
tp1: test = 0.00
14.06.03 14:57:18 IF00
tp2: test = 1.00
14.06.03 14:57:18 IF00
tp1: gtest = 1.00
14.06.03 14:57:18 IF00
tp2: gtest = 1.00
14.06.03 14:57:18 IF00
运行结束
14.06.03 14:57:28 IF00
tp1: test = 0.00
14.06.03 14:57:28 IF00
tp2: test = 1.00
14.06.03 14:57:28 IF00
tp1: gtest = 1.00
14.06.03 14:57:28 IF00
tp2: gtest = 1.00
14.06.03 14:57:28 IF00
运行结束
14.06.03 14:57:38 IF00
tp1: test = 0.00
14.06.03 14:57:38 IF00
tp2: test = 1.00
14.06.03 14:57:38 IF00
tp1: gtest = 1.00
14.06.03 14:57:38 IF00
tp2: gtest = 1.00
14.06.03 14:57:38 IF00
运行结束
14.06.03 14:57:48 IF00
tp1: test = 0.00
14.06.03 14:57:48 IF00
tp2: test = 1.00
14.06.03 14:57:48 IF00
tp1: gtest = 1.00
14.06.03 14:57:48 IF00
tp2: gtest = 1.00
14.06.03 14:57:48 IF00
运行结束
14.06.03 14:57:59 IF00
tp1: test = 0.00
14.06.03 14:57:59 IF00
tp2: test = 1.00
14.06.03 14:57:59 IF00
tp1: gtest = 1.00
14.06.03 14:57:59 IF00
tp2: gtest = 1.00
14.06.03 14:57:59 IF00
运行结束
14.06.03 14:58:09 IF00
tp1: test = 0.00
14.06.03 14:58:09 IF00
tp2: test = 1.00
14.06.03 14:58:09 IF00
tp1: gtest = 1.00
14.06.03 14:58:09 IF00
tp2: gtest = 1.00
14.06.03 14:58:09 IF00
运行结束

8楼
jinzhe 发表于:2014/6/3 15:49:03
行, 明天我测试下看看
9楼
cathero2001 发表于:2014/6/3 15:52:47
好,多谢。等你回复:)
10楼
cathero2001 发表于:2014/6/3 15:53:21
后台系统运行。
共16 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.05078 s, 3 queries.