Rss & SiteMap

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

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

标题:VARIABLE的问题

1楼
lance0307 发表于:2014/12/11 15:11:07
请问VARIABLE声明的变量初始赋值在每次公式刷新计算的时候都会被初始化一次吗?

主要是在K线周期内的刷新会初始化吗
2楼
yukizzc 发表于:2014/12/11 15:30:11

当根k线内的值不会变化,你要盘中实时记录情况的话用EXTGBDATA这个

 

http://www.weistock.com/WeisoftHelp/zbgs003.htm

3楼
lance0307 发表于:2014/12/11 15:36:19
我遇到一种情况了

我的代码最前面variable定义的变量在K线周期内不会刷新一次

但是我在策略的中间进行了variable变量声明,结果这些变量在K线周期内也会重新赋值初始化,这是什么情况
我用msgout打印出来看了,可以确定
4楼
yukizzc 发表于:2014/12/11 15:57:16

逐k模式会在每根k线上去进行输出的,你用仅刷最后一根去看

5楼
lance0307 发表于:2014/12/11 16:27:30
我是刷最后一根的
而且代码里面还加了

if ISLASTBAR then begin

end
6楼
lance0307 发表于:2014/12/11 16:28:53
关键是最开始定义的variable变量是好的

就是中间用variable申明的就出现这种情况

简直诡异
7楼
lance0307 发表于:2014/12/11 16:30:41
后来实在没辙了
申明为GLOBALVARIABLE,结果才好

但是这个现象我实在找不出原因啊
还请高手给解答
8楼
yukizzc 发表于:2014/12/11 17:09:04

重新赋值初始化,你这个是指什么样的

把你msgout输出的信息发了看下,还有你全局变量申明输出的代码一起。

9楼
lance0307 发表于:2014/12/16 13:55:56
你好,代码如下

VARIABLE:lastcalctime=0;
VARIABLE:buyzscount=0;
VARIABLE:sellzscount=0;
newhqtime:=DYNAINFO(207);
hqtimesec:=STRTONUM(STRRIGHT(NUMTOSTREX(newhqtime,0,6),2));

msgout(1,NUMTOSTREX(lastcalctime,0,2));
lastcalctime:=hqtimesec;
10楼
yukizzc 发表于:2014/12/16 14:41:00

没有问题,这个就是我2楼给你的帖子说的,你没看吗?如果你要k线内刷新请用连接下面那几个全局变量去控制

VARIABLE

全局变量

一次指标刷新过程。

单个指标加载后的,一次刷新过程中起作用。指标加载后,定义语句在第一根K线处初始化为设定值,后面的K线调用此全局变量计算时,调用到的值是上一根K线计算的返回值。当行情更新,指标重新刷新时,那么此变量又会在第一根K线处被定义语句初始化。

共16 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.02539 s, 2 queries.