以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://www.weistock.com/bbs/list.asp?boardid=2) ---- 全局变量是不是每次轮询都给初始值? (http://www.weistock.com/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
这是我跟的日志。 第一条到倒数第二条是一个完整轮询,每秒轮询的。 最后一条执行到跟第一条位置相同的地方,发现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编辑过]
|