以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 一个思路,请老师帮助实现 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=188434) |
-- 作者:金台369 -- 发布时间:2021/5/24 10:16:43 -- 一个思路,请老师帮助实现 老师,我自己编写了个指标,在5分钟周期上,显示振幅TR柱体,并对与前面7组相比最低的那个进行变色显示, TR1 : (H-L)/MINDIFF,NODRAW; STICKLINE(C ,0,TR1,8,1,COLORBLUE); STICKLINE(TR1<REF(TR1,1),0,TR1,8,1),COLORblue; 极缩:=BARSCOUNT(C)>7 AND LLV(TR1,7)=TR1; STICKLINE(极缩 and ISLASTBAR<>1 ,0,TR1,8,0,COLORYELLOW); 我的问题是,我希望在1分钟周期上,在主图上能比较5分钟周期的TR,出现极缩信号时,在主图上用蓝色空框线将该组K框起来,框线的上沿为该组K也即对应5分钟K的最高价,框线的下沿为该组K也即对应5分钟K的最低价。
|
-- 作者:FireScript -- 发布时间:2021/5/24 10:58:53 -- 你意思是要在5分钟周期范围下的1分钟 也同样标记出来? |
-- 作者:金台369 -- 发布时间:2021/5/24 11:07:41 -- 不是,是在一分钟周期上,比较5分钟周期的TR,出现极缩信号时,将极缩的该组K用空框线框起来 |
-- 作者:FireScript -- 发布时间:2021/5/24 11:18:32 -- 对我的意思就是满足条件的五分钟周期下的1分钟周期都标记出来。 |
-- 作者:金台369 -- 发布时间:2021/5/24 11:25:49 -- 哦,那是吧 |
-- 作者:FireScript -- 发布时间:2021/5/24 13:08:45 -- 这个要用另外一段代码了。 被调用代码,也就是你现在用的这段代码。假设指标名称是AX: TR1 : (H-L)/MINDIFF,NODRAW; STICKLINE(C ,0,TR1,8,1,COLORBLUE); STICKLINE(TR1<REF(TR1,1),0,TR1,8,1),COLORblue; 极缩:BARSCOUNT(C)>7 AND LLV(TR1,7)=TR1;//为了能进行调用,这里定义方式用: STICKLINE(极缩 and ISLASTBAR<>1 ,0,TR1,8,0,COLORYELLOW); 1分钟周期上的指标代码如下。但是注意这个指标必须是序列模式。否则不行。 cd1:mod(time,500)=0,NODRAW; cd2:ref(cd1,1),NODRAW; cd3:"AX.极缩#MIN5"; P1:=HHV(H,5); P2:=REFX(LLV(L,5),4); DRAWRECT(cd2 and cd3 ,P2 ,cd1 or ISLASTBAR ,P1 ,true ,COLORYELLOW,1,vtDOT); 实际效果: 1分钟 5分钟满足条件的位置 用笑脸标记下。
|
-- 作者:金台369 -- 发布时间:2021/5/24 14:12:33 -- 不好意思,老师,我带入后,在1分钟周期上每个5分钟的方框都出来了, |
-- 作者:FireScript -- 发布时间:2021/5/24 14:18:57 -- 你确定你正常调用了指标吗? 我上面代码是需要新建一个指标来进行调用的。 被调用代码,也就是你现在用的这段代码。假设指标名称是AX: TR1 : (H-L)/MINDIFF,NODRAW; STICKLINE(C ,0,TR1,8,1,COLORBLUE); STICKLINE(TR1<REF(TR1,1),0,TR1,8,1),COLORblue; 极缩:BARSCOUNT(C)>7 AND LLV(TR1,7)=TR1;//为了能进行调用,这里定义方式用: STICKLINE(极缩 and ISLASTBAR<>1 ,0,TR1,8,0,COLORYELLOW); 这部分代码是需要进行调用的,且指标名称必须和下面调用函数里保持一致。 1分钟周期上的指标代码如下。但是注意这个指标必须是序列模式。否则不行。 cd1:mod(time,500)=0,NODRAW; cd2:ref(cd1,1),NODRAW; cd3:"AX.极缩#MIN5"; P1:=HHV(H,5); P2:=REFX(LLV(L,5),4); DRAWRECT(cd2 and cd3 ,P2 ,cd1 or ISLASTBAR ,P1 ,true ,COLORYELLOW,1,vtDOT); |
-- 作者:金台369 -- 发布时间:2021/5/24 15:34:20 -- 可以了,还有问题,仔细翻看了很多品种,比较了5分钟的TR信号,有两个问题 1、偶尔出现框内出现1到2根或3根K线的情况, 2、总感觉出现了错位,会有出现的框架明显振幅较大,而它旁边的组合K振幅明显不大。 3、有好多品种比如苹果、锰硅,硅铁等,没有任何信号出现。
|
-- 作者:FireScript -- 发布时间:2021/5/24 15:45:41 -- 1.是不是缺五分钟数据,本地没有看到没信号或者是框内不足五个K的情况。你在有问题的品种上,切换到五分钟触发下补充数据,再切回到1分钟看下情况。 2.“总感觉出现了错位,会有出现的框架明显振幅较大,而它旁边的组合K振幅明显不大。”这个就截图详细说明下吧。
|