[ZX261011]四区指标主图-通达信指标源码分享

01 120 天框个房间,强弱分四层
一根 K 线在 120 天的框里上上下下,你知道它此刻站在框里的第几层吗?四区指标主图干的就是这件事——拿 120 天最高最低圈一个房间,用黄金分割划出压力、平衡、支撑,K 线在楼层之间走动,强弱一眼分层。
房间框好了,四层楼各有各的名:
速查卡(五秒扫完,名称 + 一句话作用)——四层楼,从上往下看:
▲ 压力:框顶往下 0.191,高层的边 |
◆ 平衡:上下各半,中轴位置 |
▲ 支撑:框底往上 0.191,低层的边 |
● 低位线:价格碰平衡那一下落点 |
02 指标源码分享|四区指标主图

N:=120;K:=BARSLAST(CURRBARSCOUNT=N);GD:=CONST(IF(ISLASTBAR=1,HHV(H,K),0));DD:=CONST(IF(ISLASTBAR=1,LLV(L,K),0));KJ:=GD-DD;GD4:=IF(CURRBARSCOUNT<=N/2,GD,DRAWNULL);DRAWBAND(GD4,RGB(0,0,250),DD+KJ/2,RGB(0,0,0));{该行设置背景色}平衡:IF(CURRBARSCOUNT<=N,DD+KJ/2,DRAWNULL),COLOR00FFFF,NODRAW;压力:IF(CURRBARSCOUNT<=N,GD-KJ*0.191,DRAWNULL),COLORFF00FF,NODRAW;支撑:IF(CURRBARSCOUNT<=N,DD+KJ*0.191,DRAWNULL),COLOR00FF00,NODRAW;低位:IF(CURRBARSCOUNT<=N/2ANDCROSS(平衡,LOW),1,DRAWNULL),COLORFF8899,NODRAW;低涨:IF(CURRBARSCOUNT<=N,(C/LLV(LOW,K)-1)*100,DRAWNULL),COLOR0000FF,NODRAW;天:BARSLAST(L=DD),COLOR00FFFF,NODRAW;MA5:MA(CLOSE,5),COLORFFFFFF;MA10:MA(CLOSE,10),COLOR00FFFF;MA20:MA(C,20),COLORFF00FF;高:IF(CURRBARSCOUNT<=N,GD,DRAWNULL),COLOR00FFFF,POINTDOT;低:IF(CURRBARSCOUNT<=N,DD,DRAWNULL),COLOR00FF00,POINTDOT;{以下设置主图显示方式}STICKLINE(CURRBARSCOUNT=N,GD,DD,0,-1),COLORGREEN;STICKLINE(CURRBARSCOUNT=N/2,GD,DD,0,-1),COLORGREEN;STICKLINE(CURRBARSCOUNT=1,GD,DD,0,-1),COLORGREEN;STICKLINE(CURRBARSCOUNT<=N,平衡,平衡,3,-1),COLORWHITE;STICKLINE(CURRBARSCOUNT<=N/2,压力,压力,3,-1),COLORRED;STICKLINE(CURRBARSCOUNT<=N/2,支撑,支撑,3,-1),COLORGREEN;DRAWKLINE(HIGH,OPEN,LOW,CLOSE);DRAWICON(低位,LOW,13);{以下设置提示文字部分}DRAWTEXT(CURRBARSCOUNT=1,压力,'0.809'),COLOR0000FF;DRAWTEXT(CURRBARSCOUNT=1,平衡,'0.500'),COLORFFFFFF;DRAWTEXT(CURRBARSCOUNT=1,支撑,'0.191'),COLOR00FFFF;DRAWTEXT(CURRBARSCOUNT=N/2+9,GD-KJ/12,'★强势区域--高位标注!'),COLOR00FFFF;DRAWTEXT(CURRBARSCOUNT=N/2+9,GD-KJ/3,'●震荡整理--低位区观察!'),COLOR00FF00;DRAWTEXT(CURRBARSCOUNT=N/2+9,DD+KJ/3,'◆反弹中轨--逢高休息!'),COLORFFFFFF;DRAWTEXT(CURRBARSCOUNT=N/2+9,DD+KJ/10,'■弱势区域--暂不参与!'),COLORFFFF00;DRAWTEXT(CURRBARSCOUNT=N,GD-KJ/12,'■目前K线天数:请看参数!'),COLOR0000FF;DRAWTEXT(CURRBARSCOUNT=N,压力,'■建议查阅K线:短线30天,中长线120天!'),COLORFF8899;
顺手把 #四区指标# 钉一下,平时跟 #主图指标# #黄金分割# 绑一块儿聊,都是画框定层的路子。
03 黄金分割 0.191,楼层怎么划出来
先看房间怎么来的。最高最低各有一句 GD 和 DD,把 120 天钉死:
GD:=CONST(IF(ISLASTBAR=1,HHV(H,K),0));
K 是当前 K 线离第 120 根有多远,HHV 找这 120 天里的最高,CONST 把它定成常量,整根线都认这个数。另一边 DD 拿 LLV 找最低,道理一样。这一高一低框起来,房间的顶和底就算定住了。
N 为啥取 120?60 日太窄,一个波段没走完就换框,整天撞边;240 日太宽,框拉得太开,它老在中间晃。120 日卡半年节奏,框得住波段又留得出空间。我把 N 改成 60 试过,撞边撞得心烦,又改回来了。
框子有了,楼层用中点先劈一半:
平衡:IF(CURRBARSCOUNT<=N,DD+KJ/2,DRAWNULL),COLOR00FFFF,NODRAW;
KJ 是顶减底,整个房间的高度。从 DD 往上加半截房高,落在正中间,这条线叫平衡。它在这条线上头,算偏强;在下头,算偏弱。
压力、支撑两行,才是这指标的真手艺:
压力:IF(CURRBARSCOUNT<=N,GD-KJ*0.191,DRAWNULL),COLORFF00FF,NODRAW;
从顶往下退 0.191 倍房高,是压力;从底往上抬 0.191 倍房高,是支撑。这个 0.191,是黄金分割里的一个数,它是 0.618 的平方,专门用来定"边缘地带"。黄金分割这玩意儿,我信 0.191 不信 0.382——0.382 离中轴太近,压力支撑挤一块儿,分不出主次。这 0.191 卡在顶底两侧,边缘就是边缘,干净。
速查卡里那个低位线,是这么来的:
低位:IF(CURRBARSCOUNT<=N/2 AND crOSS(平衡,LOW),1,DRAWNULL),COLORFF8899,NODRAW;
价格从上往下碰平衡那一下,这行记成 1,DRAWICON 再补个图标。它只在前半段框里生效,后半段不画,省得信息太密。
0.191 · 0.500 · 0.809三档楼板,从低到高:0.191 · 0.500 · 0.809
DRAWBAND 那层底色,把上半区染成深蓝,纯为了看着舒服,跟算法没关系。对了,说个题外的,低涨那行算的是价格离框底涨了几成,拿 LLV 最低做分母,越接近框底数值越小,当个位置标尺用正好。MA5、MA10、MA20 三根均线是搭价格的参照,5 日贴得近,20 日沉得住,三根一起把中短期节奏摆出来。
