这套源码围绕“笔”的顶底识别展开,用BACKSET与SUMBARS回溯笔的转折位置,再通过VALUEWHEN取最近两笔的高低点来框定中枢上下沿(ZG/ZD)。图上标注的“进”“反”“低”“高”均为结构满足条件时的文字提示,属于形态识别类参考,不构成任何操作建议。
使用说明:仅供学习参考
1、先看ZG与ZD是否画出。源码中L1缠与L2缠的VALUEWHEN比较决定了ZD取值,H1缠与H2缠决定ZG,两条虚线出现后才存在可参考的区间边界。
2、关注“进”与“反”的出现位置。“进”仅在C>ZD&&C<ZG且处于向下笔转折点时标注,“反”则对应向上笔转折点且同样落在区间内,两者都依赖BACKSET锁定最后一笔的位置。
3、留意BACKSET与REFX1的引用特性。源码中大量使用BACKSET(ISLASTBAR,...)将信号回溯到历史K线,以及REFX1(...,9999999)向未来取值,这类写法在历史图上会随最新数据变化而调整显示位置,属于正常的公式回看机制。
4、下跌中与上涨中的“低”“高”标注条件不同。“低”要求下跌中且向下笔转折时前高低于ZG,“高”要求上涨中且向上笔转折时前低低于ZG,可对照BARSLAST的比较结果理解方向判定逻辑。

开关A:=1; MA8:=1; 展F:=2; HH展BDD:=(H>HV(H,展F))*开关A*MA8; NH展BDD:=(BARSLAST(HH展BDD)+1)*开关A*MA8; LL展BDD:=(L<LV(L,展F))*开关A*MA8; NL展BDD:=(BARSLAST(LL展BDD)+1)*开关A*MA8; AH展BDD:=(BACKSET(COUNT(LL展BDD,NH展BDD)&&LL展BDD,NH展BDD))*开关A*MA8; AL展BDD:=(BACKSET(COUNT(HH展BDD,NL展BDD)&&HH展BDD,NL展BDD))*开关A*MA8; LX:=AL展BDD, NOTEXT; HX:=AH展BDD, NOTEXT; 笔:=1; BADS4:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),4)); BBDS4:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),5)); BADS2:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),2)); BBDS2:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),3)); BADS3:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),3)); BBDS3:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),4)); BADS1:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),1)); BBDS1:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),2)); DRAWLINE1(笔*CROSS(LX=1,0.5)&&BBDS1=1&&BADS1=0,L,CROSS(HX=1,0.5),H,0),RGB(255,0,0),LINETHICK1; DRAWLINE1(笔*CROSS(HX=1,0.5)&&BBDS1=1&&BADS1=0,H,CROSS(LX=1,0.5),L,0),COLORGREEN,LINETHICK1; BAA:=IF(CROSS(LX=1,0.5),L,H); BBB:=BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5)||CROSS(HX=1,0.5),4)); HQ:=CROSS(BACKSET(ISLASTBAR,HHVBARS(IF(CROSS(HX=1,0.5),H,0),SUMBARS(CROSS(HX=1,0.5),2))+1),0.5); LQ:=CROSS(BACKSET(ISLASTBAR,LLVBARS(IF(CROSS(LX=1,0.5),L,10000000),SUMBARS(CROSS(LX=1,0.5),2))+1),0.5); DRAWSL(HQ,H,0,10000,0,RGB(255,0,0)),DASH; DRAWSL(LQ,L,0,10000,0,COLORGREEN),DASH; DRAWTEXT(ISLASTBAR,REF(H,BARSLAST(HQ)),' GG'),RGB(255,0,0),ALIGN0,VALIGN2; DRAWTEXT(ISLASTBAR,REF(L,BARSLAST(LQ)),' DD'),ALIGN0,COLORGREEN,VALIGN0; L1缠:=CROSS(BACKSET(ISLASTBAR,BARSLAST(CROSS(LX=1,0.5))+1),0.5); L2缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5),2)),0.5); L3缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5),3)),0.5); L4缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(LX=1,0.5),4)),0.5); H1缠:=CROSS(BACKSET(ISLASTBAR,BARSLAST(CROSS(HX=1,0.5))+1),0.5); H2缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(HX=1,0.5),2)),0.5); H3缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(HX=1,0.5),3)),0.5); H4缠:=CROSS(BACKSET(ISLASTBAR,SUMBARS(CROSS(HX=1,0.5),4)),0.5); 周期:=BARSLAST(CROSS(BBB,0.5)),RGB(255,0,255); DRAWLINE3(ISLASTBAR&&VALUEWHEN(L1缠,L)>=VALUEWHEN(L2缠,L),VALUEWHEN(L1缠,L),0,1,VALUEWHEN(L1缠,L),BARSLAST(CROSS(BBB,0.5)),0),COLORGREEN,LINETHICK2,DASH; DRAWLINE3(ISLASTBAR&&VALUEWHEN(L1缠,L)<=VALUEWHEN(L2缠,L),VALUEWHEN(L2缠,L),0,1,VALUEWHEN(L2缠,L),BARSLAST(CROSS(BBB,0.5)),0),COLORGREEN,LINETHICK2,DASH; DRAWTEXT(ISLASTBAR&&VALUEWHEN(L1缠,L)>=VALUEWHEN(L2缠,L),VALUEWHEN(L1缠,L),' ZD '),COLORGREEN,ALIGN0,VALIGN0,LINETHICK2,DASH; DRAWTEXT(ISLASTBAR&&VALUEWHEN(L1缠,L)<=VALUEWHEN(L2缠,L),VALUEWHEN(L2缠,L),' ZD '),COLORGREEN,ALIGN0,VALIGN0,LINETHICK2,DASH; ZD:=REFX1(IF(VALUEWHEN(L1缠,L)>=VALUEWHEN(L2缠,L),VALUEWHEN(L1缠,L),VALUEWHEN(L2缠,L)),9999999); DRAWLINE3(ISLASTBAR&&VALUEWHEN(H1缠,H)>=VALUEWHEN(H2缠,H),VALUEWHEN(H2缠,H),0,1,VALUEWHEN(H2缠,H),BARSLAST(CROSS(BBB,0.5)),0),RGB(255,0,0),LINETHICK2,DASH; DRAWLINE3(ISLASTBAR&&VALUEWHEN(H1缠,H)<=VALUEWHEN(H2缠,H),VALUEWHEN(H1缠,H),0,1,VALUEWHEN(H1缠,H),BARSLAST(CROSS(BBB,0.5)),0),RGB(255,0,0),LINETHICK2,DASH; DRAWTEXT(ISLASTBAR&&VALUEWHEN(H1缠,H)>=VALUEWHEN(H2缠,H),VALUEWHEN(H2缠,H),' ZG '),RGB(255,0,0),ALIGN0,VALIGN2,LINETHICK2,DASH; DRAWTEXT(ISLASTBAR&&VALUEWHEN(H1缠,H)<=VALUEWHEN(H2缠,H),VALUEWHEN(H1缠,H),' ZG '),RGB(255,0,0),ALIGN0,VALIGN2,LINETHICK2,DASH; ZG:=REFX1(IF(VALUEWHEN(H1缠,H)>=VALUEWHEN(H2缠,H),VALUEWHEN(H2缠,H),VALUEWHEN(H1缠,H)),9999999); DRAWTEXT(笔*CROSS(LX=1,0.5)&&BACKSET(ISLASTBAR,SUMBARS(笔*CROSS(LX=1,0.5),1))&&C>ZD&&C<ZG,C,'进'),VALIGN0,FONTSIZE25; DRAWTEXT(笔*CROSS(HX=1,0.5)&&BACKSET(ISLASTBAR,SUMBARS(笔*CROSS(HX=1,0.5),1))&&C>ZD&&C<ZG,C,'反'),VALIGN0,FONTSIZE25; 上涨中:=REFX1(BARSLAST(笔*CROSS(LX=1,0.5))>BARSLAST(笔*CROSS(HX=1,0.5)),99999); 下跌中:=REFX1(BARSLAST(笔*CROSS(LX=1,0.5))<BARSLAST(笔*CROSS(HX=1,0.5)),99999); DRAWTEXT(下跌中&&笔*CROSS(LX=1,0.5)&&BACKSET(ISLASTBAR,SUMBARS(笔*CROSS(LX=1,0.5),1))&&HHV(H,SUMBARS(笔*CROSS(HX=1,0.5),1)-1)<ZG,L,'低'),VALIGN0,FONTSIZE25; DRAWTEXT(上涨中&&笔*CROSS(HX=1,0.5)&&BACKSET(ISLASTBAR,SUMBARS(笔*CROSS(HX=1,0.5),1))&&LLV(L,SUMBARS(笔*CROSS(LX=1,0.5),1)-1)<ZG,H,'高'),FONTSIZE25;
声明:(请您认真阅读一下条款!)
1、所有资源仅限学习研究,不构成任何投资建议,使用风险自行承担,我方不承担任何相关责任。
2、指标无准确率、无成功率承诺,请仔细阅读说明,理性学习使用。
3、仅提供安装指导,不提供使用方法,指标修改、转换、定制等服务,费用另议。
4、指标为虚拟文件,下载前请确认;一经付费 / 下载,不予退换退款。
注册账号,永久不限次复制,注册即送 20 积分,积分可用于站内付费指标下载