通达信涨停统计指标源码合集套基于通达信公式系统编写的技术统计工具,主要用于在K线图、副图或条件选股中自动识别涨停、统计涨停次数、连板高度、首板二板三板、炸板封板率以及涨停基因评分。它适合短线复盘、涨停板跟踪、连板梯队观察和选股策略验证。源码全部基于通达信公式语言,可在公式管理器中新建、测试并应用,支持主板、创业板、科创板、北交所和ST个股的涨停判断。
核心功能与特点- 自动识别涨停:根据和名称判断涨停幅度,避免统一按10%计算造成误判。
- 连板与首板标记:自动计算连续涨停天数,并标记首板、二、三板。
- 涨停日期提示:显示距涨停天数、区间涨停次数和历史涨停总数。
- 炸与封板率:识别盘中曾涨停但收盘未封住的炸板行为,并计算近日封板率- 涨停评分:综合近期涨停次数距上次涨停天数等因子生成评分,便于排序。
- 主图副图选股通用:既可做主图涨停标记,也可做副图统计,还可改为条件选股公式- 源码透明可改:所有参数和判定逻辑均可按习惯调整,兼容大多数通达信版本。
以下代码是后续所有统计公式的底层模块,建议先单独测试。若你的通达信版本不支持ZTPRICE带变量参数,可将ZTJ:=ZTPRICE(REF(C,),BKS);改为ZTJ:=REF(C,)*(1+BKS);`。
text
{基础判定}
KS:=IF(NAMELIKE(''),.05,IF(CODELIKE300') OR CODELKE('301') OR CODELIKE('688'),.2,IF(CODELIKE('8') OR CODELIKE('4'),.3,.1)));
J:=ZTPRICE(REF(C,1BKS);
ZT:=C>=ZTJ AND CH;
历史统计副图源码
该副图同时输出历史涨停次数近20日涨停次数近60日涨停次数、当前连板数和距涨停天数。使用时在副图查看若线条太多可注释掉不需要的输出行。
text{历史涨停统计图}
BKS:=(NAMELI('ST'),.,IF(CODELKE('300') ORDELIKE('301 OR CODELIKE688'),.2,IF(CODELIKE('8') OR CODELIKE('4'),.3,.1)));
ZTJ:=ZTPRICE(REF(C,1),B);
ZT:=C>=J AND C=;
LSZT:COUNTT,),COLORRED,LINETHICK;
ZT20:COUNTT,20),COLORYELLOW;
ZT60COUNT(ZT,60COLORWHITE;
LB:BARSLASTCOUNT(ZT),COLORMAGENTA;
SJ:BARSLAST(ZT),COLORGREEN;
连板与首板标记源码
这段源码适合做副图,用柱线区分首板、二板和三板,并在柱线上方显示文字。它可以帮助快速观察个股在涨停梯队中的位置。
{连板首板标记副图}
BKS:=IF(NAMELIKE('ST'),.,IF(CODELKE('300') ORDELIKE('301 OR CODELIKE688'),.2,IF(CODELIKE('8') CODELIKE(''),.3,.1)));
ZTJ:=ZTPRICE(REF(C,1),BKS);
ZT:=C>=J AND C=HLB:=BARSLAST(ZT);
SB:=ZT AND LB=1EB:=ZT AND LB2;
TB:=ZT AND LB=3;
STICKLINE(SB,,1,3,),COLWHITE;
STICK(EB,,2,3,),COLORYELLOW;
STICKLINE(TB,,3,3,),COLORMAGENTA;
DRAWTEXT(SB,1.2,'板'),COLORWH;
DRAWTEXT(EB,2.2二板'),COLORYOW;
DRAWT(TB,3.,'三板'),COLORMAGENTA;
LBHIF(ZT,LB,),COLORRED
涨停日期与区间统计源码
该公式利用DRAWTEXT_FIX在副图左上角显示统计文字,适合复盘时快速了解个股涨停。文字位置可自行调整。
text
{涨停日期区间统计}
BKS:=IF(NAMELI('ST'),.,IF(CODELKE('300') ORDELIKE('') OR CODELIKE('688'),.2,IF(CODELIKE('8') OR CODELIKE('4'),.3,.1)));
ZTJ:=ZTPRICEREF(C,1),KS);
ZT:=>=ZTJ AND C=H;
J:=BARSLAST(ZT);
DRAWTEXT_FIX(1,.01,.05,,STRCAT('距上次涨停天数:',CON2STR(SJ,)));
DRAWTEXT_FIX(1,.01,.15,,STRCAT('近5日涨停次数:',CON2STR(COUNT(ZT,5),)));
DRAWTEXT_FIX(1,01,.25,STRCAT('近20日涨停次数:',CON2STR(COUNT(ZT,20),)));
DRAWTEXT_FIX(1,.,.35,,STRCAT('近日涨停次数:',CON2STR(COUNT(ZT,60),)));
DRAWTEXT_FIX1,.01,.45,STRCAT('历史涨停:',CON2STRCOUNT(ZT,)));
炸与封板率统计
炸板判定采用盘中最高价触及涨停价、但收盘未封住。封板率用近20日涨停次数除以曾涨停次数,再加极小值避免除零。该指标对短线情绪和个股封板质量观察较有帮助。
text
{炸板与封板率统计}
BKS:=IF(NAMIKE('ST'),.05,IF(CODELIKE('300') OR CODELIKE('301') OR CODELIKE('688'),.2,IF(COIKE('8') OR CODELIKE('4'),.3,.1)));
ZTJ:=ZTPR(REF(C,1),BKS);
CZT:=H>=ZTJ;
:=C>=ZTJ AND C=H;
ZBCZT AND NOT(ZT);
FBL:=COUNT(ZT,20)/(COUNT(CZT,20)+.001)*100DRAWTEXT_F(1,.01,.,,STRCAT('近20日封板率:',STRCAT(CON2STR(F,2),'%')));
DRAWTEXT_FIX(1,.01,.15,,STRCAT('近20日炸板次数:',CON2STR(COUNT(ZB,20),)));
基因评分源码
涨停基因评分把近日、近60日、近120日涨停次数进行加权,并结合距上次涨停天数和近20日涨停密集度。评分越高,说明近期涨停活跃度越强。该公式可用于副图,也可改成排序指标。
text
涨停基因评分副图}
BKS:=IF(NAMIKE('ST'),.05,IF(DELIKE('300') OR CODELIKE301') OR CODELKE('688'),2,IF(COIKE('8') CODELIKE('4'),.3,.1)));
ZTJ:=ZTPR(REF(C,1),BKS);
ZT:=C>=ZTJ AND C=H;
J20COUNT(ZT,20);
J60:=COUNT(Z,60);
J120:=COUNT(ZT,120SJ:=BARSLAST(ZT);
SCORE:J205+J60*2+J120IF(SJ<=5,10,)+IF(J20>=3,10,),COLORRED;
首板选股公式
新建条件选股公式后,将下面代码复制进去。该公式选出当天涨停且前一天未涨停个股,即首板股。若需要排除ST,可在最后加`AND NOT(NAMELIKE('ST'))`text
{首板选股}
B:=IF(NAMELI('ST'),.05,IF(CODELKE('300') OR CODELIKE('301') OR CODELIKE('688'),.2,IF(DELIKE('8 OR CODELIKE4'),.3,.1ZTJ:=ZTPICE(REF(C,),BKS);
ZTC>=ZTJ AND=H;
XGZT AND REF(ZT1)=;
**二板连板选股公式二板选股要求当天涨停、前一天涨停、前两天未涨停。若想做三板选股,可把条件改为连续三天涨停且第四天未涨停。板选股则直接使用BARSLASTCOUNT判断连续涨停天数。
text
{二板股}
BKS:=IF(NAMELIKE('ST'),05,IF(COIKE('300') OR CODELIKE('301') OR COIKE('688'),.2,IF(DELIKE('8 OR CODELIKE('4'),.3,.1)));
ZT:=ZTPR(REF(C,),BKS);
ZT:=C>=ZTJ AND C=H;
XG:ZT AND REF(ZT,1) REF(ZT,2;
text{连板股选股,M为最小连板数}
M:=2;
BKS:=IF(NAMELKE('ST'),05,IF(COIKE('300') OR CODELI('301') OR COIKE('688'),.2,IF(CODELIKE('8') OR CODELIKE4'),.3.1)));
ZTJ:=ZTPRICE(REF(C,1),BKS);
ZT:=CZTJ AND CH;
XG:ZT AND BARSLASTCOUNT(ZT)>=M
区间涨停次数选股公式
该公式适合筛选近期涨停次数达到一定数量的活跃股。参数N代表统计周期,M代表涨停次数。例如近20日至少2次涨停,可设`N:=20 M:=2;`text
{近N日涨停次数等于M}
N:=20;
M2;
BKS:=IF(NAMELI('ST'),.,IF(CODELKE('300') ORDELIKE('301') OR CODELIKE('688'),.2IF(CODELI('8') OR COIKE('4'),.3,.)));
ZTJ:=ZTPRICE((C,1),BKS);
ZT:=C>=J AND C=H;
XG:COUNT(ZT,N)>=M;
主图涨停标记源码
主图标记适合叠加在K线图上,涨停K线用红色柱线突出,并在上方显示“涨停”文字。若不想覆盖原有K线,可以将STICKLINE宽度调小,或只保留DRAWTEXT。
text
{主图涨停标记}
BKS:=IF(NAMELIKE('ST'),.05IF(CODELKE('300') OR CODELIKE('301') OR CODELIKE('688'),.2,IF(CODELIKE('8') OR CODELIKE('4'),.3,.)));
ZTJ:=ZTPRICEREF(C,1),KS);
ZT:=CZTJ AND C=H;
STICKLINE(ZT,O,C,3,),ORRED;
RAWTEXT(ZT,H*1.,'涨停'),ORRED;
DRAWICON(ZT,H*1.,1);
使用方法
- 打开通达软件,按
Ctrl+F进入管理器。 - 若新建副图或主图指标,选择“技术指标公式”下的“新建”,输入公式名称,例如
ZTTJ选择画线方法为主图叠加或图。 - 将源码复制到公式编辑区,“测试公式”。若提示错误,优先检查标点是否为英文半,并确认当前版本是否支持
TPRICE、CODELIKE``NAMELIKE等函数。
5 若要做选股,选择“条件选股公式”下的“新建”,首板、二板、连板或区间涨停次数选股源码,测试通过后保存。
- 选股时,点击条件选股”,选择刚建好的公式,设定选股日期和范围,执行选股即可得到结果。
- 需要调整统计周期时,可把源码中的
20、60、120改为其他天数,也可以在公式管理器中设置参数N、M,方便反复使用。 - 不同券商版通达信的函数支持略有差异,若
ZTPRICE不可用,改用REF(C,1)*(1+BKS)进行近似判定;若CODELIKE或NAMELIKE`不可用,手动指定涨停。 - 以上源码仅用于技术统计、复盘研究和学习,不构成任何投资建议。实际使用中应结合市场环境、板块效应、成交量和个股基本面判断。







