请看网友留言的截图:
网友留言
留言的思路是说: 今日突破百日内最高成交量的最高价格主图标注公式怎么写?
(相关资料图)
这让我们可以直接应用前面的一篇文章 的思路及其中的代码,快速实现该网友留言的思路。
思路示意图:
思路示意图
思路步骤
引入文章 里的标注算法,; 这里分两个方向:a.先确定C点,然后确定A点;
b.不用C点,直接计算100个数据内的最高价格及其位置;
三、重要的序列逻辑条件;
四、输出百日内的最高价格线。
算法建立
1.位置确定的两个方向
a.先确定C点,然后确定A点
TB:=CONST(TROUGHBARS(2,转向比,1));{C点位置}
TE:=CONST(REF(HHVBARS(VOL,100),TB))+TB;
DRAWICON(TE<=100 AND CURRBARSCOUNT=TE+1,H*1.008,39);
DRAWICON(TE<=100 AND CURRBARSCOUNT=TB+1,L*0.999,38);
b.不使用C点,直接计算100个数据的最高价格及其所在位置
TE:=CONST(REF(HHVBARS(VOL,100-1),1))+1;
DRAWICON(TE<=100 AND CURRBARSCOUNT=TE+1,H*1.008,39);
2. 重要的序列逻辑条件
TJ:=TE<=100 AND TE>TB AND CURRBARSCOUNT<=TE+1;{TJ 条件}
3.输出百日内的最高价格线并标示数值
RE:IF(TJ,CONST(REF(H,TE)),DRAWNULL);
DRAWNUMBER(ISLASTBAR,RE,RE);
主图标注的两个完整代码
a.
代码流程1
TB:=CONST(TROUGHBARS(2,转向比,1));
TE:=CONST(REF(HHVBARS(VOL,100-1),1))+1;
DRAWICON(TE<=100 AND CURRBARSCOUNT=TE+1,H*1.008,39);
DRAWICON(TE<=100 AND CURRBARSCOUNT=TB+1,L*0.999,38);
TJ:=TE<=100 AND TE>TB AND CURRBARSCOUNT<=TE+1;
RE:IF(TJ,CONST(REF(H,TE)),DRAWNULL);
DRAWNUMBER(ISLASTBAR,RE,RE);
b.
代码流程2
TE:=CONST(REF(HHVBARS(VOL,100-1),1))+1;
DRAWICON(TE<=100 AND CURRBARSCOUNT=TE+1,H*1.008,39);
TJ:=TE<=100 AND CURRBARSCOUNT<=TE+1;
RE:IF(TJ,CONST(REF(H,TE)),DRAWNULL);
DRAWNUMBER(ISLASTBAR,RE,RE);
数据筛选的两个算法
有了计算得到的RE的值,直接使用CROSS函数对数据进行筛选即可。注意将引入过来的的RE值进行赋值处理。
a.
代码流程3
TB:=CONST(TROUGHBARS(2,转向比,1));
TE:=CONST(REF(HHVBARS(VOL,100-1),1))+1;
TJ:=TE<=100 AND TE>TB AND CURRBARSCOUNT<=TE+1;
RE:=IF(TJ,CONST(REF(H,TE)),DRAWNULL);
CROSS(C,RE);
筛选效果a.浏览(显示的数据个数为100根)
视频加载中...注意主图标注算法的参数与数据筛选算法的参数保持一致。
b.
代码流程4
TE:=CONST(REF(HHVBARS(VOL,100-1),1))+1;
TJ:=TE<=100 AND CURRBARSCOUNT<=TE+1;
RE:=IF(TJ,CONST(REF(H,TE)),DRAWNULL);
CROSS(C,RE);
筛选效果b.浏览(显示的数据个数为100根)
视频加载中...