以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  金字塔软件问题提交  (http://222.73.7.161/bbs/list.asp?boardid=2)
----  全局变量是不是每次轮询都给初始值?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=152696)

--  作者:qq代人发帖
--  发布时间:2017/5/10 15:17:59
--  全局变量是不是每次轮询都给初始值?
请教:逐k线刷最后一条线、轮询的模式下,全局变量是不是每次轮询都给初始值?
[此贴子已经被作者于2017/5/10 15:26:05编辑过]

--  作者:pyd
--  发布时间:2017/5/10 15:24:34
--  

variable全局变量吗?你给它重新初始化才会变为最初的值,不初始化就是根据你的条件累加,例如

VARIABLE:n=0;
if o<c then n:=n+1;
nn:n;

从图表第一根k线开始,第一根阳线是1,第2根阳线n是2一直这样向后累加,初始化后从新计算。


--  作者:centerpark
--  发布时间:2017/5/10 15:36:54
--  

我的意思是,用variable的全局变量,逐k线刷最后一根且轮询时,每次轮询都会给初始值。

比如轮询时间隔10秒,则10秒后,该全局变量又变回初始值了,丢失了轮训前的值

 

轮询是不是相当于加载一次?所以会给初值?

 

我看论坛里好像说gloable的也是这样


--  作者:centerpark
--  发布时间:2017/5/10 15:48:14
--  
以下是引用pyd在2017/5/10 15:24:34的发言:

variable全局变量吗?你给它重新初始化才会变为最初的值,不初始化就是根据你的条件累加,例如

VARIABLE:n=0;
if o<c then n:=n+1;
nn:n;

从图表第一根k线开始,第一根阳线是1,第2根阳线n是2一直这样向后累加,初始化后从新计算。

版主你说的是图表阶段的。你进图表交易后,带轮询的实盘\\模拟盘,结果就不一样


--  作者:shq
--  发布时间:2017/5/10 15:52:07
--  
是的,但是不会给初值。你表明轮询前的值会丢,这是测到的,还是自己理解的?
--  作者:qq代人发帖
--  发布时间:2017/5/10 15:55:48
--  
以下是引用centerpark在2017/5/10 15:48:14的发言:

版主你说的是图表阶段的。你进图表交易后,带轮询的实盘\\模拟盘,结果就不一样

你可以把代码放出部分,轮询只是一个检测信号的方式,并不是一次加载的过程。你这个全局变量的问题应该还是代码部分的问题,和采取什么样模式没有关系。


--  作者:centerpark
--  发布时间:2017/5/10 15:55:53
--  

间接测到的。

没有走到给初值的代码,进入判断条件时,却总是初值进来判断


--  作者:centerpark
--  发布时间:2017/5/10 16:06:40
--  

2017-05-10 14:31:54.587     jjpc=0
2017-05-10 14:31:54.603    tbuyholding=1
2017-05-10 14:31:54.603    sp=1
2017-05-10 14:31:54.603    low=3072
2017-05-10 14:31:54.619    cpre=3078.0
2017-05-10 14:31:54.619    cpre-wap=3072.0
2017-05-10 14:31:54.619    CURRBARSCOUNT=1
2017-05-10 14:31:54.619    jjpc赋值:jjpc=1
2017-05-10 14:31:55.150     jjpc=0

 

这是我跟的日志。

第一条到倒数第二条是一个完整轮询,每秒轮询的。

最后一条执行到跟第一条位置相同的地方,发现jjpc=初始值了。我在初值赋值里也加了dbg,日志里没有说明没进到给初值的代码,jjpc却自动还原了.


--  作者:shq
--  发布时间:2017/5/10 16:07:00
--  
建议结合2楼的代码和自身的策略,修改下跑一遍,重新理解下。比如:

VARIABLE:n=0;
if o<c then n:=n+1;
nn:n; //轮询时我可以观察nn的输出值
if nn=100 then buy();//这里是个假设
(小周期,直接肉眼观察左上角的输出值)

--  作者:shq
--  发布时间:2017/5/10 16:23:44
--  
根据8楼日志,后面jjpc赋值:还是多少呢?可以考虑加个调试语句,比如:if jjpc=1 then ...;
[此贴子已经被作者于2017/5/10 16:24:05编辑过]