通达信流高KDJ指标公式源码
指标构成与信号说明:
1. KDJ指标:
K线:基于9日周期计算未成熟随机值(RSV)的3日移动平均。
D线:K值的3日移动平均。
J线:由公式 `3K-2D` 计算得出。
买入信号:当K线向上穿越D线,且J线也同时向上穿越D线时,在副图顶部(数值10附近)显示一个向上的箭头图标。
2. 多空布林线(BBI)与扩展多空布林线(EBBI):
BBI:由3日、6日、12日、24日收盘价的指数移动平均(EMA)相加后除以4计算得出。
EBBI:由6日、18日、54日、162日收盘价的指数移动平均(EMA)相加后除以4计算得出。
3. 均线多头排列条件(FF1):
判断短期均线是否呈多头排列,条件为:3日EMA > 7日EMA > 21日EMA > 54日EMA。
4. MACD指标:
DIFF线:12日EMA与26日EMA之差。
DEA线:DIFF线的9日EMA。
5. 主升浪信号:
触发条件:需同时满足以下三点:
BBI指标线位于EBBI指标线之上。
均线呈FF1定义的多头排列。
MACD的DIFF线位于DEA线之上。
信号显示:当条件满足时,输出固定值10,并以黄色点状线显示。同时,用黄色柱状线从0到10进行填充,形成醒目的色带区域,标识“主升浪”阶段。
6. DMI/PDI/MDI指标(部分):
计算了真实波幅(TR)、上升动向值(DMP)、下降动向值(DMM),并推导出上升方向线(PDI)和下降方向线(MDI)的公式。但此部分未用于生成最终的视觉信号。
7. 主力资金动向指标:
核心计算:基于价格波动构造VAR5曲线,用于监测主力行为。
主力进场信号:当VAR5的当前值大于其前一日值时,判定为“主力进场”。此时,VAR5的数值被输出(但不绘制连线),并在零轴上方绘制蓝色柱状线,柱高等于VAR5值。
洗盘信号:当VAR5的当前值小于其前一日值时,判定为“洗盘”。此时,VAR5的数值被输出(但不绘制连线),并在零轴上方绘制绿色柱状线,柱高等于VAR5值。
8. 准备启动信号:
触发条件:由VAR52指标线向上穿越数值3时触发。
信号显示:当条件满足时,在零轴下方(数值-8附近)显示一个向上的箭头图标。同时,在触发位置绘制红色柱状线进行标记。
指标应用总结:
指标组合旨在通过多维度条件共振捕捉趋势性机会。其核心交易逻辑关注两个层面:
趋势确认:通过“主升浪”信号(结合BBI、EBBI、均线排列、MACD)识别中短期强势上涨波段。
资金与时机:通过“主力进场”监控资金流入,通过“准备启动”和KDJ金叉寻找具体的入场时机点。
风险提示:“洗盘”信号提示可能出现的短期调整。
N:=9;M1:=3;M2:=3;
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;
BBI:=(EMA(CLOSE,3)+EMA(CLOSE,6)+EMA(CLOSE,12)+EMA(CLOSE,24))/4;
EBBI:=(EMA(C,6)+EMA(C,18)+EMA(C,54)+EMA(C,162))/4;
FF1:=EMA(C,3)>EMA(C,7) AND EMA(C,7)>EMA(C,21) AND EMA(C,21)>EMA(C,54);
DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
主升浪:IF(BBI>EBBI AND FF1 AND DIFF>DEA,10,0),COLORYELLOW,POINTDOT;
STICKLINE(主升浪,10,0,1,1),COLORYELLOW;
DRAWICON(CROSS(K,D) AND CROSS(J,D),10,1);
TR1 := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
HD := HIGH-REF(HIGH,1);
LD := REF(LOW,1)-LOW;
DMP:= SUM(IF(HD>0 AND HD>LD,HD,0),14);
DMM:= SUM(IF(LD>0 AND LD>HD,LD,0),14);
PDI:=DMP*100/TR;
MDI:=DMM*100/TR;0, ;
VAR1:=REF((LOW+OPEN+CLOSE+HIGH)/4,1);
VAR2:=SMA(ABS(LOW-VAR1),13,1)/SMA(MAX(LOW-VAR1,0),10,1);
VAR3:=EMA(VAR2,10);
VAR4:=LLV(LOW,33);
VAR5:=EMA(IF(LOW<=VAR4,VAR3,0),3);
主力进场:IF(VAR5>REF(VAR5,1),VAR5,0),COLORBLUE,NODRAW;
STICKLINE(VAR5>REF(VAR5,1),0,VAR5,1,0 ),COLORBLUE;
洗盘:IF(VAR5<REF(VAR5,1),VAR5,0),COLORGREEN,NODRAW;
STICKLINE(VAR5<REF(VAR5,1),0,VAR5,1,0),COLORGREEN;
VAR51:=3;
VAR52:=(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));
准备启动:CROSS(VAR52,VAR51),STICK,COLORLIRED;
DRAWICON(准备启动>0,-8,1);

未来函数检测结果如下:
该公式没有未来函数
定制指标公式、软件请联系QQ或微信同号:88652583
N赋值:9
M1赋值:3
M2赋值:3
RSV赋值:(收盘价-N日内最低价的最低值)/(N日内最高价的最高值-N日内最低价的最低值)*100
输出K:RSV的M1日[1日权重]移动平均
输出D:K的M2日[1日权重]移动平均
输出J:3*K-2*D
BBI赋值:(收盘价的3日指数移动平均+收盘价的6日指数移动平均+收盘价的12日指数移动平均+收盘价的24日指数移动平均)/4
EBBI赋值:(收盘价的6日指数移动平均+收盘价的18日指数移动平均+收盘价的54日指数移动平均+收盘价的162日指数移动平均)/4
FF1赋值:收盘价的3日指数移动平均>收盘价的7日指数移动平均 AND 收盘价的7日指数移动平均>收盘价的21日指数移动平均 AND 收盘价的21日指数移动平均>收盘价的54日指数移动平均
DIFF赋值:收盘价的12日指数移动平均-收盘价的26日指数移动平均
DEA赋值:DIFF的9日指数移动平均
输出主升浪:如果BBI>EBBIANDFF1ANDDIFF>DEA,返回10,否则返回0,画黄色,POINTDOT
当满足条件主升浪时,在10和0位置之间画柱状线,宽度为1,1不为0则画空心柱.,画黄色
当满足条件K上穿DANDCROSS(J,D)时,在10位置画1号图标
赋值: 最高价-最低价和最高价-1日前的收盘价的绝对值的较大值和最低价-1日前的收盘价的绝对值的较大值的14日累和
赋值: 最高价-1日前的最高价
赋值: 1日前的最低价-最低价
DMP赋值: 如果HD>0ANDHD>LD,返回HD,否则返回0的14日累和
DMM赋值: 如果LD>0ANDLD>HD,返回LD,否则返回0的14日累和
PDI赋值:DMP*100/真实波幅
MDI赋值:DMM*100/真实波幅
0,
VAR1赋值:1日前的(最低价+开盘价+收盘价+最高价)/4
VAR2赋值:最低价-VAR1的绝对值的13日[1日权重]移动平均/最低价-VAR1和0的较大值的10日[1日权重]移动平均
VAR3赋值:VAR2的10日指数移动平均
VAR4赋值:33日内最低价的最低值
VAR5赋值:如果最低价<=VAR4,返回VAR3,否则返回0的3日指数移动平均
输出主力进场:如果VAR5>1日前的VAR5,返回VAR5,否则返回0,画蓝色,NODRAW
当满足条件VAR5>1日前的VAR5时,在0和VAR5位置之间画柱状线,宽度为1,0不为0则画空心柱.,画蓝色
输出洗盘:如果VAR5<1日前的VAR5,返回VAR5,否则返回0,画绿色,NODRAW
当满足条件VAR5<1日前的VAR5时,在0和VAR5位置之间画柱状线,宽度为1,0不为0则画空心柱.,画绿色
VAR51赋值:3
VAR52赋值:(3)*(((收盘价-27日内最低价的最低值)/(27日内最高价的最高值-27日内最低价的最低值))*(100)的5日[1日权重]移动平均) - (2)*(((收盘价-27日内最低价的最低值)/(27日内最高价的最高值-27日内最低价的最低值))*(100)的5日[1日权重]移动平均的3日[1日权重]移动平均)
输出准备启动:VAR52上穿VAR51,STICK,画淡红色
当满足条件准备启动>0时,在-8位置画1号图标