程序化指标量能+MACD底背+RSI顶背离指标公式源码
发布日期: 2025-07-19 | 阅读量:28
{【程序化指标量能+MACD底背+RSI顶背离】趋势与动能共振系统}
{ RSI计算基础 }
LC := REF(CLOSE, 1);
{ RSI1:6周期相对强弱指标 }
RSI6 := SMA(MAX(CLOSE - LC, 0), 6, 1) / SMA(ABS(CLOSE - LC), 6, 1) * 100;
{ 卖点信号:RSI上穿85 }
卖点 := CROSS(85, RSI6) * 30, COLOR00FF00, LINETHICK2;
{ 卖出信号图标 }
卖 := IF(卖点, 6.5, 0), STICK, COLORGREEN, LINETHICK4;
{ 程序化指标A:32周期资金流动指标 }
程序化指标A := (CLOSE - LLV(LOW, 32)) / (HHV(HIGH, 32) - LLV(LOW, 32)) * 1.2 * CLOSE;
{ 量能三线:3、5、7周期EMA }
量1 := EMA(程序化指标A, 3);
量2 := EMA(程序化指标A, 5);
量3 := EMA(程序化指标A, 7);
{ 量能柱状图:红涨绿跌 }
STICKLINE(量1 > 量2, 量3, 量1, 3, 1), COLORRED;
STICKLINE(量1 < 量2, 量3, 量1, 2, 0), COLORCYAN;
{ 量能变化信号:黄线与紫线 }
T1 := 量2 > 量3 AND 量1 < REF(量1, 1);
T2 := 量2 < 量3 AND 量1 > REF(量1, 1);
STICKLINE(T1, 量1, 量3, 2, 0), COLORYELLOW;
STICKLINE(T2, 量1, 量3, 3, 1), COLORFF00FF;
{ 程序化指标B:程序化指标A的SMA(13) }
程序化指标B := SMA(程序化指标A, 13, 1);
{ 分水岭:程序化指标B的EMA(2.5,1.5) }
分水岭 := SMA(程序化指标B, 2.5, 1.5), LINETHICK2, COLORWHITE;
{ 牛线:程序化指标B与分水岭组合 }
牛线 := 3 * 程序化指标B - 2 * 分水岭, LINETHICK2, COLORFF00FF;
{ 熊线:分水岭与程序化指标B组合 }
熊线 := 4 * 分水岭 - 3 * 程序化指标B, LINETHICK2, COLORFF6633;
{ MACD计算 }
DIF1 := EMA(C, 12) - EMA(C, 26);
DEA1 := EMA(DIF1, 9);
MACD1 := 2 * (DIF1 - DEA1);
{ 最近一次MACD金叉位置 }
QZQ := BARSLAST(REF(MACD1, 1) < 0 AND MACD1 > 0);
{ 最近一次MACD底位 }
QM := LLVBARS(MACD1, QZQ + 20);
MQDZ := IF(QM > QZQ, REF(MACD1, QM), 0);
{ 最近一次DIF底位 }
QF := LLVBARS(DIF1, QZQ + 20);
DQDZ := IF(QF > QZQ, REF(DIF1, QF), 0);
{ 底背离信号条件 }
XG1 := MACD1 < 0 AND MACD1 > MQDZ AND DIF1 < 0 AND DIF1 > DQDZ AND C = LLV(C, QZQ + 20) AND MQDZ < 0 AND DQDZ < 0;
{ 底背离信号触发 }
XG := REF(XG1, 1) = 1 AND MACD1 > REF(MACD1, 1);
{ VAR21A:前一日高低均价 }
VAR21A := (REF(HIGH, 1) + REF(LOW, 1)) / 2;
{ VAR61:前一日收盘价 }
VAR61 := REF(CLOSE, 1);
{ VAR70A:6周期RSI变形 }
VAR70A := SMA(MAX(CLOSE - VAR61, 0), 6, 1) / SMA(ABS(CLOSE - VAR61), 6, 1) * 100;
{ RSI顶背离卖出信号 }
DRAWICON(CROSS(90, VAR70A), H * 0.8, 9);
{ MTM1:动量指标 }
MTM1 := C - REF(C, 1);
{ A013:34周期最高价 }
A013 := HHV(HIGH, 34);
{ A014:均价 }
A014 := (2 * CLOSE + HIGH + LOW) / 4;
{ A015:34周期最低价 }
A015 := LLV(LOW, 34);
{ A016:价格位置指标 }
A016 := EMA(((A014 - A015) / (A013 - A015)) * 100, 13);
{ A017:A016的平滑 }
A017 := EMA(0.667 * REF(A016, 1) + 0.333 * A016, 2);
{ 短线买点信号 }
KKMD := A016 - A017 > 1 AND A016 < 30 AND A017 < 30;
{ 短买信号提示 }
DRAWTEXT(FILTER(KKMD, 30),量2, '▲短买'), COLOR00FFFF;
{ RSI计算基础 }
LC := REF(CLOSE, 1);
{ RSI1:6周期相对强弱指标 }
RSI6 := SMA(MAX(CLOSE - LC, 0), 6, 1) / SMA(ABS(CLOSE - LC), 6, 1) * 100;
{ 卖点信号:RSI上穿85 }
卖点 := CROSS(85, RSI6) * 30, COLOR00FF00, LINETHICK2;
{ 卖出信号图标 }
卖 := IF(卖点, 6.5, 0), STICK, COLORGREEN, LINETHICK4;
{ 程序化指标A:32周期资金流动指标 }
程序化指标A := (CLOSE - LLV(LOW, 32)) / (HHV(HIGH, 32) - LLV(LOW, 32)) * 1.2 * CLOSE;
{ 量能三线:3、5、7周期EMA }
量1 := EMA(程序化指标A, 3);
量2 := EMA(程序化指标A, 5);
量3 := EMA(程序化指标A, 7);
{ 量能柱状图:红涨绿跌 }
STICKLINE(量1 > 量2, 量3, 量1, 3, 1), COLORRED;
STICKLINE(量1 < 量2, 量3, 量1, 2, 0), COLORCYAN;
{ 量能变化信号:黄线与紫线 }
T1 := 量2 > 量3 AND 量1 < REF(量1, 1);
T2 := 量2 < 量3 AND 量1 > REF(量1, 1);
STICKLINE(T1, 量1, 量3, 2, 0), COLORYELLOW;
STICKLINE(T2, 量1, 量3, 3, 1), COLORFF00FF;
{ 程序化指标B:程序化指标A的SMA(13) }
程序化指标B := SMA(程序化指标A, 13, 1);
{ 分水岭:程序化指标B的EMA(2.5,1.5) }
分水岭 := SMA(程序化指标B, 2.5, 1.5), LINETHICK2, COLORWHITE;
{ 牛线:程序化指标B与分水岭组合 }
牛线 := 3 * 程序化指标B - 2 * 分水岭, LINETHICK2, COLORFF00FF;
{ 熊线:分水岭与程序化指标B组合 }
熊线 := 4 * 分水岭 - 3 * 程序化指标B, LINETHICK2, COLORFF6633;
{ MACD计算 }
DIF1 := EMA(C, 12) - EMA(C, 26);
DEA1 := EMA(DIF1, 9);
MACD1 := 2 * (DIF1 - DEA1);
{ 最近一次MACD金叉位置 }
QZQ := BARSLAST(REF(MACD1, 1) < 0 AND MACD1 > 0);
{ 最近一次MACD底位 }
QM := LLVBARS(MACD1, QZQ + 20);
MQDZ := IF(QM > QZQ, REF(MACD1, QM), 0);
{ 最近一次DIF底位 }
QF := LLVBARS(DIF1, QZQ + 20);
DQDZ := IF(QF > QZQ, REF(DIF1, QF), 0);
{ 底背离信号条件 }
XG1 := MACD1 < 0 AND MACD1 > MQDZ AND DIF1 < 0 AND DIF1 > DQDZ AND C = LLV(C, QZQ + 20) AND MQDZ < 0 AND DQDZ < 0;
{ 底背离信号触发 }
XG := REF(XG1, 1) = 1 AND MACD1 > REF(MACD1, 1);
{ VAR21A:前一日高低均价 }
VAR21A := (REF(HIGH, 1) + REF(LOW, 1)) / 2;
{ VAR61:前一日收盘价 }
VAR61 := REF(CLOSE, 1);
{ VAR70A:6周期RSI变形 }
VAR70A := SMA(MAX(CLOSE - VAR61, 0), 6, 1) / SMA(ABS(CLOSE - VAR61), 6, 1) * 100;
{ RSI顶背离卖出信号 }
DRAWICON(CROSS(90, VAR70A), H * 0.8, 9);
{ MTM1:动量指标 }
MTM1 := C - REF(C, 1);
{ A013:34周期最高价 }
A013 := HHV(HIGH, 34);
{ A014:均价 }
A014 := (2 * CLOSE + HIGH + LOW) / 4;
{ A015:34周期最低价 }
A015 := LLV(LOW, 34);
{ A016:价格位置指标 }
A016 := EMA(((A014 - A015) / (A013 - A015)) * 100, 13);
{ A017:A016的平滑 }
A017 := EMA(0.667 * REF(A016, 1) + 0.333 * A016, 2);
{ 短线买点信号 }
KKMD := A016 - A017 > 1 AND A016 < 30 AND A017 < 30;
{ 短买信号提示 }
DRAWTEXT(FILTER(KKMD, 30),量2, '▲短买'), COLOR00FFFF;

指标公式逻辑介绍
核心指标体系
1.1 量能动力系统
32周期资金流:价格在32日通道中的位置×1.2倍收盘价
三线EMA:3/5/7日量能EMA(红涨青跌)
量能信号:
黄色柱:量2>量3且量1下降(预警)
紫色柱:量2<量3且量1上升(增强)
1.2 MACD底背系统
特殊参数:12/26/9标准MACD
底背算法:
定位最近金叉位置(QZQ)
寻找金叉前20日MACD/DIF最低点
价格新低而指标抬高触发信号(XG)
可视化:底背发生时黄色箭头标记
1.3 RSI顶背系统
6日RSI:标准计算公式
顶背识别:价格新高而RSI<90且下降
卖出信号:绿色三角图标标记
2. 智能交易信号
2.1 短线买点(青色▲)
✅ 触发条件:
价格位置(A016)位于30以下
A016-A017>1(动能增强)
量能紫色柱出现
34日内最低价附近
2.2 底背买点(无图标)
✅ 触发条件:
MACD和DIF双底背
MACD<0但高于前低
DIF<0但高于前低
价格创20日新低
2.3 顶背卖点(绿色▼)
✅ 触发条件:
RSI6下穿90
价格与RSI顶背离
绿色三角图标标记
量能黄色柱出现
3. 系统核心优势
三维共振:量能+MACD+RSI协同验证
双背识别:MACD底背+RSI顶背双预警
量价先行:3/5/7日EMA捕捉量能异动
位置过滤:30以下超卖区才触发买点
动态通道:32/34日自适应价格区间
4. 实战交易策略
4.1 趋势跟随
量能红柱+MACD金叉建仓40%
紫色量能柱加仓30%
RSI<70持有
绿色卖点信号清仓
4.2 反转交易
底背信号轻仓20%
青色短买信号确认
突破32日高点加仓
跌破底背低点止损