以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 金字塔软件问题提交 (http://weistock.com/bbs/list.asp?boardid=2) ---- 求助这个语句怎么写 (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=68587) |
-- 作者:lyraley -- 发布时间:2014/8/11 14:28:30 -- 求助这个语句怎么写 只在这根K线开始时为某个变量赋值,如令A:=1。 我是1分钟K线轮询高频交易,所以用当second=0时为A赋值的方法不行,因为在秒数=0的这1秒内,也会重复几次令A:=1,有没有办法令这个赋值只在这根K线里执行一次呢?
[此贴子已经被作者于2014/8/11 14:28:55编辑过]
|
-- 作者:yukizzc -- 发布时间:2014/8/11 14:41:47 -- 用一个全局变量限定 variable:num=0 if num=0 and second=0 then begin A:=1; num:=1; end
if num=1 and second=59 then //59秒时重新将num置0 num:=0; |
-- 作者:lyraley -- 发布时间:2014/8/12 10:58:39 -- variable:num=0,a=0; sec1:=if(islastbar,dynainfo(207),time);
//second不能用在1分钟图,所以用另一种方法表示秒数 sec:=time0-timetot0(sec1); if num=0 and sec=59 then begin a:=1; num:=1; end if num=1 and sec=1 then num:=0; rc:=ref(c,1); if c>rc+2 or c<rc-2 then a:=0
//我想要达到的效果,满足时a才会=0
|
-- 作者:lyraley -- 发布时间:2014/8/12 10:59:04 -- 按2楼的方法试了一下,发现有问题:在1分钟K线高频轮询的情况下,只有在59秒那一秒内,a和num才是1,其它时间都是0。代码在上方,请问如何做到在这根1分钟K线中,当abs(c-ref(c,1))>2时,a才是0? |
-- 作者:lyraley -- 发布时间:2014/8/12 11:11:59 -- variable:num=0,a=0; sec1:=if(islastbar,dynainfo(207),time);
//second不能用在1分钟图,所以用另一种方法表示秒数 sec:=time0-timetot0(sec1); if num=0 and sec=59 then begin a:=1; num:=1; end if num=1 and sec=1 then num:=0; rc:=ref(c,1); if (c>rc+2 or c<rc-2) and a=1 then begin
..开仓语句..;
a:=0; end
//我想要达到的效果,满足时才开仓且只开一次 改了一下,大概是这样的
[此贴子已经被作者于2014/8/12 11:12:34编辑过]
|
-- 作者:yukizzc -- 发布时间:2014/8/12 12:13:58 -- 一开始没留意second在分钟图上的问题,抱歉。 一条开仓语句本来就只开一次,你上面问题是什么。另外你这样会没有历史信号的。历史sec都是0,在and (a=1 or not(islastbar))这样处理下吧 |
-- 作者:lyraley -- 发布时间:2014/8/12 12:54:32 -- 恩,islastbar的问题我注意到了,这段代码只是举一个例子。 我的问题是这样的: if num=0 and sec=59 then begin a:=1; num:=1; end 这段代码,本意是在1分钟K线开始时,将a和num赋值=1。 等到满足 (c>rc+2 or c<rc-2) and a=1 这个条件后开仓,并令a=0使得不重复开仓。 但在我用高频轮询测试时发现,只有在sec=59时,a=1和num=1是对的。当1秒后,即sec=58以后,a和num两个变量就成0了。这样这两个变量的目的就达不到了 [此贴子已经被作者于2014/8/12 12:55:53编辑过]
|
-- 作者:FexTel -- 发布时间:2014/8/12 13:29:41 -- 1,这种K线内的精细控制,建议用户使用后台。图表涉及历史情况,不好处理
2,variable每次刷新都会重新赋值到0,只会记录当根K最后一次运行的结果。 如果一定要使用需要EXTGBDATASET记录 |