指标源码
DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIF,9);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
金叉共振:CROSS(DIF,DEA) AND CROSS(K,D) AND V>1.3*REF(V,1);
{好股票网指标VIP合买群分享}
RSV1:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K1:=SMA(RSV1,5,1);
D1:=SMA(K1,5,1);
J1:=3*K1-2*D1;
AA1:=EMA(J1,5);
AA2:=REF(AA1,1);
STICKLINE(AA1>AA2,AA1,AA2,1,0),COLORMAGENTA;
STICKLINE(AA1<=AA2,AA1,AA2,1,0),COLORGREEN;
RSV2:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K2:=SMA(RSV2,3,1);
D2:=SMA(K2,3,1);
J2:=3*K2-2*D2;
BB1:=EMA(J2,5);
BB2:=REF(BB1,1);
STICKLINE(BB1>BB2,BB1,BB2,2,1),COLOR0000E5;
STICKLINE(BB1<=BB2,BB1,BB2,2,1),COLOR858500;
DD:=AA1>AA2 AND BB1>BB2;
注意买入:DD AND NOT(REF(DD,1)) AND (AA1<50 OR BB1<50) ,LINETHICK0;
DRAWICON(注意买入,-5,1);
注意卖出:REF(DD,1)=1 AND NOT(DD),LINETHICK0;
DRAWICON(注意卖出,105,2);
主力线:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*
SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1),LINETHICK1,POINTDOT;
一、代码结构解析
这段代码是一个多指标共振系统,包含三个核心部分:
1. 第一部分:MACD + KDJ 金叉共振(选股条件)
DIF:=EMA(CLOSE,12)-EMA(CLOSE,26); // MACD快线(12日-26日指数移动平均)
DEA:=EMA(DIF,9); // MACD信号线(9日指数移动平均)
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; // RSV计算
K:=SMA(RSV,3,1); // K线(3日简单移动平均)
D:=SMA(K,3,1); // D线
金叉共振:CROSS(DIF,DEA) AND CROSS(K,D) AND V>1.3*REF(V,1); // 三重条件
金叉共振条件解读:
CROSS(DIF,DEA):MACD金叉(快线从下向上穿过慢线)CROSS(K,D):KDJ金叉(K线从下向上穿过D线)V>1.3*REF(V,1):量能放大,今日成交量是昨日的1.3倍以上
2. 第二部分:双J线系统(27日周期)
RSV1:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K1:=SMA(RSV1,5,1);
D1:=SMA(K1,5,1);
J1:=3*K1-2*D1;
AA1:=EMA(J1,5); // J1的5日指数移动平均
AA2:=REF(AA1,1); // 昨日的AA1
STICKLINE(AA1>AA2,AA1,AA2,1,0),COLORMAGENTA; // 上涨:紫红色
STICKLINE(AA1<=AA2,AA1,AA2,1,0),COLORGREEN; // 下跌:绿色
3. 第三部分:双J线系统(9日周期)
RSV2:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K2:=SMA(RSV2,3,1);
D2:=SMA(K2,3,1);
J2:=3*K2-2*D2;
BB1:=EMA(J2,5);
BB2:=REF(BB1,1);
STICKLINE(BB1>BB2,BB1,BB2,2,1),COLOR0000E5; // 上涨:深蓝色
STICKLINE(BB1<=BB2,BB1,BB2,2,1),COLOR858500; // 下跌:暗黄色
4. 第四部分:买卖信号系统
DD:=AA1>AA2 AND BB1>BB2; // 双重确认:两个J线同时上涨
// 注意买入信号
注意买入:DD AND NOT(REF(DD,1)) AND (AA1<50 OR BB1<50),LINETHICK0;
DRAWICON(注意买入,-5,1); // 显示买入图标(红色笑脸)
// 注意卖出信号
注意卖出:REF(DD,1)=1 AND NOT(DD),LINETHICK0;
DRAWICON(注意卖出,105,2); // 显示卖出图标(绿色哭脸)
5. 补充:主力线
主力线:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*
SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1),LINETHICK1,POINTDOT;
二、代码中的错误
发现一处明显错误:
- DD:=AA1>AA2 AND BB1>BB2; // 原代码
+ DD:=AA1>AA2 AND BB1>BB2; // 实际上BB2应该是BB1的昨日值,这里逻辑是对的
等等,我再仔细看原代码:
DD:=AA1>AA2 AND BB1>BB2;
原代码是正确的!BB1>BB2 表示今日BB1大于昨日BB2(即BB1上涨)。
三、修正后的完整代码
DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIF,9);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
金叉共振:CROSS(DIF,DEA) AND CROSS(K,D) AND V>1.3*REF(V,1);
RSV1:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K1:=SMA(RSV1,5,1);
D1:=SMA(K1,5,1);
J1:=3*K1-2*D1;
AA1:=EMA(J1,5);
AA2:=REF(AA1,1);
STICKLINE(AA1>AA2,AA1,AA2,1,0),COLORMAGENTA;
STICKLINE(AA1<=AA2,AA1,AA2,1,0),COLORGREEN;
RSV2:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K2:=SMA(RSV2,3,1);
D2:=SMA(K2,3,1);
J2:=3*K2-2*D2;
BB1:=EMA(J2,5);
BB2:=REF(BB1,1);
STICKLINE(BB1>BB2,BB1,BB2,2,1),COLOR0000E5;
STICKLINE(BB1<=BB2,BB1,BB2,2,1),COLOR858500;
DD:=AA1>AA2 AND BB1>BB2;
注意买入:DD AND NOT(REF(DD,1)) AND (AA1<50 OR BB1<50),LINETHICK0;
DRAWICON(注意买入,-5,1);
注意卖出:REF(DD,1)=1 AND NOT(DD),LINETHICK0;
DRAWICON(注意卖出,105,2);
主力线:=3*SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1)-2*
SMA(SMA((CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100,5,1),3,1),LINETHICK1,POINTDOT;
四、指标设计原理
核心思想:多周期、多指标共振
| 指标 | 周期 | 作用 |
|---|---|---|
| MACD | 12/26日 | 趋势判断 |
| KDJ | 9日 | 超买超卖 |
| 量能 | 1日 | 成交量确认 |
| AA系统 | 27日 | 中期趋势 |
| BB系统 | 9日 | 短期波动 |
五、使用方法
1. 安装步骤
- 打开通达信软件
- 依次点击:功能 → 专家系统 → 公式管理器
- 点击 新建,选择 副图指标
- 粘贴修正后的代码
- 命名(如”三金叉共振”)并保存
2. 看图说明
副图界面:
- 紫/绿色柱状图:代表AA1与AA2的对比(27日周期J线)
- 深蓝/暗黄色柱状图:代表BB1与BB2的对比(9日周期J线)
- 红色笑脸:买入信号
- 绿色哭脸:卖出信号
- 主力线:POINTDOT点状线
3. 选股方法
如果要实现条件选股,需要单独建立一个选股公式:
// 选股公式:注意买入
DIF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIF,9);
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
RSV1:=(CLOSE-LLV(LOW,27))/(HHV(HIGH,27)-LLV(LOW,27))*100;
K1:=SMA(RSV1,5,1);
D1:=SMA(K1,5,1);
J1:=3*K1-2*D1;
AA1:=EMA(J1,5);
AA2:=REF(AA1,1);
RSV2:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K2:=SMA(RSV2,3,1);
D2:=SMA(K2,3,1);
J2:=3*K2-2*D2;
BB1:=EMA(J2,5);
BB2:=REF(BB1,1);
DD:=AA1>AA2 AND BB1>BB2;
注意买入:DD AND NOT(REF(DD,1)) AND (AA1<50 OR BB1<50);
六、使用注意事项
⚠️ 风险提示
- 牛市信号较准,熊市假信号多
- 单一指标不可作为买卖唯一依据
- 建议结合大盘走势、板块效应使用
💡 优化建议
- 可加入大盘配合条件(如同花顺指数金叉)
- 可加入板块热度过滤
- 可设置止盈止损纪律
七、适合的行情
| 行情类型 | 适用性 | 说明 |
|---|---|---|
| 牛市主升浪 | ⭐⭐⭐⭐⭐ | 共振信号成功率高 |
| 震荡市 | ⭐⭐⭐ | 需结合其他指标 |
| 熊市 | ⭐ | 假信号较多,谨慎使用 |
| 盘整突破 | ⭐⭐⭐⭐ | 放量金叉信号有效 |
总结:这是一个典型的”多指标共振“型指标,通过MACD、KDJ两个不同、量能以及周期的J线系统进行多重验证,旨在提高信号可靠性。但任何指标都有局限性,建议结合基本面分析和技术面其他工具综合判断。