通达信副图公式源码:三步成龙

这个通达信公式是一套下跌趋势中的短线抄底策略,核心逻辑是捕捉 “洗盘后短期突破” 的买入机会,整体功能可拆解为 3 个核心环节:
-
洗盘信号识别通过
X_7判断价格回落到相对低位(5 日 EMA 偏离最低价的比例下穿 10),标记为 “洗盘”,输出 “准备” 信号,对应可视化的淡红色竖线和 “洗盘结束” 文字标注。 -
买入条件筛选仅在洗盘信号出现后的 1-5 天内,满足以下条件时触发最终买入信号:
-
当日收阳线且收盘价突破洗盘日的 K 线实体最高价(突破关键阻力); -
5/10/20 日均线仍呈空头排列(确保是下跌趋势中的短线机会,而非反转); -
条件仅触发 1 次(避免重复信号)。 -
信号可视化输出
-
洗盘结束:淡绿色竖线 +“准备” 文字,标记价格从低位回升; -
准备:淡红色竖线 +“洗盘结束” 文字,标记洗盘信号出现; -
开干:红色竖线 +“坚决干” 文字,标记最终买入点(核心信号)。
关键点
-
公式的适用场景是下跌趋势(均线空头排列) 中的短线抄底,而非上升趋势中的追涨; -
核心触发逻辑是 “洗盘后 1-5 天内阳线突破洗盘日实体高点”,属于典型的 “低位企稳突破” 策略; -
信号通过不同颜色的竖线 + 文字标注直观展示,便于盘中快速识别买入时机。
{==均线离散度计算(判断均线粘合/发散)== }
{计算5、10、20日均线中的最大值,代表短期均线组的上沿}
X_1:=MAX(MA(CLOSE,5),MAX(MA(CLOSE,10),MA(CLOSE,20)));
{计算5、10、20日均线中的最小值,代表短期均线组的下沿}
X_2:=MIN(MA(CLOSE,5),MIN(MA(CLOSE,10),MA(CLOSE,20)));
{计算均线组整体离散度:(最大值/最小值 – 1)*100,数值越大说明均线越发散}
X_3:=(X_1/X_2-1)*100;
{计算5、10日均线的离散度:(最大值/最小值 – 1)*100,聚焦短期均线}
X_4:=(MAX(MA(CLOSE,5),MA(CLOSE,10))/MIN(MA(CLOSE,5),MA(CLOSE,10))-1)*100;
{计算10、20日均线的离散度:(最大值/最小值 – 1)*100,聚焦中期均线}
X_5:=(MAX(MA(CLOSE,10),MA(CLOSE,20))/MIN(MA(CLOSE,10),MA(CLOSE,20))-1)*100;
{== 价格相对低位判断== }
{计算5日EMA收盘价相对当日最低价的涨幅比例:(EMA5-最低价)/最低价*100,反映价格偏离近期低位的程度}
X_6:=(EMA(CLOSE,5)-LOW)/LOW*100;
{判断洗盘信号:X_6下穿10(即价格回落到相对低位),产生“准备”信号}
X_7:=CROSS(10,X_6);
{计算距离最近一次X_7(洗盘信号)的K线根数,即洗盘信号出现后的天数}
X_8:=BARSLAST(X_7);
{引用洗盘信号出现当日的最高价}
X_9:=REF(HIGH,X_8);
{引用洗盘信号出现当日的K线实体最高价(收盘价和开盘价中的最大值)}
X_10:=REF(MAX(CLOSE,OPEN),X_8);
{引用洗盘信号出现当日的K线实体最低价(收盘价和开盘价中的最小值)}
X_11:=REF(MIN(CLOSE,OPEN),X_8);
{引用洗盘信号出现当日的最低价}
X_12:=REF(LOW,X_8);
{判断洗盘信号出现后1-5天内(包含1和5天),即短期窗口期}
X_13:=BETWEEN(X_8,1,5);
{== 买入条件组合 ==}
{核心买入前置条件:
1. X_13:洗盘信号出现在1-5天内;
2. CLOSE>OPEN:当日收阳线;
3. CLOSE>X_10:收盘价突破洗盘信号日的K线实体最高价;
4. MA5<MA10 且 MA10<MA20:5、10、20日均线呈空头排列(下跌趋势中);
5. NOT(CROSS(MA20,MA10)):排除20日均线上穿10日均线的情况(避免趋势反转干扰);
公众号:股市客栈 | 股票教程网 WWW.91GOO.COM
}
X_14:=X_13 AND CLOSE>OPEN AND CLOSE>X_10 AND MA(CLOSE,5)<MA(CLOSE,10) AND MA(CLOSE,10)<MA(CLOSE,20) AND NOT(CROSS(MA(CLOSE,20),MA(CLOSE,10)));
{最终买入条件:
1. X_14:满足上述前置条件;
2. COUNT(X_14,X_8)=1:在洗盘信号后的X_8天内,X_14条件仅出现1次(避免重复信号);
}
X_15:=X_14 AND COUNT(X_14,X_8)=1;
{==成交量辅助(未直接使用,预留)== }
{成交量分解计算:VOL/((最高价-最低价)*2 – |收盘价-开盘价|),用于后续量能分析(公式中未实际应用)}
X_16:=VOL/((HIGH-LOW)*2-ABS(CLOSE-OPEN));
{== 信号输出与可视化 ==}
{洗盘结束信号:过滤X_6≥10的信号,仅在X_6从低于10回升到≥10时触发,不显示数值(NODRAW),淡绿色}
洗盘结束:FILTERX(X_6>=10,BARSLAST(X_6>=10=0)),NODRAW,COLORLIGREEN;
{在洗盘结束信号位置绘制淡绿色竖线(位置0到0.328,宽度-1表示满柱,0表示实心)}
STICKLINE(洗盘结束,0,0.328,(-1),0),COLORLIGREEN;
{准备信号:输出X_7(洗盘信号),不显示数值,淡红色}
准备:X_7,NODRAW,COLORLIRED;
{在准备信号位置绘制淡红色竖线(位置0到0.618)}
STICKLINE(X_7,0,0.618,(-1),0),COLORLIRED;
{开干信号:输出X_15(最终买入条件),不显示数值,红色}
开干:X_15,NODRAW,COLORRED;
{在开干信号位置绘制红色竖线(位置0到1)}
STICKLINE(X_15,0,1,(-1),0),COLORRED;
{== 文字标注 ==}
{在洗盘结束信号位置(0.3高度)标注白色“准备”文字}
DRAWTEXT(洗盘结束,0.3,’准备’),COLORWHITE;
{在准备信号位置(0.5高度)标注白色“洗盘结束”文字}
DRAWTEXT(X_7,0.5,’洗盘结束’),COLORWHITE;
{在开干信号位置(0.8高度)标注白色“坚决干”文字}
DRAWTEXT(X_15,0.8,’坚决干’),COLORWHITE;
通达信源码导入方法
一、导入前的准备
-
确保你的副图指标源代码是完整的、无语法错误的文本格式(通常是 .txt或直接复制的纯文本)。 -
打开通达信软件(电脑版,手机版操作逻辑类似但界面略有差异)。
二、详细导入步骤
步骤 1:进入公式管理器
-
方法 1(快捷键):打开通达信后,直接按键盘上的 Ctrl + F,快速调出【公式管理器】窗口(最推荐,效率最高)。 -
方法 2(菜单操作):点击软件顶部菜单栏的【公式】→【公式管理器】。
步骤 2:新建副图指标
-
在【公式管理器】左侧列表中,找到并点击【技术指标公式】→【副图】(一定要选 “副图”,选成 “主图” 会显示在 K 线主图上)。 -
点击右侧的【新建】按钮,进入公式编辑界面。
步骤 3:粘贴 / 输入源代码
-
在编辑界面中: -
【公式名称】:必填,给指标起一个简洁好记的名字(比如 “量能副图”“MACD 增强”),不能有特殊字符。 -
【公式描述】:选填,可简单说明指标用途(比如 “自定义成交量副图”)。 -
【参数】:如果源代码中有参数(比如 N:1 100 20),会自动识别,无需手动改,保持默认即可。 -
【公式编辑区】:清空原有默认内容,将你准备好的副图源代码完整粘贴进去(或手动输入)。 -
检查:粘贴后确认代码无遗漏、无多余空格 / 换行(尤其是开头和结尾),避免语法错误。
步骤 4:测试并保存
-
点击编辑界面右上角的【测试公式】按钮,如果代码无误,会弹出 “测试通过!” 的提示;如果报错,根据提示修改代码(常见错误:缺少分号、参数格式错误、函数拼写错误)。 -
测试通过后,点击【确定】按钮,完成指标的保存。
步骤 5:调出副图指标
-
回到通达信行情界面,打开任意股票的 K 线图。 -
在副图区域(K 线图下方的小窗口)右键点击 → 【副图指标】→ 【选择副图指标】。 -
在弹出的列表中找到你刚新建的指标名称,点击选中,副图区域就会显示该指标。 -
快捷操作:在副图区域直接输入指标名称的首字母(比如 “量能副图” 输 “LNFT”),按回车即可调出。
三、常见问题解决
-
测试公式报错: -
检查源代码是否完整(比如复制时漏了最后几行)。 -
确认指标中使用的函数是通达信支持的(部分小众函数或自定义函数可能不兼容)。 -
检查参数格式(比如 N:1 100 20 中,数字之间是空格,不是逗号)。 -
导入后副图不显示: -
确认导入时选的是 “副图” 而非 “主图”“条件选股” 等分类。 -
检查股票数据是否完整(比如新股可能无足够数据,指标无法计算)。
总结
-
导入核心步骤:打开公式管理器 → 新建副图指标 → 粘贴源代码 → 测试保存 → 调出使用。 -
关键注意点:必须选择 “副图” 分类,源代码要完整无语法错误,测试通过后再保存。 -
快捷技巧:用 Ctrl+F打开公式管理器,副图区域输入指标首字母快速调出。
夜雨聆风
