以下是通达信分笔指标,比较准确,不含未来函数
附件指标为完全加密,作者发了简单的源码,但没附件里的准确,而且有未来函数,附件里的显示没有未来函数。代码如下:
{*********************************************************BUILD:20141102****};
{一、标记所有顶分型及底分型的顶部或底部,以下简称“节点”。};
{11、非包含关系的分型端点预选};
分型顶0:=H>REF(H,1) AND L>REF(L,1);
分型底0:=L<REF(L,1) AND H<REF(H,1);
{12、包含关系的K线处理:凡不符合上述类型的K线,均处于包含关系之中};
{包含关系分为二种:一、当前K线包含前一根K线时,需进行合并处理;二、当前K线被前一根K线包含时,因不涉及端点,无需处理。};
分型顶1:=(H>=REF(H,1) AND L<=REF(L,1)) AND (BARSLAST(分型顶0)<BARSLAST(分型底0));
分型底1:=(H>=REF(H,1) AND L<=REF(L,1)) AND (BARSLAST(分型底0)<BARSLAST(分型顶0));
{13、将前述二种分型节点作为备选分型。}
分型顶2:=分型顶0 OR 分型顶1;
分型底2:=分型底0 OR 分型底1;
{14、对连续的同向分型节点,取最高点或最低点为本笔分型的节点,并向前过滤掉中间满足条件的分型。};
{注:过滤的目的是仅保留最后一次的最高最低节点分型,确保预选分型节点的唯一性。}
分型顶:=FILTERX(分型顶2 AND H=HHV(H,BARSLAST(分型底2)),BARSLAST(分型底2));
IF(分型顶,H,DRAWNULL),CIRCLEDOT,COLORYELLOW;
分型底:=FILTERX(分型底2 AND L=LLV(L,BARSLAST(分型顶2)),BARSLAST(分型顶2));
IF(分型底,L,DRAWNULL),CIRCLEDOT,COLORYELLOW;
{二、对符合形成笔条件的分型节点进行粗选。}
{注:符合笔条件的分型应符合缠论以下条件:
1、力度:本笔的起点与终点之间,必须存在最高的低点与最低的高点分离(缠论无要求,可删除)
2、包含:无包含关系的K线数量必须达到二根以上,即:右肩+左肩+本笔。
3、数量:本笔所有K线数量,在无包含关系的情况下,除起点K线外,其余数量必须达到三以上,即:右肩+过渡+左肩+本笔。};
{21、以分型顶底为起点形成笔的要求,进行第一次筛选,得到笔的第一类过渡期顶、底。};
{顶力度1:=HHV(L,UP1+1)>LLV(H,UP1+1);}
UP1:=BARSLAST(分型底);
顶包含1:=COUNT(L>REF(L,1) AND H>REF(H,1),UP1)>2;
{底力度1:=HHV(L,DN1+1)>LLV(H,DN1+1);}
DN1:=BARSLAST(分型顶);
底包含1:=COUNT(H<REF(H,1) AND L<REF(L,1),DN1)>2;
笔顶10:=分型顶 AND{ 顶力度1 AND }顶包含1;
笔底10:=分型底 AND{ 底力度1 AND }底包含1;
{211:取同一笔中的最高点或最低点为笔的分型顶、底端};
笔顶1:=笔顶10 AND H=HHV(H,BARSLAST(笔底10));
笔底1:=笔底10 AND L=LLV(L,BARSLAST(笔顶10));
DRAWLINE(笔顶1,H,笔底1,L,0),COLORYELLOW,LINETHICK2;
DRAWLINE(笔底1,L,笔顶1,H,0),COLORYELLOW,LINETHICK2;
评论(0)