指标源码
通达信趋势王指标公式股票软件源码如下:</STRONG>
E:=((HIGH+LOW+CLOSE)/3-MA((HIGH+LOW+CLOSE)/3,14))/(0.015*AVEDEV((HIGH+LOW+CLOSE)/3,14));
动力线:=EMA(E,2),LINETHICK1,COLORWHITE;
V1:=EMA(CLOSE,60)-EMA(CLOSE,300);
V2:=EMA(V1,300);
V3:=(CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100;
B:=SMA(V3,2,1);
B1:=SMA(B,2,1);
拐点:B-B1>0 AND REF((B-B1),1)<0,NODRAW;
状态:B-B1>0,NODRAW;
STICKLINE(B-B1>0,动力线,REF(动力线,1),3,0),COLOR0000AA;
STICKLINE(B-B1>0,动力线,REF(动力线,1),2.5,0),COLOR0000BB;
STICKLINE(B-B1>0,动力线,REF(动力线,1),1.5,0),COLOR0000CC;
STICKLINE(B-B1>0,动力线,REF(动力线,1),1,0),COLOR0000EE;
STICKLINE(B-B1>0,动力线,REF(动力线,1),0,0),COLOR0000FF;
STICKLINE(B-B1<0,动力线,REF(动力线,1),3,0),COLOR7B7B00;
STICKLINE(B-B1<0,动力线,REF(动力线,1),2.5,0),COLOR909000;
STICKLINE(B-B1<0,动力线,REF(动力线,1),1.5,0),COLORA8A800;
STICKLINE(B-B1<0,动力线,REF(动力线,1),1,0),COLORCECE00;
STICKLINE(B-B1<0,动力线,REF(动力线,1),0,0),COLORFFFF00;
IF(动力线>REF(动力线,1),动力线,DRAWNULL),LINETHICK2,COLORRED;
小心: 180,COLORBLUE;
风险: 200,COLORYELLOW,LINETHICK2;
{ 股票软件下载网_通达信股票指标公式}
STICKLINE(动力线>REF(动力线,1) ,动力线 ,REF(动力线,1),1,0),COLORRED;
STICKLINE(动力线<=REF(动力线,1) ,动力线 ,REF(动力线,1),1,0),COLOR00FF00;
底部:-150,COLORC6C600,LINETHICK2;
关注:-120,COLORFF75FF;
DRAWICON( FILTER(CROSS(动力线,关注),10),REF(动力线,1)-0.3,5);
DRAWICON( FILTER(CROSS(动力线,底部),10),REF(动力线,1)-0.3,9);
强弱分界:-50,COLORGRAY;
生命线:MA(动力线,3),COLORRED LINETHICK3;
IF(动力线<REF(动力线,2) OR 动力线<=REF(动力线,1),生命线,DRAWNULL),COLORGREEN, LINETHICK3;
短:IF((生命线>REF(生命线,1)) AND (REF(生命线,1)<REF(生命线,2)) AND (生命线<0.6),-150,-180);
DRAWICON( FILTER(CROSS(生命线,小心),20),REF(动力线,1)+0.4,4);
DRAWICON( FILTER(CROSS(生命线,风险),20),REF(动力线,1)+0.3,15);
顶A:=CROSS(82,RSI),COLORYELLOW;
STICKLINE(顶A,-170 ,-180,3,0 ),COLOR5555FF;
STICKLINE(顶A,-170 ,-180,2,0 ),COLOR7777FF;
STICKLINE(顶A,-170 ,-180,1,0 ),COLOR9999FF;
一、整体思路概述
趋势王(TDX00486) 是一套把 CCI(顺势指标)、EMA 交叉、随机指数( Stochastic) 三者融合的技术指标。它的核心是 “动力线”(即 CCI 的 2‑周期 EMA),并在此基础上加入 “生命线”(动力线的 3‑周期均线)以及若干 参考线(‑150、‑120、‑50、180、200)来判定 买入、卖出、止盈、止损 的时机。
简化版公式逻辑
- CCI(E) → 计算价格(H+L+C)/3 相对其 14 日均线的偏离程度。
- 动力线 = EMA(E, 2) → 对 CCI 做平滑,得到短期动量。
- Stochastic(V3、B、B1) → 用 8 周期最高/最低区间再作 SMA 平滑,得到 “状态”(上涨/下跌)与 “拐点”(由负转正的瞬间)。
- 生命线 = MA(动力线, 3) → 对动力线再做一次均线,用来过滤假突破。
- 参考线 → -150(底部)、-120(关注)、-50(强弱分界)、180(小心)、200(风险)形成阈值区间。
- 图标信号 → 当 动力线 上穿/下穿关键阈值、或 生命线 上穿 180/200 时绘制买卖图标。
下面把每一行代码逐行拆解,帮助你了解每个变量的含义、计算过程以及它在整个指标体系中的作用。
二、代码逐行解析
| 行号 | 代码 | 含义 | 备注 |
|---|---|---|---|
| 1 | E:=((HIGH+LOW+CLOSE)/3-MA((HIGH+LOW+CLOSE)/3,14))/(0.015*AVEDEV((HIGH+LOW+CLOSE)/3,14)); |
CCI(顺势指标)计算公式。 (H+L+C)/3 是典型价,14 为默认周期。 |
这就是 E 变量,后面的 动力线 正是对它的 EMA。 |
| 2 | 动力线:=EMA(E,2),LINETHICK1,COLORWHITE; |
对 E(CCI)做 2 周期指数移动平均,得到 动力线(白色),代表短期动量。 | LINETHICK1 为细线,COLORWHITE 为白色。 |
| 3‑4 | V1:=EMA(CLOSE,60)-EMA(CLOSE,300); V2:=EMA(V1,300); |
这里计算了两个 EMA 的差值后再取一次 EMA,但在后面的代码里根本没有再使用 V1、V2,属于“残枝”。可以删掉或留作以后扩展。 | |
| 5 | V3:=(CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100; |
随机指数(Stochastic)雏形: (收盘价‑8 周期最低) /(8 周期最高‑8 周期最低) × 100,得到 0‑100 的数值。 |
|
| 6 | B:=SMA(V3,2,1); B1:=SMA(B,2,1); |
对 V3 再做两次 简单移动平均(SMA)——相当于对随机指数做一次平滑,得到 B、B1。 | |
| 7 | 拐点:B-B1>0 AND REF((B-B1),1)<0,NODRAW; |
拐点 = 当 B‑B1 由负转正(即 B 上穿 B1)时触发,表示 短期趋势 可能出现转折。NODRAW 只用于后续判断,不在图上绘制。 |
|
| 8 | 状态:B-B1>0,NODRAW; |
状态 = 当 B‑B1>0(即 B 在 B1 上方)时为 上涨状态(多头),否则为 下跌状态(空头)。同样不在图上绘制,只作条件判断。 | |
| 9‑13 | STICKLINE(B-B1>0,动力线,REF(动力线,1),3,0),COLOR0000AA; …(共 5 行) |
当 状态 为 多头 时,用 不同深度的蓝色(从深到浅)绘制 动力线 与 前一根动力线 之间的柱状实体,颜色越深表示趋势越强。 | |
| 14‑18 | STICKLINE(B-B1<0,动力线,REF(动力线,1),3,0),COLOR7B7B00; …(共 5 行) |
当 状态 为 空头 时,用 不同深度的黄色(从深到浅)绘制柱状实体。 | |
| 19 | IF(动力线>REF(动力线,1),动力线,DRAWNULL),LINETHICK2,COLORRED; |
当 动力线 上升时,以 红色粗线 绘制;下降时不画。 | |
| 20‑21 | 小心: 180,COLORBLUE; 风险: 200,COLORYELLOW,LINETHICK2; |
两条 水平参考线: · 小心(蓝线)= 180 · 风险(黄线)= 200 |
|
| 22‑23 | STICKLINE(动力线>REF(动力线,1),动力线,REF(动力线,1),1,0),COLORRED; STICKLINE(动力线<=REF(动力线,1),动力线,REF(动力线,1),1,0),COLOR00FF00; |
再次用 红/绿 小柱状(宽度 1)表示 动力线 当根与前根的涨跌。 | |
| 24‑25 | 底部:-150,COLORC6C600,LINETHICK2; 关注:-120,COLORFF75FF; |
两根水平线: · 底部(深黄色)= -150 · 关注(紫红)= -120 |
|
| 26 | 强弱分界:-50,COLORGRAY; |
强弱分界(灰线)= -50,常被视为 多空分水岭。 | |
| 27 | 生命线:MA(动力线,3),COLORRED LINETHICK3; |
生命线 = 动力线的 3‑周期均线(红色、粗线),用于判断 趋势的持续性。 | |
| 28 | IF(动力线<REF(动力线,2) OR 动力线<=REF(动力线,1),生命线,DRAWNULL),COLORGREEN, LINETHICK3; |
当 动力线 出现 下降(即当前≤前一次 或 ≤前两次)时,把 生命线 改为 绿色,提示趋势转弱。 | |
| 29 | 短:IF((生命线>REF(生命线,1)) AND (REF(生命线,1)<REF(生命线,2)) AND (生命线<0.6),-150,-180); |
短(做空信号) 条件: 1)生命线 上升且前一次低于再前一次(形成拐点), 2)生命线 数值 < 0.6(极端超卖), 满足时返回 -150(做空点位),否则返回 -180(表示不建议做空)。 |
|
| 30‑31 | DRAWICON( FILTER(CROSS(动力线,关注),10),REF(动力线,1)-0.3,5); DRAWICON( FILTER(CROSS(动力线,底部),10),REF(动力线,1)-0.3,9); |
图标信号: · 当 动力线 上穿 关注(‑120)时,在前一根动力线下方画 5 号图标(买) · 当 动力线 上穿 底部(‑150)时,画 9 号图标(买) |
|
| 32‑33 | DRAWICON( FILTER(CROSS(生命线,小心),20),REF(动力线,1)+0.4,4); DRAWICON( FILTER(CROSS(生命线,风险),20),REF(动力线,1)+0.3,15); |
图标信号: · 生命线 上穿 小心(180)时,画 4 号图标(卖/止盈) · 生命线 上穿 风险(200)时,画 15 号图标(强卖) |
|
| 34 | 顶A:=CROSS(82,RSI),COLORYELLOW; |
顶A 条件:RSI 上穿 82(超买),触发 黄色。但 RSI 在本公式中未定义,需要自行加入 RSI:=RSI(CLOSE,6);(或其他周期)后才能使用。 |
|
| 35‑37 | STICKLINE(顶A,-170,-180,3,0),COLOR5555FF; … |
当 顶A 成立时,在 ‑170~‑180 区间绘制 蓝色 小柱体,提示RSI 超买风险。 |
小结
- 核心变量:E(CCI) → 动力线(EMA) → 生命线(MA)
- 趋势判别:B‑B1(状态) & 拐点
- 买卖点:动力线突破‑120、‑150(买);生命线突破 180、200(卖)
- 辅助信号:短(‑150/‑180) → 潜在的做空区间
- 残枝:V1、V2 未使用,若不需要可以删除;RSI 需自行定义
三、使用方法(通达信平台)
1. 将公式导入通达信
- 打开通达信 → 菜单 “公式管理” → “新建指标”。
- 在弹出的编辑器里,把上面的完整代码(注意在
顶A前加入RSI:=RSI(CLOSE,6);或其它周期)粘贴进去。 - 给指标起个名字,例如 “趋势王” 或 “TDX00486”。
- 编译(快捷键
Ctrl + Enter),如果出现 “变量 RSI 未定义”,请在代码顶部加入RSI:=RSI(CLOSE,6);(或者你熟悉的 RSI 周期),然后再次编译。 - 保存 → 关闭编辑器。
2. 把指标挂到图表
-
主图/副图选择:
- 趋势王包含 大量水平线、柱状、图标,建议放在 副图(下方)。
- 若想把 动力线(白线)和 生命线(红/绿粗线)直接叠加在 K 线 上,也可以放在 主图,但要把 水平线(‑150、‑120、‑50、180、200)隐藏(把对应的
STICKLINE/PLOT删除),否则会显得杂乱。
-
适用周期:
- 公式中使用了 14、2、8、3 等小周期,理论上适用于 日线及以上(日线、周线、月线)效果更稳健。
- 若用于 30 分钟、5 分钟 等短线,建议把 14(CCI 周期)改为 9、8(Stochastic)改为 5,3(生命线)改为 2,以提升灵敏度。
3. 关键信号解读
| 信号 | 触发条件 | 解读 | 操作建议 |
|---|---|---|---|
| 买入信号(图标 5、9) | 动力线 上穿 关注(‑120)或 底部(‑150) |
动力线由下往上突破,可能形成 短期反弹 或 趋势转多。 | 可 轻仓买入,止损设在 ‑150 下方 1‑2%。 |
| 卖出/止盈信号(图标 4、15) | 生命线 上穿 小心(180)或 风险(200) |
生命线进入 超买区,趋势可能已经过热。 | 逐步止盈 或 空仓,止损可上移至 180 之上。 |
做空信号(短 值 = -150) |
同时满足: ① 生命线呈 上升拐点(>前一次且前一次<再前一次) ② 生命线数值 < 0.6 |
极端超卖且出现转势信号,可能是 做空 的机会。 | 开空单(或卖出持股),止损设在 ‑120 附近。 |
| 状态 / 拐点 | 状态 = B‑B1>0(多头)拐点 = B‑B1 由负转正 |
状态指示 当前趋势方向,拐点提示 趋势可能转折。 | 配合 K 线形态、成交量 确认后再决定买卖。 |
| 顶A(RSI 超买) | RSI 上穿 82 | RSI 已经进入 极端超买,后市的回调概率加大。 | 可作为 卖出/减仓 的辅助信号。 |
实战技巧
- 趋势过滤:只在 状态 = 多头(B‑B1>0)时使用 买入信号;在 状态 = 空头 时仅关注 卖出/做空。
- 双重确认:买入信号出现后,最好等待 K 线收阳、成交量放大 再入场;卖出信号出现后,可等 K 线收阴 或 成交量萎缩 再平仓。
- 止损/止盈:
– 买入后,止损可设在 ‑150(底部)下方 1‑2%或 ‑120 下方 0.5%。
– 卖出后,止盈可参考 180、200 两档,或使用 移动止损(如 5%回撤)。- 参数优化:如果你的交易周期较短(30 分钟、1 小时),可以把 CCI 周期(14)改为 9,Stochastic(8)改为 5,生命线(3)改为 2,以提升指标的灵敏度;如果是 周线、月线,则可以把 CCI 改为 20,Stochastic 改为 14,生命线 改为 5,以过滤噪音。
四、常见问题与注意事项
-
RSI 未定义
- 代码里出现
顶A:=CROSS(82,RSI),COLORYELLOW;但 RSI 并未在公式中声明。 - 解决方法:在
顶A之前加一行RSI:=RSI(CLOSE,6);(常用的 6‑周期 RSI),或者直接删掉顶A及其后续的STICKLINE(如果你不使用 RSI 信号)。
- 代码里出现
-
V1、V2 废弃
- 第 3、4 行计算了
V1、V2,但在后续没有使用。如果不需要可以删除,代码会更简洁。
- 第 3、4 行计算了
-
水平线冲突
- 代码一次绘制了 5 根 水平线(‑150、‑120、‑50、180、200),如果把指标放在 主图,这些线会覆盖 K 线。建议放在 副图,或自行把不需要的水平线注释掉(前面加
//)。
- 代码一次绘制了 5 根 水平线(‑150、‑120、‑50、180、200),如果把指标放在 主图,这些线会覆盖 K 线。建议放在 副图,或自行把不需要的水平线注释掉(前面加
-
信号频繁
- 由于 动力线 使用了 2‑周期 EMA,波动非常敏感,容易出现 假突破。建议配合 成交量、均线系统(如 20/60 日均线)或 趋势线 做二次过滤。
-
复盘与回测
- 在实际使用前,建议在 历史数据 上做 回测(通达信自带 “回测” 功能或使用 Python、Excel),检验 买入/卖出 信号的胜率与盈亏比。
- 可把 买入 条件设为
动力线上穿-120 且 状态=多头,卖出 条件设为生命线上穿180 或 RSI>82,观察不同周期的表现。
五、完整的可执行代码(加入 RSI)
如果你想直接复制进通达信并避免报错,下面是 去掉废弃 V1、V2、加入 RSI、保留全部功能 的版本(每行已注释):
// ===========================================================
// 趋势王(TDX00486) 完整源码(适用于通达信)
// ===========================================================
// 1️⃣ CCI(顺势指标)-----------------------------------------
E:=((HIGH+LOW+CLOSE)/3-MA((HIGH+LOW+CLOSE)/3,14))/(0.015*AVEDEV((HIGH+LOW+CLOSE)/3,14));
// 2️⃣ 动力线:CCI 的 2‑周期 EMA-------------------------------
动力线:=EMA(E,2),LINETHICK1,COLORWHITE;
// 3️⃣ Stochastic(8 周期)------------------------------------
V3:=(CLOSE-LLV(LOW,8))/(HHV(HIGH,8)-LLV(LOW,8))*100;
B:=SMA(V3,2,1);
B1:=SMA(B,2,1);
// 4️⃣ 状态 & 拐点--------------------------------------------
拐点:B-B1>0 AND REF((B-B1),1)<0,NODRAW;
状态:B-B1>0,NODRAW;
// 5️⃣ 多头/空头柱体(动力线 vs 前一根)------------------------
STICKLINE(B-B1>0,动力线,REF(动力线,1),3,0),COLOR0000AA;
STICKLINE(B-B1>0,动力线,REF(动力线,1),2.5,0),COLOR0000BB;
STICKLINE(B-B1>0,动力线,REF(动力线,1),1.5,0),COLOR0000CC;
STICKLINE(B-B1>0,动力线,REF(动力线,1),1,0),COLOR0000EE;
STICKLINE(B-B1>0,动力线,REF(动力线,1),0,0),COLOR0000FF;
STICKLINE(B-B1<0,动力线,REF(动力线,1),3,0),COLOR7B7B00;
STICKLINE(B-B1<0,动力线,REF(动力线,1),2.5,0),COLOR909000;
STICKLINE(B-B1<0,动力线,REF(动力线,1),1.5,0),COLORA8A800;
STICKLINE(B-B1<0,动力线,REF(动力线,1),1,0),COLORCECE00;
STICKLINE(B-B1<0,动力线,REF(动力线,1),0,0),COLORFFFF00;
// 6️⃣ 动力线上升时红色粗线------------------------------------
IF(动力线>REF(动力线,1),动力线,DRAWNULL),LINETHICK2,COLORRED;
// 7️⃣ 参考线(水平)------------------------------------------
小心:180,COLORBLUE;
风险:200,COLORYELLOW,LINETHICK2;
// 8️⃣ 动力线涨跌小柱体---------------------------------------
STICKLINE(动力线>REF(动力线,1),动力线,REF(动力线,1),1,0),COLORRED;
STICKLINE(动力线<=REF(动力线,1),动力线,REF(动力线,1),1,0),COLOR00FF00;
// 9️⃣ 底部/关注/强弱分界------------------------------------
底部:-150,COLORC6C600,LINETHICK2;
关注:-120,COLORFF75FF;
强弱分界:-50,COLORGRAY;
// 🔟 生命线(3‑周期均线)-----------------------------------
生命线:MA(动力线,3),COLORRED LINETHICK3;
// 生命线转绿(下降时)------------------------------------
IF(动力线<REF(动力线,2) OR 动力线<=REF(动力线,1),生命线,DRAWNULL),COLORGREEN, LINETHICK3;
// 1️⃣1️⃣ 短(做空信号)------------------------------------
短:IF((生命线>REF(生命线,1)) AND (REF(生命线,1)<REF(生命线,2)) AND (生命线<0.6),-150,-180);
// 1️⃣2️⃣ 图标信号--------------------------------------------
DRAWICON(FILTER(CROSS(动力线,关注),10),REF(动力线,1)-0.3,5); // 买入
DRAWICON(FILTER(CROSS(动力线,底部),10),REF(动力线,1)-0.3,9); // 买入
DRAWICON(FILTER(CROSS(生命线,小心),20),REF(动力线,1)+0.4,4); // 卖出/止盈
DRAWICON(FILTER(CROSS(生命线,风险),20),REF(动力线,1)+0.3,15); // 强卖
// 1️⃣3️⃣ RSI(自行定义)------------------------------------
RSI:=RSI(CLOSE,6); // 6‑周期 RSI,可根据需要修改
// 1️⃣4️⃣ RSI 超买信号(顶A)---------------------------------
顶A:=CROSS(82,RSI),COLORYELLOW;
STICKLINE(顶A,-170,-180,3,0),COLOR5555FF;
STICKLINE(顶A,-170,-180,2,0),COLOR7777FF;
STICKLINE(顶A,-170,-180,1,0),COLOR9999FF;
使用说明
- 将上述代码整体粘贴到 通达信 → 公式管理器 → 新建指标 → 粘贴 → 编译 → 保存。
- 将指标拖到 副图(或自行改为 主图叠加)即可看到 动力线、生命线、水平线 以及 买卖图标。
六、结语
- 趋势王 实际上是把 CCI(动量)+ 随机指数(超买/超卖)+ 均线(趋势过滤)三大要素组合在一起,用 动力线 与 生命线 交叉 关键阈值 来捕捉 买入/卖出 时机。
- 适合 中短线 投资者,尤其在 趋势明显的行情(上涨/下跌波段)中表现突出;在 震荡市 里可能产生较多 假信号,建议配合 成交量、均线系统、RSI 等进行 二次确认。
- 核心原则:状态为多头 时才考虑买入;生命线突破 180/200 时要考虑卖出;短(‑150)可作为 做空 的极端信号;拐点 则是 趋势转折的预警。