好友
阅读权限20
听众
最后登录1970-1-1
|
本帖最后由 ipc2008 于 2026-1-12 08:56 编辑
以下是一个将MACD和KDJ指标叠加显示在副图中的文华6语言指标代码:
/*----------------------------------------------
指标名称:MACD+KDJ叠加副图指标
适用平台:文华6
编写思路:将MACD和KDJ指标叠加显示在副图中
----------------------------------------------*/
// MACD参数
INPUT:
SHORT(12,5,40), // 短期EMA周期
LONG(26,10,100), // 长期EMA周期
MID(9,2,20); // DEA周期
// KDJ参数
INPUT:
N(9,1,100), // KDJ计算周期
M1(3,1,100), %K的平滑周期
M2(3,1,100); %D的平滑周期
// 计算MACD
DIF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);
DEA:EMA(DIF,MID);
MACD:(DIF-DEA)*2,COLORSTICK;
// 计算KDJ
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
J:3*K-2*D;
// 调整KDJ数值范围以适应MACD显示
SCALE_FACTOR := (HHV(DIF,100)-LLV(DEA,100))/(100);
K_ADJ:K*SCALE_FACTOR+LLV(DEA,100);
D_ADJ:D*SCALE_FACTOR+LLV(DEA,100);
J_ADJ:J*SCALE_FACTOR+LLV(DEA,100);
// 绘制调整后的KDJ曲线
PLOT(K_ADJ,"K",COLORRED);
PLOT(D_ADJ,"D",COLORGREEN);
PLOT(J_ADJ,"J",COLORBLUE);
// 绘制MACD
PLOT(DIF,"DIF",COLORCYAN);
PLOT(DEA,"DEA",COLORYELLOW);
// 绘制零轴
ZERO_LINE:0,COLORGRAY;
// 设置指标显示范围
SETRANGESCALE(LLV(DEA,100)-10,HHV(DIF,100)+10);
使用说明:- 此指标将MACD和KDJ叠加显示在同一个副图中
- MACD保持原有计算方式,使用柱状图显示
- KDJ指标经过数值调整,使其波动范围与MACD相匹配
- 各曲线使用不同颜色区分:
- DIF: 青色
- DEA: 黄色
- K: 红色
- D: 绿色
- J: 蓝色
参数调整:您可以通过指标参数面板调整以下参数:- MACD部分:SHORT(默认12)、LONG(默认26)、MID(默认9)
- KDJ部分:N(默认9)、M1(默认3)、M2(默认3)
|
|