夜雨聆风学习资料网

ARTICLE · 1299597

金叉转折指标:为什么金叉不管用(源码)

金叉转折指标:为什么金叉不管用(源码)

老指标的另一种排法

差离值还是那个算法:十二日均线减二十六日均线。它再做九日平滑,就是信号线。

不一样的地方在后面。柱子画的是差离值的两倍,零轴上方用红、下方用青。上升段里柱子缩短,说明推力在减;下降段里柱子缩短,说明抛压在减。

这三样东西摆在一起,是最常见的组合。真正省事的地方在于,它把后面的判断都画好了。

转折线怎么来的

它另外取了一条转折线:按最近两根 K 线的最高最低,哪个更近就用哪个。

收盘价从下往上穿过这条线,算一次向上突破;从上往下穿过,算向下。突破之后走了几根 K 线,它用另一个数记着。

这条线的好处是它会跟着价格走,不是固定的均线。价格贴着它走的时候,突破就很频繁;离得远的时候,一次突破就很有分量。

图标都在标什么

上下两个小图标,标的是突破的方向。

旁边还有小圆点。小圆点的条件是:柱子连续三根在收缩,然后突然放大。这个形态在转折处最常见,比金叉早半步。

柱子的最大最小也单独记了一份。零轴上方取这一段的柱子高点,下方取低点,用来判断现在的柱子算大还是算小。

三点提醒

一是它的平滑参数是固定的。十二、二十六、九是默认值,换到别的周期要整体缩放。

二是柱子翻红不等于转多。零轴下方的红柱只说明跌势在放缓。

三是图标密度高的地方,往往是震荡区。那一段的圆点不要单独看,要等柱子站上零轴。

温馨提示

1、指标:www.logic88.cn

2、本指标仅作为知识分享,不构成任何建议。

指标源码

{差离值:十二日均线减二十六日均线}

QS_DIF:=(EMA(CLOSE,12) - EMA(CLOSE,26));

{它再做九日平滑,得到信号线}

QS_DEA:=EMA(QS_DIF,9);

QS_HIST:=(2 * (QS_DIF - QS_DEA));

{差离值上穿零轴}

QS_CROSS_UP0:=CROSS(QS_DIF,0);

QS_CROSS_DN0:=CROSS(0,QS_DIF);

{上穿之后走了多少根 K 线}

QS_BARS_UP0:=BARSLAST(QS_CROSS_UP0);

QS_BARS_DN0:=BARSLAST(QS_CROSS_DN0);

QS_UP0_REF:=REF(QS_CROSS_UP0,1);

QS_DN0_REF:=REF(QS_CROSS_DN0,1);

QS_BARS_UP3:=BARSLAST(QS_UP0_REF);

QS_BARS_DN3:=BARSLAST(QS_DN0_REF);

{按最近两根 K 线的最高最低取一条转折线}

QS_SWING_LINE:=IF((QS_BARS_UP3 < QS_BARS_DN3),REF(HHV(HIGH,2),QS_BARS_UP3),REF(LLV(LOW,2),QS_BARS_DN3));

{收盘从下往上穿过这条转折线}

QS_BREAK_UP:=(((REF(CLOSE,1) <= REF(QS_SWING_LINE,1)) AND (CLOSE > QS_SWING_LINE)) AND (QS_BARS_UP0 < QS_BARS_DN0));

QS_BREAK_DN:=(((REF(CLOSE,1) >= REF(QS_SWING_LINE,1)) AND (CLOSE < QS_SWING_LINE)) AND (QS_BARS_DN0 < QS_BARS_UP0));

QS_UP1:=(QS_BREAK_UP AND (COUNT(QS_BREAK_UP,QS_BARS_UP0) = 1));

QS_DN1:=(QS_BREAK_DN AND (COUNT(QS_BREAK_DN,QS_BARS_DN0) = 1));

QS_UP2:=(QS_UP1 AND (REF(BARSLAST(QS_DN1),1) < REF(BARSLAST(QS_UP1),1)));

QS_DN2:=(QS_DN1 AND (REF(BARSLAST(QS_DN1),1) > REF(BARSLAST(QS_UP1),1)));

QS_UP3:=(QS_UP1 AND (REF(BARSLAST(QS_DN1),1) > REF(BARSLAST(QS_UP1),1)));

QS_DN3:=(QS_DN1 AND (REF(BARSLAST(QS_DN1),1) < REF(BARSLAST(QS_UP1),1)));

QS_BS_LINE:=IF((BARSLAST(QS_UP2) < BARSLAST(QS_DN2)),IF(REF(CROSS(0,QS_HIST),1),LLV(LOW,2),REF(LLV(LOW,2),BARSLAST(REF(CROSS(0,QS_HIST),1)))),IF(REF(CROSS(QS_HIST,0),1),HHV(HIGH,2),REF(HHV(HIGH,2),BARSLAST(REF(CROSS(QS_HIST,0),1)))));

{上下两处图标,分别标出突破的方向}

DRAWICON((QS_UP1 OR (BARSLAST(QS_UP1) < BARSLAST(QS_DN1))),0, 0);

DRAWICON((QS_DN1 OR (BARSLAST(QS_UP1) > BARSLAST(QS_DN1))),0,0) ;

{柱子在零轴上方用红色}

STICKLINE((QS_HIST >= 0),0,QS_HIST,2,1),COLORRED ;

STICKLINE(((QS_HIST >= 0) AND (QS_HIST < REF(QS_HIST,1))),0,QS_HIST,2,0),COLORRED;

STICKLINE((QS_HIST < 0),0,QS_HIST,2,0),COLORFFFF00;

STICKLINE(((QS_HIST < 0) AND (QS_HIST > REF(QS_HIST,1))),0,QS_HIST,2,1),COLORFFFF00;

{差离值单独画一条粗黄线}

QS_DIF_OUT:QS_DIF,LINETHICK2,COLORYELLOW;

QS_DEA_OUT:QS_DEA ,COLORLIMAGENTA ;

QS_HIST_OUT:QS_HIST,LINETHICK0,COLORFFFF00 ;

STICKLINE((CLOSE > 0),0,0,0 ,0) ;

{离零轴最近一次交叉到现在的天数}

QS_UP_BARS:=BARSLAST(CROSS(QS_HIST,0));

QS_DN_BARS:=BARSLAST(CROSS(0,QS_HIST));

{零轴上方的柱子高度取这一段的最大值}

QS_HIST_HI:=IF((QS_HIST >= 0),HHV(QS_HIST,(QS_UP_BARS + 1)),REF(HHV(QS_HIST,(QS_UP_BARS + 1)),(QS_DN_BARS + 1)));

QS_HIST_LO:=IF((QS_HIST < 0),LLV(QS_HIST,(QS_DN_BARS + 1)),REF(LLV(QS_HIST,(QS_DN_BARS + 1)),(QS_UP_BARS + 1)));

QS_HIST_HI2:=REF(QS_HIST_HI,(QS_UP_BARS + 1));

QS_HIST_LO2:=REF(QS_HIST_LO,(QS_DN_BARS + 1));

{连续三根柱子缩小之后再放大,标出小圆点}

DRAWICON(((((LLV(QS_HIST,4) > 0) AND (QS_HIST < REF(QS_HIST,1))) AND (REF(QS_HIST,1) > REF(QS_HIST,2))) AND (REF(QS_HIST,2) > REF(QS_HIST,3))),QS_HIST,2) ;

DRAWICON(((((HHV(QS_HIST,4) < 0) AND (QS_HIST > REF(QS_HIST,1))) AND (REF(QS_HIST,1) < REF(QS_HIST,2))) AND (REF(QS_HIST,2) < REF(QS_HIST,3))),QS_HIST,1);

DRAWICON(((((QS_DN1 OR (BARSLAST(QS_UP1) > BARSLAST(QS_DN1))) AND (QS_HIST >= 0)) AND (REF(QS_HIST,1) < REF(QS_HIST_HI2,1))) AND (QS_HIST > QS_HIST_HI2)),QS_HIST,12) ;

DRAWICON(((((QS_UP1 OR (BARSLAST(QS_UP1) < BARSLAST(QS_DN1))) AND (QS_HIST < 0)) AND (REF(QS_HIST,1) > REF(QS_HIST_LO2,1))) AND (QS_HIST < QS_HIST_LO2)),QS_HIST,12);

源码,原文一键复制

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料