[投资]通达信-kd变色指标

79 阅读11分钟

问题一、技术指标讲解


{以下定义7个变量}
N2:=13;
M2:=5;
M22:=5;
RSV2:=(CLOSE-LLV(LOW,N2))/(HHV(HIGH,N2)-LLV(LOW,N2))*100;

K2:=SMA(RSV2,M2,1),LINETHICK4;
D2:=SMA(K2,M22,1),LINETHICK4;
J2:=3*K2-2*D2,LINETHICK4;

{KD柱线变色}
STICKLINE(K2>REF(K2,1) AND K2>D2,K2-D2,0,2,0),COLORMAGENTA;(洋红色)
STICKLINE(K2<=REF(K2,1) AND K2>D2,K2-D2,0,2,0),COLORWHITE;{白色}
STICKLINE(K2<=REF(K2,1) AND K2<=D2,K2-D2,0,2,0),COLORCYAN;{青色,空头强劲}
STICKLINE(K2>REF(K2,1) AND K2<=D2,K2-D2,0,2,0),COLORWHITE;{白色,空头减弱}


{JD柱线变色}
STICKLINE(J2>REF(J2,1) AND J2>D2,J2-D2,0,2,0),COLORMAGENTA;(洋红色)
STICKLINE(J2<=REF(J2,1) AND J2>D2,J2-D2,0,2,0),COLORWHITE;(白色)
STICKLINE(J2<=REF(J2,1) AND J2<=D2,J2-D2,0,2,0),COLORCYAN;{青色,空头强劲}
STICKLINE(J2>REF(J2,1) AND J2<=D2,J2-D2,0,2,0),COLORWHITE;{白色,空头减弱}

这是一个股票技术指标公式,主要是基于KDJ指标的变体,并加入了柱状图变色功能

我来为您详细解释:

(1)参数设置

N2:=13;      # 计算周期为13天
M2:=5;       # K值的平滑周期为5天
M22:=5;      # D值的平滑周期为5天

(2)核心计算(KDJ指标)

# 1. 计算RSV(未成熟随机值)
RSV2 := (收盘价 - 13日最低价的最低值) / (13日最高价的最高值 - 13日最低价的最低值) * 100
# 表示当前价格在最近13天价格区间中的相对位置

# 2. 计算K值(快速随机指标)
K2 := RSV2的5日简单移动平均

# 3. 计算D值(慢速随机指标)
D2 := K2的5日简单移动平均

# 4. 计算J值(KDJ的辅助指标)
J2 := 3*K2 - 2*D2
# J值反映K值与D值的乖离程度

(3)柱状图变色逻辑(核心部分)

<1>第一组柱线:K2-D2 差值

# 情况1:K值上涨且大于D值(多头强势)
IF K2 > 昨天的K2 AND K2 > D2:
    绘制洋红色柱线(K2-D2)  # 看涨信号最强
    
# 情况2:K值下跌但大于D值(多头减弱)
IF K2 <= 昨天的K2 AND K2 > D2:
    绘制白色柱线(K2-D2)    # 看涨,但动能开始减弱了
    
# 情况3:K值下跌且小于等于D值(空头强势)
IF K2 <= 昨天的K2 AND K2 <= D2:
    绘制青色柱线(K2-D2)    # 看跌信号最强
    
# 情况4:K值上涨但小于等于D值(空头减弱)
IF K2 > 昨天的K2 AND K2 <= D2:
    绘制白色柱线(K2-D2)    # 看跌, 但动能减弱,有反弹的迹象

<2>第二组柱线:J2-D2 差值

# 与K2-D2判断逻辑相同,但是基于J值
# 因为J值波动更大,更能反映短期超买超卖

(4)技术含义总结

  1. 柱线高度:表示K/D之间的差值或J/D之间的差值

  2. 颜色含义

    • 洋红色:指标上涨 + 金叉状态(最强烈的看涨信号)
    • 青色:指标下跌 + 死叉状态(最强烈的看跌信号)
    • 白色:指标方向与交叉状态不一致(趋势不明朗)
  3. 使用目的

    • 通过颜色变化快速识别趋势强度
    • K2-D2反映中期趋势
    • J2-D2反映短期波动
    • 结合两者判断买卖时机

(5)交易信号解读

  1. 买入信号:出现连续洋红色柱线,且柱线高度增加
  2. 卖出信号:出现连续青色柱线,且柱线高度增加(负值更大)
  3. 观望信号:出现白色柱线,方向不明

这个指标通过视觉化的颜色变化,让投资者更直观地看到KDJ指标的多空变化和动能转换。



问题二、把以上的技术指标,改成选股指标

这是一个非常好的选股思路!您想找的是超卖反弹的潜在信号,即在下跌过程中出现动能减弱的迹象。让我先帮您修改指标,然后详细解释逻辑:

(1)修改后的选股指标代码

{定义7个参数设置}
N2:=13;
M2:=5;
M22:=5;

RSV2:=(CLOSE-LLV(LOW,N2))/(HHV(HIGH,N2)-LLV(LOW,N2))*100;
K2:=SMA(RSV2,M2,1);
D2:=SMA(K2,M22,1);
J2:=3*K2-2*D2;{该变量可写可不写,因为这里选股用的是k和d}

{----------计算柱线条件----------}
{昨天条件:青色柱线(空头强势)}
Yesterday_Cyan:= REF(K2,1) <= REF(K2,2) AND REF(K2,1) <= REF(D2,1) AND REF(K2,1)-REF(D2,1) < 0;

{今天条件:白色柱线(空头减弱)}
Today_White:= K2 > REF(K2,1) AND K2 <= D2 AND K2-D2 < 0;

{柱线在0轴下方(K2<D2)且在近10天内由青转白出现2次以上}
X1:= Yesterday_Cyan AND Today_White;  {昨天青色, 今天白色}

{----------输出选股信号----------}
OUTPUT:X1 
       AND COUNT(X1,10)>=2 
       AND K2-D2 < 0;

(2)代码逻辑详细解释

<1>原始指标回顾

  • 计算13日KDJ指标(K2、D2)
  • 柱线颜色规则:
    • 青色K2下降且K2≤D2(空头强势,继续下跌)
    • 白色(空头减弱)K2上升但K2≤D2(空头减弱,可能反弹)

<2>选股条件分解

您要的条件是"柱线在0轴下方,并且颜色由青色变成白色",这包含三个要素:

要素1:柱线在0轴下方 → K2 < D2
要素2:颜色由青变白 → 昨天青色,今天白色
要素3:近10天出现≥2次 → COUNT(条件,10) >= 2

<3>具体条件定义

{昨天青色条件}
昨天K2下降 AND 昨天K2≤昨天D2 AND 昨天柱线<0
→ REF(K2,1) <= REF(K2,2) AND REF(K2,1) <= REF(D2,1) AND REF(K2,1)-REF(D2,1) < 0

{今天白色条件(空头减弱)}
今天K2上升 AND 今天K2≤今天D2 AND 今天柱线<0
→ K2 > REF(K2,1) AND K2 <= D2 AND K2-D2 < 0

(3)技术含义分析

<1>为什么这个信号有选股价值?

市场心理学解释:

  1. 青色柱线:表示市场空头力量强劲,价格持续下跌
  2. 白色柱线(空头减弱):虽然价格仍在下跌(K2≤D2),但下跌动能开始减弱(K2开始上升)
  3. 在0轴下方:意味着股价仍处于弱势区域

这种信号通常表示:

  • 空头力量正在耗尽
  • 可能有资金开始逢低买入
  • 短期可能出现技术性反弹

<2>实战应用建议

{如果您想更严格地筛选,可以添加以下条件:}

{条件1:KDJ处于超卖区域}
超卖条件 := K2 < 20 AND D2 < 30;

{条件2:成交量放大确认}
量能确认 := VOL > MA(VOL,5) * 1.2;

{条件3:价格已跌至重要支撑}
支撑位 := CLOSE < LLV(CLOSE,20) * 1.02;

{综合选股条件}
优化选股信号:选股信号 AND 超卖条件 AND 量能确认;

(4)使用注意事项

  1. 成功率:这种信号的成功率通常在60-70%,需要结合其他指标确认
  2. 止损设置:建议设置3-5%的止损位
  3. 持仓周期:一般为短线操作(3-7天)
  4. 市场环境:在震荡市或反弹市中效果更好,单边下跌市中要谨慎

(5)扩展思考

如果您想进一步优化这个策略,可以考虑:

{思路1:增加连续信号过滤}
连续青转白 := COUNT(Condition, 5) >= 2 AND 
              COUNT(K2-D2 < 0, 5) = 5;  {连续5天在0轴下}

{思路2:结合MACD底背离}
MACD底背离 := MACD.DIF > REF(MACD.DIF,1) AND 
              CLOSE < REF(CLOSE,1);

{思路3:增加价格位置判断}
相对位置 := CLOSE/MA(CLOSE,60) < 0.9;  {股价低于60日均线10%}

这个选股指标的核心思想是捕捉空头衰竭的转折点,当这种信号在短期内多次出现时,往往意味着下跌动能已经充分释放,反弹可能即将来临。



问题三、是JD柱线起作用?还是KD柱线起作用?

您观察得很仔细!这段代码确实绘制了两组柱线,但实际上起作用的主要是第二组(J2-D2柱线)

让我为您详细分析:

(1)为什么是J2-D2柱线起作用?

<1>绘制顺序问题

先绘制:K2-D2柱线(第一组4条STICKLINE)
后绘制:J2-D2柱线(第二组4条STICKLINE)

在图形软件中,后绘制的图形会覆盖先绘制的图形,所以您实际看到的主要是J2-D2的柱线。

<2>视觉差异对比

特征K2-D2柱线J2-D2柱线
计算基础K值(较平滑)J值(波动大)
波动幅度较小较大(因J=3K-2D)
视觉表现会被覆盖覆盖在K2柱线上
信号灵敏度较迟钝较敏感

<3>具体验证方法

您可以通过修改代码来验证:

{隐藏J2柱线,只看K2柱线}
{注释掉J2柱线部分}
{STICKLINE((J2>REF(J2,1) AND J2>D2),J2-D2,0,2,0),COLORMAGENTA;}
{STICKLINE((J2<=REF(J2,1) AND J2>D2),J2-D2,0,2,0),COLORWHITE;}
{STICKLINE(J2<=REF(J2,1) AND J2<=D2,J2-D2,0,2,0),COLORCYAN;}
{STICKLINE((J2>REF(J2,1) AND J2<=D2),J2-D2,0,2,0),COLORWHITE;}

(2)技术含义分析

<1>实际起作用的是J2-D2柱线

由于J值的计算公式是 J2 = 3*K2 - 2*D2

  1. J值放大波动:J值对K值和D值的差异进行了3倍放大
  2. 更早发出信号:J值比K值更敏感,能更早显示趋势变化
  3. 更适合短期交易:J2-D2的变色信号更适合捕捉短期买卖点

<2>两组柱线的实际应用价值

{虽然J2柱线覆盖了K2柱线,但两者各有用途:}

{如果只显示K2柱线(隐藏J2)}
- 信号更稳定,过滤了部分噪音
- 适合中短线趋势判断
- 减少虚假信号

{如果显示J2柱线(默认情况)}
- 信号更灵敏,反应更快
- 适合短线或超短线交易
- 可能产生更多虚假信号

(3)针对您的选股需求

基于您的需求"柱线在0轴下方,并且颜色由青色变成白色",应该基于J2-D2柱线来编写选股公式,因为:

  1. J2柱线是实际可见的:在图表上看到的就是J2柱线
  2. J2信号更及时:能更早捕捉到空头减弱的迹象
  3. 符合指标设计意图:作者将J2柱线绘制在后,就是为了让它作为主要观察对象

<1>修改后的选股代码(基于J2柱线)

{----------参数设置----------}
N2:=13;
M2:=5;
M22:=5;

{----------计算KDJ指标----------}
RSV2:=(CLOSE-LLV(LOW,N2))/(HHV(HIGH,N2)-LLV(LOW,N2))*100;
K2:=SMA(RSV2,M2,1);
D2:=SMA(K2,M22,1);
J2:=3*K2-2*D2;

{----------基于J2柱线的选股条件----------}
{昨天条件:青色柱线(J2空头强势)}
Yesterday_Cyan_J := REF(J2,1) <= REF(J2,2) AND REF(J2,1) <= REF(D2,1);

{今天条件:白色柱线(J2空头减弱)}
Today_White_J := J2 > REF(J2,1) AND J2 <= D2;

{柱线在0轴下方(J2<D2)且在近10天内由青转白出现2次以上}
Condition_J := Today_White_J AND Yesterday_Cyan_J AND J2-D2 < 0;
Count_Condition_J := COUNT(Condition_J, 10) >= 2;

{----------输出选股信号----------}
选股信号:Count_Condition_J;

(4)实用建议

  1. 如果您想要更稳定的信号:可以同时要求K2柱线和J2柱线都满足条件
  2. 确认信号有效性:可以结合成交量放大来确认
  3. 设置过滤条件:避免在极度弱势的市场中使用
{综合K2和J2的选股条件(双重确认)}
Condition_K := (K2 > REF(K2,1) AND K2 <= D2) AND 
               (REF(K2,1) <= REF(K2,2) AND REF(K2,1) <= REF(D2,1)) AND
               K2-D2 < 0;

综合选股信号:COUNT(Condition_J AND Condition_K, 10) >= 2;

(5)总结

  • 实际起主导作用的是J2-D2柱线(后绘制,覆盖显示)
  • J2柱线更敏感,适合短线交易信号
  • 如果追求稳定性,可以考虑K2和J2的双重确认
  • 您的选股思路(空头衰竭转反弹)在J2柱线上表现会更明显