通达信Tdx公式实战:如何一键显示股票年份刻度与行业市值(附完整代码)

张开发
2026/4/16 5:13:41 15 分钟阅读

分享文章

通达信Tdx公式实战:如何一键显示股票年份刻度与行业市值(附完整代码)
通达信Tdx公式实战如何一键显示股票年份刻度与行业市值附完整代码在股票分析中快速获取关键信息是高效决策的基础。通达信作为国内主流证券分析软件其强大的Tdx公式功能可以帮助投资者自定义显示各类关键数据。本文将手把手教你如何编写一个综合性公式实现年份刻度、行业分类和市值等核心信息的一键可视化。1. 环境准备与公式基础在开始编写公式前需要确保你的通达信软件已更新至最新版本。打开公式管理器快捷键CtrlF选择技术指标公式或条件选股公式新建一个空白公式。Tdx公式主要由以下几类元素构成变量定义用于存储中间计算结果函数调用通达信内置的数百个函数绘图指令决定如何在K线图上显示信息以下是一个简单的公式框架示例{公式名称: MyStockInfo} {公式描述: 显示年份刻度、行业、市值等信息} VAR1:CLOSEOPEN; {示例变量定义} DRAWTEXT(ISLASTBAR,CLOSE,示例文本); {示例绘图指令}2. 实现年份刻度显示年份刻度能帮助投资者快速识别关键时间节点特别适用于长期趋势分析。我们通过识别年份变化点来实现这一功能。核心逻辑包括检测年份变化在K线图左侧绘制刻度线添加年份标签完整实现代码如下{年份刻度显示} ISYEAR:YEAR-REF(YEAR,1)0; {判断年份是否变化} PZ:L*0.9; {确定刻度线位置} STICKLINE(ISYEAR,0,PZ,0,-1),COLORC0C0C0; {绘制灰色刻度线} DRAWTEXT(ISYEAR,PZ,VARCAT( ,VAR2STR(YEAR,0))),COLORC0C0C0; {添加年份标签}提示调整PZ的计算方式可以改变刻度线的垂直位置例如使用PZ:MIN(L,MA250)*0.95;可以让刻度线更贴近实际价格。3. 行业与市值信息展示行业分类和市值是股票基本面分析的核心要素。通达信提供了丰富的财务数据函数我们可以利用这些函数提取并格式化显示相关信息。3.1 行业信息提取通达信存储了多种行业分类数据常用的包括HYBLOCK行业板块GNBLOCK概念板块ZDBLOCK自定义板块行业信息显示代码{行业信息显示} DRAWTEXT_FIX(ISLASTBAR,0.52,0,0,ZDBLOCK); {显示自定义板块} DRAWTEXT_FIX(ISLASTBAR,0,0,0,ZSBLOCK); {显示指数板块} DRAWTEXT_FIX(ISLASTBAR,0.85,0.017,1,GNBLOCK); {显示概念板块}3.2 市值计算与显示市值数据需要通过财务函数获取并进行单位转换{流通市值计算} LTSZV:FINANCE(40)/100000000; {获取流通市值并转换为亿单位} LTSZ1:CON2STR(LTSZV,0); {转换为字符串} LTSZSTR:STRCAT(市值,STRCAT(LTSZ1,亿)); {拼接显示文本} {总市值计算} ZSZV:FINANCE(46)/100000000; ZSZ1:CON2STR(ZSZV,0); ZSZSTR:STRCAT(总市值,STRCAT(ZSZ1,亿)); {合并显示} SZSTR:STRCAT6(LTSZSTR, ,ZSZSTR,,,); DRAWTEXT_FIX(ISLASTBAR,0.91,1,1,SZSTR); {在右下角显示}4. 综合信息整合与优化将各类信息有机整合并优化显示效果可以大幅提升公式的实用性。4.1 主营信息整合{主营信息整合} S1:STRCAT6( [,MAINBUSINESS, ,LEVEL1HYBLOCK,] ,SZSTR); S1S:STRCAT(HYBLOCK,S1); DRAWTEXT_FIX(ISLASTBAR,0.91,1,1,S1S); {右下角综合信息}4.2 价格与涨幅实时显示{价格和涨幅显示} C1:CON2STR(C,2); {当前价格式化} ZFV:(C-DYNAINFO(3))/DYNAINFO(3)*100; {计算涨幅} ZF1:IF(ZFV0, [, [); {处理正负号} ZF2:STRCAT(ZF1,CON2STR(ZFV,2)); ZF3:STRCAT(ZF2,%]); CZFSTR:STRCAT(C1,ZF3); {拼接价格和涨幅} {动态显示} DRAWTEXT(ISLASTBAR,(CO)/2,STRCAT( ,CZFSTR)),COLORFFFFFF;4.3 显示位置优化建议不同信息的最佳显示位置参考信息类型推荐位置坐标参数示例年份刻度左侧X0, YPZ行业分类右上角(0.85,0.017)市值数据右下角(0.91,1)价格涨幅随K线移动(CO)/25. 完整公式代码与使用技巧将上述所有功能整合得到完整公式代码{综合股票信息显示公式} {显示年份刻度、行业、市值、价格等信息} {1. 年份刻度显示} ISYEAR:YEAR-REF(YEAR,1)0; PZ:L*0.9; STICKLINE(ISYEAR,0,PZ,0,-1),COLORC0C0C0; DRAWTEXT(ISYEAR,PZ,VARCAT( ,VAR2STR(YEAR,0))),COLORC0C0C0; {2. 行业信息显示} DRAWTEXT_FIX(ISLASTBAR,0.52,0,0,ZDBLOCK); DRAWTEXT_FIX(ISLASTBAR,0,0,0,ZSBLOCK); DRAWTEXT_FIX(ISLASTBAR,0.85,0.017,1,GNBLOCK); {3. 市值计算与显示} LTSZV:FINANCE(40)/100000000; LTSZ1:CON2STR(LTSZV,0); LTSZSTR:STRCAT(流通市值,STRCAT(LTSZ1,亿)); ZSZV:FINANCE(46)/100000000; ZSZ1:CON2STR(ZSZV,0); ZSZSTR:STRCAT(总市值,STRCAT(ZSZ1,亿)); SZSTR:STRCAT6(LTSZSTR, ,ZSZSTR,,,); {4. 主营信息整合} S1:STRCAT6( [,MAINBUSINESS, ,LEVEL1HYBLOCK,] ,SZSTR); S1S:STRCAT(HYBLOCK,S1); DRAWTEXT_FIX(ISLASTBAR,0.91,1,1,S1S); {5. 价格涨幅显示} C1:CON2STR(C,2); ZFV:(C-DYNAINFO(3))/DYNAINFO(3)*100; ZF1:IF(ZFV0, [, [); ZF2:STRCAT(ZF1,CON2STR(ZFV,2)); ZF3:STRCAT(ZF2,%]); CZFSTR:STRCAT(C1,ZF3); DRAWTEXT(ISLASTBAR,(CO)/2,STRCAT( ,CZFSTR)),COLORFFFFFF; {6. 股票名称显示} DRAWTEXT_FIX(ISLASTBAR,0.5,0,1,STKNAME),COLOR4080FF;实际使用中发现将市值信息与行业信息合并显示在右下角最为高效既不遮挡K线主图又能一目了然地获取关键信息。对于长期跟踪的股票建议将公式保存为模板方便快速调用。

更多文章