相关简介:通达信缠论指标公式源码分享
通达信指标公式源码概况:
指标类别:通达信指标公式
授权方式:免费版
指标评级:★★★★★
指标分类:策略
画线方法:副图
考虑了很久,要不要拿出来分享?再三思虑,还是把自己用的缠论自动画笔画中枢的指标拿出来。
本指标不需要导入DLL文件,跟普通指标一样运行顺滑,就是一个普通指标运行量。
因为我也深受dll导入文件的烦恼,不但运行慢,导致软件会经常崩溃。因为是免DLL的,自动划线用到未来函数(缠论公式都一样),不喜勿用
使用说明:
1指标周期越小,实战效果越好。
2本指标在自动画出中枢的基础上,会自动延伸虚线,让你自己感受压力支撑,也就是一眼识别三买三卖点
3一切指标都是工具,对缠论爱好者,多看缠师文章,指标只作为参考。
通达信指标公式源码:
K:=1;
局部低点预选A:=BacKSET(LLV(L,5)<REF(LLV(L,4),1),4);
局部低点预选B:=BACKSET(局部低点预选A=0ANDREF(局部低点预选A,1)=1,2);
局部低点预选C:=IF(局部低点预选B=1ANDREF(局部低点预选B,1)=0,-1,0);
局部高点预选A:=BACKSET(HHV(H,5)>REF(HHV(H,4),1),4);
局部高点预选B:=BACKSET(局部高点预选A=0ANDREF(局部高点预选A,1)=1,2);
局部高点预选C:=IF(局部高点预选B=1ANDREF(局部高点预选B,1)=0,1,0);
缺口判断:=IF(L>REF(H,1),1,IF(H<REF(L,1),-1,0));
距前高天:=BArslAst(局部高点预选C=1);
距前低天:=BARSLAST(局部低点预选C=-1);
小值周期:=LOwrANGE(L);
大值周期:=topRANGE(H);
低保留AA:=IF(局部低点预选C=-1ANDREF(距前高天,1)>REF(距前低天,1)ANDLLV(L,距前高天+1)<REF(LLV(L,距前高天+1),1),-1,0);
低保留AB:=IF(局部低点预选C=-1ANDREF(距前高天,1)<=REF(距前低天,1)AND(距前高天>=4ORLLV(缺口判断,距前高天)=-1ORLLV(L,距前低天+2)<REF(LLV(L,距前低天+1),1)),-1,0);
低保留S:=IF((低保留AA=-1OR低保留AB=-1)ANDL<REF(H,距前高天+1),-1,0);
预判:=IF((距前低天<4ANDHHV(缺口判断,距前低天)!=1)ORREF(低保留S,距前低天)=0,1,0);
判断:=IF(局部高点预选C=1ANDREF(距前低天,1)<=REF(距前高天,1)AND预判=1AND大值周期>REF(小值周期,距前低天+1)AND大值周期>REF(小值周期,距前低天)AND大值周期>REF(大值周期,距前高天),1,0);
高保留A:=IF(局部高点预选C=1ANDREF(距前低天,1)>REF(距前高天,1)ANDHHV(H,距前低天+1)>REF(HHV(H,距前低天+1),1),1,0);
高保留B:=IF(局部高点预选C=1ANDREF(距前低天,1)<=REF(距前高天,1)ANDREF(低保留S,距前低天)=-1AND(距前低天>=4ORHHV(缺口判断,距前低天)=1),1,0);
高保留:=IF((高保留A=1OR高保留B=1OR判断=1)ANDH>REF(L,距前低天+1),1,0);
预判A:=IF((距前高天<4ANDHHV(缺口判断,距前高天)!=1)ORREF(高保留,距前高天)=0,1,0);
判断A:=IF(局部低点预选C=-1ANDREF(距前高天,1)<=REF(距前低天,1)AND预判A=1AND小值周期>REF(大值周期,距前高天+1)AND小值周期>REF(大值周期,距前高天)AND小值周期>REF(小值周期,距前低天),-1,0);
低保留A:=IF(局部低点预选C=-1ANDREF(距前高天,1)>REF(距前低天,1)ANDLLV(L,距前高天+1)<REF(LLV(L,距前高天+1),1),-1,0);
低保留B:=IF(局部低点预选C=-1ANDREF(距前高天,1)<=REF(距前低天,1)AND(距前高天>=4ORLLV(缺口判断,距前高天)=-1OR判断A=-1),-1,0);
低保留:=IF((低保留A=-1OR低保留B=-1)ANDL<REF(H,距前高天+1),-1,0);
距前高天A:=BARSLAST(高保留=1);
距前低天A:=BARSLAST(低保留=-1);
预判X:=IF((距前低天A<4ANDHHV(缺口判断,距前低天A)!=1)ORREF(低保留,距前低天A)=0,1,0);
判断X:=IF(局部高点预选C=1ANDREF(距前低天A,1)<=REF(距前高天A,1)AND预判X=1AND大值周期>REF(小值周期,距前低天A+1)AND大值周期>REF(小值周期,距前低天A)AND大值周期>REF(大值周期,距前高天A),1,0);
高保留XA:=IF(局部高点预选C=1ANDREF(距前低天A,1)>REF(距前高天A,1)ANDHHV(H,距前低天A+1)>REF(HHV(H,距前低天A+1),1),1,0);
高保留XB:=IF(局部高点预选C=1ANDREF(距前低天A,1)<=REF(距前高天A,1)ANDREF(低保留,距前低天A)=-1AND(距前低天A>=4ORHHV(缺口判断,距前低天A)=1),1,0);
高保留X:=IF((高保留XA=1OR高保留XB=1OR判断X=1)ANDH>REF(L,距前低天A+1),1,0);
预判XA:=IF((距前高天A<4ANDHHV(缺口判断,距前高天A)!=1)ORREF(高保留XA,距前高天A)=0,1,0);
判断XA:=IF(局部低点预选C=-1ANDREF(距前高天A,1)<=REF(距前低天A,1)AND预判XA=1AND小值周期>REF(大值周期,距前高天A+1)AND小值周期>REF(大值周期,距前高天A)AND小值周期>REF(小值周期,距前低天A),-1,0);
低保留XA:=IF(局部低点预选C=-1ANDREF(距前高天A,1)>REF(距前低天A,1)ANDLLV(L,距前高天A+1)<REF(LLV(L,距前高天A+1),1),-1,0);
低保留XB:=IF(局部低点预选C=-1ANDREF(距前高天A,1)<=REF(距前低天A,1)AND(距前高天A>=4ORLLV(缺口判断,距前高天A)=-1OR判断XA=-1),-1,0);
低保留X:=IF((低保留XA=-1OR低保留XB=-1)ANDL<REF(H,距前高天A+1),-1,0);
距前高天YA:=BARSLAST(高保留X=1);
距前低天YA:=BARSLAST(低保留X=-1);
预判YX:=IF((距前低天YA<4ANDHHV(缺口判断,距前低天YA)!=1)ORREF(低保留X,距前低天YA)=0,1,0);
判断YX:=IF(局部高点预选C=1ANDREF(距前低天YA,1)<=REF(距前高天YA,1)AND预判YX=1AND大值周期>REF(小值周期,距前低天YA+1)AND大值周期>REF(小值周期,距前低天YA)AND大值周期>REF(大值周期,距前高天YA),1,0);
高保留YXA:=IF(局部高点预选C=1ANDREF(距前低天YA,1)>REF(距前高天YA,1)ANDHHV(H,距前低天YA+1)>REF(HHV(H,距前低天YA+1),1),1,0);
高保留YXB:=IF(局部高点预选C=1ANDREF(距前低天YA,1)<=REF(距前高天YA,1)ANDREF(低保留X,距前低天YA)=-1AND(距前低天YA>=4ORHHV(缺口判断,距前低天YA)=1),1,0);
高保留YX:=IF((高保留YXA=1OR高保留YXB=1OR判断YX=1)ANDH>REF(L,距前低天YA+1),1,0);
预判YXA:=IF((距前高天YA<4ANDHHV(缺口判断,距前高天YA)!=1)ORREF(高保留YXA,距前高天YA)=0,1,0);
判断YXA:=IF(局部低点预选C=-1ANDREF(距前高天YA,1)<=REF(距前低天YA,1)AND预判YXA=1AND小值周期>REF(大值周期,距前高天YA+1)AND小值周期>REF(大值周期,距前高天YA)AND小值周期>REF(小值周期,距前低天YA),-1,0);
低保留YXA:=IF(局部低点预选C=-1ANDREF(距前高天YA,1)>REF(距前低天YA,1)ANDLLV(L,距前高天YA+1)<REF(LLV(L,距前高天YA+1),1),-1,0);
低保留YXB:=IF(局部低点预选C=-1ANDREF(距前高天YA,1)<=REF(距前低天YA,1)AND(距前高天YA>=4ORLLV(缺口判断,距前高天YA)=-1OR判断YXA=-1),-1,0);
低保留YX:=IF((低保留YXA=-1OR低保留YXB=-1)ANDL<REF(H,距前高天YA+1),-1,0);
AAAD:=IF(高保留YX=1AND低保留YX=-1ANDH>REF(H,REF(距前高天YA,1)+2),1,IF(高保留YX=1AND低保留YX=-1ANDL<REF(L,REF(距前低天YA,1)+2),-1,0));
极点保留:=IF(AAAD=0,高保留YX+低保留YX,AAAD);
局部极点:IF(极点保留=-1,L,IF(极点保留=1,H,DRAWNULL)),CIRCLEDOT,COLORYELLOW;
局部天数:BARSLAST(Abs(极点保留)),NODRAW;
局部换手:IF(极点保留=0,SUM(“HSL.HSL”,局部天数),0),NODRAW;
局部涨跌:C/REF(C,局部天数)*100-100,NODRAW,COLORWHITE;
换手G:=VARCAT(VAR2STR(SUM(“HSL.HSL”,BARSLAST(高保留X)),2),’%H’);
高点换手:=VARCAT(VARCAT(VARCAT(换手G,'(‘),VAR2STR(BARSLAST(高保留X),0)),’T)’);
换手D:=VARCAT(VAR2STR(SUM(“HSL.HSL”,BARSLAST(低保留X)),2),’%H’);
低点换手:=VARCAT(VARCAT(VARCAT(换手D,'(‘),VAR2STR(BARSLAST(低保留X),0)),’T)’);
高跌幅:=IF(K=1,L/REF(H,BARSLAST(高保留X))*100-100,C/REF(C,BARSLAST(高保留X))*100-100);
低涨幅:=IF(K=1,H/REF(L,BARSLAST(低保留X))*100-100,C/REF(C,BARSLAST(低保留X))*100-100);
高跌幅A:=VARCAT(VAR2STR(高跌幅,2),’%F’);
低涨幅A:=VARCAT(VAR2STR(低涨幅,2),’%F’);
高点显示:=VARCAT(低点换手,低涨幅A);
低点显示:=VARCAT(高点换手,高跌幅A);
DRAWLINE(极点保留=-1,局部极点,极点保留=1,局部极点,0),COLORLIRED;
DRAWLINE(极点保留=1,局部极点,极点保留=-1,局部极点,0),COLORYELLOW;
DRAWTEXT(极点保留=-1,L*0.99,低点显示),COLORGREEN;
DRAWTEXT(极点保留=1,H*1.01,高点显示),COLORYELLOW;
DRAWNUMBER(极点保留=1,H,局部极点);
DRAWNUMBER(极点保留=-1,L,局部极点),DRAWAbovE;
老笔:=1;
G:=MA(C,5);
D:=MA(C,10);
HH:=REF(H,5)=HHV(H,11);
LL:=REF(L,5)=LLV(L,11);
FG01:=BACKSET(HH,6)>BACKSET(HH,5);
FD01:=BACKSET(LL,6)>BACKSET(LL,5);
FG02:=IF(BARSLAST(FG01)=BARSLAST(FD01)ANDG>D,FG01,
IF(BARSLAST(FD01)>BARSLAST(FG01),FG01,0));
FD02:=IF(BARSLAST(FG01)=BARSLAST(FD01)ANDD>G,FD01,
IF(BARSLAST(FG01)>BARSLAST(FD01),FD01,0));
FG0:=FG02ANDH=HHV(H,BARSLAST(FD02));
FD0:=FD02ANDL=LLV(L,BARSLAST(FG02));
GP:IF(FG0,H,DRAWNULL),CIRCLEDOT,COLORCYAN;
DP:IF(FD0,L,DRAWNULL),CIRCLEDOT,COLORCYAN;
GQ:=L>REF(H,1)ANDDAY!=REF(DAY,1);
DQ:=H<REF(L,1)ANDDAY!=REF(DAY,1);
GQL:=REF(L,BARSLAST(GQ));
DQH:=REF(H,BARSLAST(DQ));
FGH:=REF(H,BARSLAST(FG0));
FGL:=REF(L,BARSLAST(FG0));
FGH1:=REF(H,BARSLAST(FG0)+1);
FGL1:=REF(L,BARSLAST(FG0)+1);
FGH2:=REF(H,BARSLAST(FG0)+2);
FGL2:=REF(L,BARSLAST(FG0)+2);
FDH:=REF(H,BARSLAST(FD0));
FDL:=REF(L,BARSLAST(FD0));
FDH1:=REF(H,BARSLAST(FD0)+1);
FDL1:=REF(L,BARSLAST(FD0)+1);
FDH2:=REF(H,BARSLAST(FD0)+2);
FDL2:=REF(L,BARSLAST(FD0)+2);
FGZH:=IF(FGL<=FGL1,FGH2,FGH1);
FGZL:=IF(FGH1<FGL,FGL,IF(FGL<=FGL1,FGL2,FGL1));
FDZH:=IF(FDL1>FDH,FDH,IF(FDH>=FDH1,FDH2,FDH1));
FDZL:=IF(FDH>=FDH1,FDL2,FDL1);
FG1:=FGH>FDZHANDFG0;
FD1:=FDL<FGZLANDFD0;
FG:=FG1ANDFGH>FDHANDFGL>FDLANDFGL1>FDL;
FD:=FD1ANDFDL<FGLANDFDH<FGHANDFDH1<FGH;
BH0:=(H<=REF(H,1)ANDL>=REF(L,1))OR(H>=REF(H,1)ANDL<=REF(L,1));
BHG:=COUNT(BH0,BARSLAST(FD0));
BHD:=COUNT(BH0,BARSLAST(FG0));
BGQ:=COUNT(GQ,BARSLAST(FD0));
BDQ:=COUNT(DQ,BARSLAST(FG0));
BK0:=IF(BHG>0,BHG+2+老笔,IF(BHD,BHD+2+老笔,3));
BK:=IF(BGQ,BK0-BGQ,IF(BDQ,BK0-BDQ,BK0));
G1X:=(FGANDBARSLAST(FD)>BK);
D1X:=(FDANDBARSLAST(FG)>BK);
G1:=(FG0ANDREF(H,BARSLAST(FG0))>=REF(H,BARSLAST(G1X))ANDBARSLAST(D1X)>BARSLAST(G1X))
OR(FG1ANDCOUNT(GQ,BARSLAST(FD1))>0ANDREF(H,BARSLAST(FG1))>REF(H,BARSLAST(G1X)));
D1:=(FD0ANDREF(L,BARSLAST(FD0))<=REF(L,BARSLAST(D1X))ANDBARSLAST(G1X)>BARSLAST(D1X))
OR(FD1ANDCOUNT(DQ,BARSLAST(FG1))>0ANDREF(L,BARSLAST(FD1))<REF(H,BARSLAST(D1X)));
G1H:=IF(BARSLAST(D1)>BARSLAST(G1),REF(H,BARSLAST(G1)),REF(H,BARSLAST(D1))),;
D1L:=IF(BARSLAST(G1)>BARSLAST(D1),REF(L,BARSLAST(D1)),REF(L,BARSLAST(G1)));
G2:=G1ANDH=HHV(G1H,BARSLAST(D1)+1)ANDH>REF(H,1)ANDBARSLAST(D1)>BARSLAST(G1);
D2:=D1ANDL=LLV(D1L,BARSLAST(G1)+1)ANDL<REF(L,1)ANDBARSLAST(G1)>BARSLAST(D1);
G3:=G2OR(FG0ANDREF(H,BARSLAST(FG0))>REF(H,BARSLAST(G2))ANDBARSLAST(D2)>BARSLAST(G2));
D3:=D2OR(FD0ANDREF(L,BARSLAST(FD0))<REF(L,BARSLAST(D2))ANDBARSLAST(G2)>BARSLAST(D2));
GPB:IF(G1X,H,DRAWNULL),CIRCLEDOT,COLORYELLOW;
DPB:IF(D1X,L,DRAWNULL),CIRCLEDOT,COLORYELLOW;
{画线}
NN:=G3;UU:=D3;
L1:DRAWLINE(UU,L,NN,H,0),COLORRED;L2:DRAWLINE(NN,H,UU,L,0),COLORYELLOW;
{标示端点数值}
{DRAWNUMBER(L1ANDL2ANDNN,H,H),COLORLIRED;DRAWNUMBER(L1ANDL2ANDUU,L,L),COLORLIMAGENTA;};
行业:=STRCAT(‘所属行业板块:’,HYBLOCK);
概念:=STRCAT(‘,所属概念板块:’,GNBLOCK);
地域:=STRCAT(‘,所属地域板块:’,DYBLOCK);
指数:=STRCAT(‘,所属指数板块:’,ZSBLOCK);
字幕1:=STRCAT(行业,概念);
字幕2:=STRCAT(地域,指数);
字幕:=STRCAT(字幕1,字幕2);
DRAWTEXT_FIX(ISLASTBAR,0,0,0,字幕);{概念};
[源码注释]通达信公式动态翻译结果
TJ赋值:开盘价>1日前的最高价 AND 最低价>1日前的最高价
输出XG:最近40日存在条件连续成立次数=2 AND TJ
评论(0)