ARTICLE · 1159475
完美波段指标:两段摆动定转折(源码)
这条指标想解决什么问题
摆动类的指标最怕两件事:一是把震荡当成转折,二是转折来了反应太慢。
这条指标用上下两段计算来平衡这对矛盾。上段盯摆动,下段量位置。
上段:先立一把标尺
上段先算一条通道。基准用动态均线,上下各放 7% 的带宽。
带宽以内的价格波动都算正常呼吸;价格贴着上轨走,说明买方占优,贴着下轨走,说明卖方占优。
这条通道后面反复要用到,它是判断摆动位置的标尺。
上段:逐日递推摆动
真正的摆动判断是一段递推。
从一根阳线开始,逐日检查:今天还算不算在延续上升摆动?如果连续几天的收盘价格关系还维持着,摆动就继续。
一旦这个关系被打断,上升摆动结束,开始记下降摆动的那一段。下降摆动同样逐日递推。
两段都走完一个来回,才确认这里完成了一次完整转折。
这样做的代价是慢半拍,好处是不会被一根阳线骗着改方向。
下段:量出价格的位置
下段换了一个视角。
取 34 天内的最高点和最低点,框成一个区间。然后把当前价格换算成这个区间里的相对位置——区间底部是 0,顶部是 100。
这个位置数值经过 13 天平滑,画出来就是价波。
价波再平滑 3 天,得到量波。两条线一快一慢,交叉的位置就是摆动信号落下来的地方。
三条参考线
图上固定画三条横线:80、20、50。
80 以上算顶部区域,20 以下算底部区域,50 是中轴。
价波在 20 附近由下往上穿过量波,是这条指标最想抓的形态。
一个使用上的提醒
摆动判断本身是滞后的,它靠「走完一个来回」来确认,所以别指望它抓到最低那根。
它的价值在于把「这里是不是一次真正的转折」这个问题,从感觉变成一个可以判定的结果。
配合位置一起看:位置在低位区、价波又上穿量波,这种组合的含金量最高;位置已经在 80 上方才出现交叉,那更多是趋势延续,不是转折。
慢有慢的好处,至少它不会天天改主意。
温馨提示
1、指标:www.logic88.cn
2、本指标仅作为知识分享,不构成任何建议。


指标源码
{完美波段:从 7% 带宽的价格通道里找摆动低点}{摆动识别与价格通道两段计算,共用同一份参数}
BIAS_RATIO:=ABS((2*CLOSE+HIGH+LOW)/4-MA(CLOSE,20))/MA(CLOSE,20);
{先算上下轨:以动态均线为基准,±7% 带宽,这是判断摆动位置的标尺}
BAND_DN:=(1-7/100)*(DMA(CLOSE,BIAS_RATIO));
BAND_UP:=(1+7/100)*(DMA(CLOSE,BIAS_RATIO));
TP_MA5:=MA((LOW+HIGH+CLOSE)/3,5);
SUP_LINE:=REFDATE(BAND_DN,DATE),POINTDOT,LINETHICK3,COLORCC66FF;
RES_LINE:=REFDATE(BAND_UP,DATE),POINTDOT,LINETHICK3,COLORGREEN;
{从一根阳线起头,逐日递推摆动是否延续,一直推到转跌那一段}
ZIG01:=CLOSE>REF(CLOSE,1) AND CLOSE>REF(CLOSE,2);
ZIG02:=REF(ZIG01,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG03:=REF(ZIG02,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG04:=REF(ZIG03,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG05:=REF(ZIG04,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG06:=REF(ZIG05,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG07:=REF(ZIG06,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG08:=REF(ZIG07,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG09:=REF(ZIG08,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG10:=REF(ZIG09,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG11:=REF(ZIG10,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG12:=REF(ZIG11,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
{阴线起头的那一段,同样逐日递推}
ZIG13:=CLOSE<REF(CLOSE,1) AND CLOSE<REF(CLOSE,2);
ZIG14:=REF(ZIG13,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG15:=REF(ZIG14,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG16:=REF(ZIG15,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG17:=REF(ZIG16,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG18:=REF(ZIG17,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG19:=REF(ZIG18,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG20:=REF(ZIG19,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG21:=REF(ZIG20,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG22:=REF(ZIG21,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
ZIG23:=REF(ZIG22,1) AND CLOSE<=REF(CLOSE,1) AND CLOSE>=REF(CLOSE,2);
ZIG24:=REF(ZIG23,1) AND CLOSE>=REF(CLOSE,1) AND CLOSE<=REF(CLOSE,2);
{两段摆动各走完一个来回,才确认完成了一次完整转折}
ZIG_UP_CYCLE:=REF(ZIG13 OR ZIG14 OR ZIG15 OR ZIG16 OR ZIG17 OR ZIG18 OR ZIG19 OR ZIG20 OR ZIG21 OR ZIG22 OR ZIG23 OR ZIG24,1) AND ZIG01;
ZIG_DN_CYCLE:=REF(ZIG01 OR ZIG02 OR ZIG03 OR ZIG04 OR ZIG05 OR ZIG06 OR ZIG07 OR ZIG08 OR ZIG09 OR ZIG10 OR ZIG11 OR ZIG12,1) AND ZIG13;
TP5:=(2*CLOSE+HIGH+LOW+OPEN)/5;
LOW34:=LLV(LOW,34);
{摆动确认后开始算通道:34 日高低点框出区间}
HIGH34:=HHV(HIGH,34);
{价格在区间里的相对位置,经 13 日平滑得到价波}
PRICE_WAVE:EMA((TP5-LOW34)/(HIGH34-LOW34)*100,13),COLORRED;
{价波再平滑 3 日得到量波,两线交叉就是落点}
VOL_WAVE:EMA(PRICE_WAVE,3),COLORCYAN;
{80 / 20 / 50 三条参考线,对应顶部、底部和中轴}
TOP_LINE:80;
BOT_LINE:20;
MID_LINE:50;
源码,原文一键复制