以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  我选1分钟时候,图上面价格压缩了  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=175078)

--  作者:qq代人发帖
--  发布时间:2020/3/20 14:21:56
--  我选1分钟时候,图上面价格压缩了
请教:我选1分钟时候,图上面价格压缩了
图片点击可在新窗口打开查看此主题相关图片如下:3.png
图片点击可在新窗口打开查看

--  作者:FireScript
--  发布时间:2020/3/20 14:26:51
--  
K线图压缩了?还是代码里面的问题?请在图上标识下你描述的现象。
--  作者:ma-robot
--  发布时间:2020/3/20 14:59:12
--  
以下是引用FireScript在2020/3/20 14:26:51的发言:
K线图压缩了?还是代码里面的问题?请在图上标识下你描述的现象。

压缩那个再说,下面我需要解决的问题:为策略自适应周期做准备。 你好 ,我想这样进行,手动选择不同的周期从1分钟到240分钟,通过替换$OPEN#MIN后面加数字字符1分钟到240分钟。进行多周期调试。 比如 OPENd:=”$OPEN#MIN1“或”$OPEN#MIN3“或”$OPEN#MIN5“或”$OPEN#MIN10“或”$OPEN#MIN15“。。。。。。”$OPEN#MIN240“进行循环。 进行跨周期和跨图标周期显示。通过MIN_ONOFF选择不同的周期数字。比如1分钟图标,手动改5分钟策略显示。或者DAY_ONOFF显示一日或者多日策略表现。 能不能写出来这个模版? 多谢
--  作者:FireScript
--  发布时间:2020/3/20 15:20:13
--  
 这个不行。这种方式的引用是无法实现你上面的需求的。
你还不如用CALLSTOCK函数。它这里的周期函数的参数能自定义分钟数。用参数函数控制下即可。


[此贴子已经被作者于2020/3/20 15:30:10编辑过]

--  作者:wenarm
--  发布时间:2020/3/20 15:24:55
--  

INPUT:N(1,1,240,1);
AA:CALLSTOCK(\'\',vtOPEN,21,N);

 

直接调整N


--  作者:ma-robot
--  发布时间:2020/3/20 21:50:36
--  
以下是引用wenarm在2020/3/20 15:24:55的发言:

INPUT:N(1,1,240,1);
AA:CALLSTOCK(\'\',vtOPEN,21,N);

 

直接调整N

今天测试了一下,这个写法是带未来函数的。 OPENd0:=REF(vtOPEN,0); HIGHd0:=REF(vtHIGH,0); LOWd0:=REF(vtLOW,0); CLOSEd0:=REF(vtCLOSE,0); VOLd0:=REF(vtVOL,0); 我这样写出来,不起作用。。。 OPENd0:="$OPEN#TICK"; HIGHd0:="$HIGH#TICK"; LOWd0:="$LOW#TICK"; CLOSEd0:="$CLOSE#TICK"; VOLd0:="$VOL#TICK"; 如果这样写,显示会除问题。 有没有解决办法?
--  作者:wenarm
--  发布时间:2020/3/22 21:21:19
--  

当小周期引用大后期就有会有未来。和函数没什么关系。如果你小引大可以向前引用一个k线数据

方法如下:

被引用公式名:ref_k

 

ref_open:ref(open,1);

 

引用公式:

INPUT:N(1,1,240,1);

stkindi(\'\',\'ref_k.ref_open\',0,21,N);

 

 

您代码错误原因:

vtHIGH是callstock函数专属的参数标识。不能直接当成最高价使用。开高低收都是没有vt的。

REF(HIGH,0); 这个表达方式也不对,向前引用0个周期,就是当前周期,等价于high

 

 

OPENd0:="$OPEN#TICK"; HIGHd0:="$HIGH#TICK"; LOWd0:="$LOW#TICK"; CLOSEd0:="$CLOSE#TICK"; VOLd0:="$VOL#TICK";

这段写法没问题。引用的就是分笔周期上的价格。