您现在的位置:程序化交易>> 期货公式>> 文华财经>> 文华财经知识>>正文内容

缠论画笔画线(拜托老师将线条由粗改细) [文华财经]

  • 咨询内容:  

    Q:=DATE>200101;//20年01月01日之后
    MM:=2;
    M:=5;//M值需要大于等于5
    G:=MA(C,5);
    D:=MA(C,10);
    NNH:=BARSLAST(H=HHV(H,M)) ,NODRAW;
    NNL:=BARSLAST(L=LLV(L,M)) ,NODRAW;
    NN:=IF(REF(G,NNH)>REF(D,NNH) AND NNH<=M-3,NNH,IF(REF(G,NNL)<REF(D,NNL) AND NNL<=M-3,NNL,M-2)) ,NODRAW;
    NNN:=IF(ISLASTBAR AND NN>0,NN,M-2) ,NODRAW;
    H1:=REF(H,NNN)=HHV(H,M-1);
    L1:=REF(L,NNN)=LLV(L,M-1);
    FG01:=BACKSET(H1,NNN+1)>BACKSET(H1,NNN),NODRAW;//只设置前面第M-1个
    FD01:=BACKSET(L1,NNN+1)>BACKSET(L1,NNN) ,NODRAW;
    FG02:=FG01=FD01 AND G>D,NODRAW;
    FD02:=FG01=FD01 AND G<D,NODRAW;
    TTTT:=BARSLAST(FD01),NODRAW;
    FG0:=FG01 AND IF(FG02=1,H=HHV(H,BARSLAST(REF(FD01,1))+1),H=HHV(H,IF(BARSLAST(L=LLV(L,M))>=M-2,M-2,BARSLAST(FD01)))) AND FD02=0 ,NODRAW;
    FD0:=FD01 AND IF(FD02=1,L=LLV(L,BARSLAST(REF(FG01,1))+1),L=LLV(L,IF(BARSLAST(H=HHV(L,M))>=M-2,M-2,BARSLAST(FG01))))  AND FG02=0 ,NODRAW;
    //高低点间周期
    GT:=BARSLAST(FG0),NODRAW;
    DT:=BARSLAST(FD0),NODRAW;
    //第一次处理高低点间多余的点
    LLLL:=DT=0 AND REF(DT,1)<GT AND L>REF(L,REF(DT,1)+1),NODRAW;
    FG1:=BACKSET(REFX(GT,1)=0 AND GT<DT AND REFX(H,1)>=REF(H,GT),GT+1),NODRAW;
    FD1:=BACKSET(REFX(DT,1)=0 AND DT<GT AND REFX(L,1)<=REF(L,DT),DT+1),NODRAW;
    FG11:=IF(GT=0 AND REF(GT,1)<DT AND IF(REF(G,BARSLAST(L=LLV(L,M)))>REF(D,BARSLAST(L=LLV(L,M))),BARSLAST(L=LLV(L,M))<M-2,1) AND  H<REF(H,REF(GT,1)+1),1,0),NODRAW;
    FD11:=IF(DT=0 AND REF(DT,1)<GT AND IF(REF(G,BARSLAST(H=HHV(H,M)))<REF(D,BARSLAST(H=HHV(H,M))),BARSLAST(H=HHV(H,M))<M-2,1) AND L>REF(L,REF(DT,1)+1),1,0),NODRAW;
    //再次周期
    GT1:=BARSLAST(FG11<>1 AND FG1<>1 AND FG0),NODRAW;
    DT1:=BARSLAST(FD11<>1 AND FD1<>1 AND FD0),NODRAW;
    FD2:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)>LLV(L,GT1+M-2),DT1+1),NODRAW;
    FG2A:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)<=LLV(L,GT1+M-2) AND REF(H,GT1)>HHV(H,GT1+M-2),GT1+1),NODRAW;
    FG2B:=IF(GT1=0 AND DT1<4 AND REF(GT1,1)-DT1<4 AND REF(L,DT1)<=LLV(L,REF(GT1,1)+M-1) AND H>HHV(H,REF(GT1,1)+M-1),1,0),NODRAW;
    FG2:=BACKSET(REFX(DT1,1)=0 AND GT1<3 AND DT1-GT1<4 AND REF(H,GT1)<HHV(H,DT1+M-2),GT1+1),NODRAW;
    FD2A:=BACKSET(REFX(DT1,1)=0 AND GT1<3 AND DT1-GT1<4 AND REF(H,GT1)>=HHV(L,DT1+M-2) AND REF(L,DT1)>LLV(L,DT1+M-2),DT1+1),NODRAW;
    FD2B:=IF(DT1=0 AND GT1<4 AND REF(DT1,1)-GT1<4 AND REF(H,GT1)>=HHV(H,REF(DT1,1)+6) AND L>LLV(L,REF(DT1,1)+M-1),1,0),NODRAW;
    TTTTTT:= H<REF(H,REF(GT1,1)+1) AND DT1<4,NODRAW;
    HHHHHH:=REF(LLV(L,10),DT1),NODRAW;
    //前长后短;
    FG21:=IF(GT1=0 AND DT1<4 AND H<=REF(H,REF(GT1,1)+1)  ,1,0),NODRAW;
    FD21:=IF(DT1=0 AND GT1<4  AND L>=REF(L,REF(DT1,1)+1) ,1,0),NODRAW;
    //前短后长,前低后高(去低);
    FD231:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND REF(L,DT1)>REF(LLV(L,10),DT1),DT1+1),NODRAW;
    FG23:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND  GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND (REF(H,GT1)<REF(HHV(H,13),GT1) OR REF(FD231,DT1)=0),GT1+1),NODRAW;
    //前短后长,去2;
    FG231:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)<REF(L,DT1) AND REF(H,GT1)<REF(HHV(H,10),GT1) ,GT1+1),NODRAW;
    FD23:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)<REF(L,DT1) AND ( REF(L,DT1)>REF(LLV(L,13),DT1) OR REF(FG231,GT1)=0),DT1+1),NODRAW;
    //前短后长,去3;
    FDD23:=REF(H,GT1)<REF(HHV(H,10),GT1) OR REF(FD23,DT1)=0,NODRAW;
    FD24:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)<HHV(H,GT1+3) AND REF(L,DT1)>LLV(L,DT1+5),DT1+1),NODRAW;
    FG24:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)>LLV(L,DT1+3) AND REF(H,GT1)<HHV(H,GT1+5),GT1+1),NODRAW;
    //做两次高低点间多余的点
    GT2:=BARSLAST(FG21<>1 AND FG23<>1 AND FG231<>1 AND FG24<>1   AND FG2<>1 AND FG2A<>1 AND FG2B<>1 AND GT1=0),NODRAW;
    DT2:=BARSLAST(FD21<>1 AND FD23<>1 AND FD231<>1 AND FD24<>1  AND FD2<>1 AND FD2A<>1 AND FD2B<>1 AND DT1=0),NODRAW;
    FG3:=BACKSET(REFX(GT2,1)=0 AND GT2<DT2 AND REFX(H,1)>=REF(H,GT2),GT2+1),NODRAW;
    FD3:=BACKSET(REFX(DT2,1)=0 AND DT2<GT2 AND REFX(L,1)<=REF(L,DT2),DT2+1),NODRAW;
    FG31:=IF(GT2=0 AND REF(GT2,1)<DT2 AND H<REF(H,REF(GT2,1)+1),1,0),NODRAW;
    FD31:=IF(DT2=0 AND REF(DT2,1)<GT2 AND L>REF(L,REF(DT2,1)+1),1,0),NODRAW;
    GT3:=BARSLAST(GT2=0 AND FG3<>1 AND FG31<>1 ),NODRAW;
    DT3:=BARSLAST(DT2=0 AND  FD3<>1 AND FD31<>1),NODRAW;
    FG4:=BACKSET(REFX(GT3,1)=0 AND GT3<DT3 AND REFX(H,1)>=REF(H,GT3),GT3+1),NODRAW;
    FD4:=BACKSET(REFX(DT3,1)=0 AND DT3<GT3 AND REFX(L,1)<=REF(L,DT3),DT3+1),NODRAW;
    FG41:=IF(GT3=0 AND REF(GT3,1)<DT3 AND H<REF(H,REF(GT3,1)+1),1,0),NODRAW;
    FD41:=IF(DT3=0 AND REF(DT3,1)<GT3 AND L>REF(L,REF(DT3,1)+1),1,0),NODRAW;
    HHH:=GT3=0 AND FG31<>1 AND  FG3<>1,NODRAW;
    LLL:=DT3=0 AND FD31<>1 AND  FD3<>1,NODRAW;
    DRAWLINE1(Q&&HHH ,H,Q&&LLL,L,0),COLORGREEN,LINETHICK3;//绿色
    DRAWLINE1(Q&&LLL,L,Q&&HHH ,H,0),COLORRED,LINETHICK3;//红色

    DRAWNUMBER1(Q&& HHH>LLL, H ,HHH-REF(LLL,1) ,0 );

    DRAWNUMBER(Q&&(HHH||ISLASTBAR&&BARSLAST(LLL)<BARSLAST(HHH)),H+MM*MINPRICE,H-VALUEWHEN(LLL,L),0,COLORYELLOW),FONTSIZE24,ALIGN0;
    DRAWNUMBER(Q&&(LLL||ISLASTBAR&&BARSLAST(LLL)>BARSLAST(HHH)),L-MM*MINPRICE,L-VALUEWHEN(HHH,H),0,COLORYELLOW),VALIGN0,FONTSIZE24,ALIGN0;
    DRAWNUMBER(Q&&(HHH||ISLASTBAR&&BARSLAST(LLL)<BARSLAST(HHH)),H+MM*MINPRICE,BARSLAST(LLL)+1,0,COLORWHITE),FONTSIZE24,ALIGN2;
    DRAWNUMBER(Q&&(LLL||ISLASTBAR&&BARSLAST(LLL)>BARSLAST(HHH)),L-MM*MINPRICE,BARSLAST(HHH)+1,0,COLORWHITE),VALIGN0,FONTSIZE24,ALIGN2;

     

    N1:BACKSET(ISLASTBAR,SUMBARS(HHH,2)),NODRAW;
    N2:BACKSET(ISLASTBAR,SUMBARS(HHH,1)),NODRAW;
    //DRAWLINE1(CROSS(N1,0.5),H,CROSS(N2,0.5),H,1),COLORCYAN,LINETHICK2;


     

    (拜托老师将线条由粗改细)感谢感谢!!

     




    文件名:1644988746(1).jpg

     

     来源:程序化99

  • 文华技术人员:  参考:
    Q:=DATE>200101;//20年01月01日之后 MM:=2; M:=5;//M值需要大于等于5 G:=MA(C,5); D:=MA(C,10); NNH:=BARSLAST(H=HHV(H,M)) ,NODRAW; NNL:=BARSLAST(L=LLV(L,M)) ,NODRAW; NN:=IF(REF(G,NNH)>REF(D,NNH) AND NNH<=M-3,NNH,IF(REF(G,NNL)<REF(D,NNL) AND NNL<=M-3,NNL,M-2)) ,NODRAW; NNN:=IF(ISLASTBAR AND NN>0,NN,M-2) ,NODRAW; H1:=REF(H,NNN)=HHV(H,M-1); L1:=REF(L,NNN)=LLV(L,M-1); FG01:=BACKSET(H1,NNN+1)>BACKSET(H1,NNN),NODRAW;//只设置前面第M-1个 FD01:=BACKSET(L1,NNN+1)>BACKSET(L1,NNN) ,NODRAW; FG02:=FG01=FD01 AND G>D,NODRAW; FD02:=FG01=FD01 AND G<D,NODRAW; TTTT:=BARSLAST(FD01),NODRAW; FG0:=FG01 AND IF(FG02=1,H=HHV(H,BARSLAST(REF(FD01,1))+1),H=HHV(H,IF(BARSLAST(L=LLV(L,M))>=M-2,M-2,BARSLAST(FD01)))) AND FD02=0 ,NODRAW; FD0:=FD01 AND IF(FD02=1,L=LLV(L,BARSLAST(REF(FG01,1))+1),L=LLV(L,IF(BARSLAST(H=HHV(L,M))>=M-2,M-2,BARSLAST(FG01))))  AND FG02=0 ,NODRAW; //高低点间周期 GT:=BARSLAST(FG0),NODRAW; DT:=BARSLAST(FD0),NODRAW; //第一次处理高低点间多余的点 LLLL:=DT=0 AND REF(DT,1)<GT AND L>REF(L,REF(DT,1)+1),NODRAW; FG1:=BACKSET(REFX(GT,1)=0 AND GT<DT AND REFX(H,1)>=REF(H,GT),GT+1),NODRAW; FD1:=BACKSET(REFX(DT,1)=0 AND DT<GT AND REFX(L,1)<=REF(L,DT),DT+1),NODRAW; FG11:=IF(GT=0 AND REF(GT,1)<DT AND IF(REF(G,BARSLAST(L=LLV(L,M)))>REF(D,BARSLAST(L=LLV(L,M))),BARSLAST(L=LLV(L,M))<M-2,1) AND  H<REF(H,REF(GT,1)+1),1,0),NODRAW; FD11:=IF(DT=0 AND REF(DT,1)<GT AND IF(REF(G,BARSLAST(H=HHV(H,M)))<REF(D,BARSLAST(H=HHV(H,M))),BARSLAST(H=HHV(H,M))<M-2,1) AND L>REF(L,REF(DT,1)+1),1,0),NODRAW; //再次周期 GT1:=BARSLAST(FG11<>1 AND FG1<>1 AND FG0),NODRAW; DT1:=BARSLAST(FD11<>1 AND FD1<>1 AND FD0),NODRAW; FD2:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)>LLV(L,GT1+M-2),DT1+1),NODRAW; FG2A:=BACKSET(REFX(GT1,1)=0 AND DT1<3 AND GT1-DT1<4 AND REF(L,DT1)<=LLV(L,GT1+M-2) AND REF(H,GT1)>HHV(H,GT1+M-2),GT1+1),NODRAW; FG2B:=IF(GT1=0 AND DT1<4 AND REF(GT1,1)-DT1<4 AND REF(L,DT1)<=LLV(L,REF(GT1,1)+M-1) AND H>HHV(H,REF(GT1,1)+M-1),1,0),NODRAW; FG2:=BACKSET(REFX(DT1,1)=0 AND GT1<3 AND DT1-GT1<4 AND REF(H,GT1)<HHV(H,DT1+M-2),GT1+1),NODRAW; FD2A:=BACKSET(REFX(DT1,1)=0 AND GT1<3 AND DT1-GT1<4 AND REF(H,GT1)>=HHV(L,DT1+M-2) AND REF(L,DT1)>LLV(L,DT1+M-2),DT1+1),NODRAW; FD2B:=IF(DT1=0 AND GT1<4 AND REF(DT1,1)-GT1<4 AND REF(H,GT1)>=HHV(H,REF(DT1,1)+6) AND L>LLV(L,REF(DT1,1)+M-1),1,0),NODRAW; TTTTTT:= H<REF(H,REF(GT1,1)+1) AND DT1<4,NODRAW; HHHHHH:=REF(LLV(L,10),DT1),NODRAW; //前长后短; FG21:=IF(GT1=0 AND DT1<4 AND H<=REF(H,REF(GT1,1)+1)  ,1,0),NODRAW; FD21:=IF(DT1=0 AND GT1<4  AND L>=REF(L,REF(DT1,1)+1) ,1,0),NODRAW; //前短后长,前低后高(去低); FD231:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND REF(L,DT1)>REF(LLV(L,10),DT1),DT1+1),NODRAW; FG23:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND  GT1-DT1<4 AND REFX(H,1)>REF(H,GT1) AND (REF(H,GT1)<REF(HHV(H,13),GT1) OR REF(FD231,DT1)=0),GT1+1),NODRAW; //前短后长,去2; FG231:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)<REF(L,DT1) AND REF(H,GT1)<REF(HHV(H,10),GT1) ,GT1+1),NODRAW; FD23:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)<REF(L,DT1) AND ( REF(L,DT1)>REF(LLV(L,13),DT1) OR REF(FG231,GT1)=0),DT1+1),NODRAW; //前短后长,去3; FDD23:=REF(H,GT1)<REF(HHV(H,10),GT1) OR REF(FD23,DT1)=0,NODRAW; FD24:=BACKSET(REFX(GT1,1)=0 AND DT1>3 AND GT1>DT1 AND GT1-DT1<4 AND REFX(H,1)<HHV(H,GT1+3) AND REF(L,DT1)>LLV(L,DT1+5),DT1+1),NODRAW; FG24:=BACKSET(REFX(DT1,1)=0 AND GT1>3  AND DT1>GT1 AND DT1-GT1<4 AND REFX(L,1)>LLV(L,DT1+3) AND REF(H,GT1)<HHV(H,GT1+5),GT1+1),NODRAW; //做两次高低点间多余的点 GT2:=BARSLAST(FG21<>1 AND FG23<>1 AND FG231<>1 AND FG24<>1   AND FG2<>1 AND FG2A<>1 AND FG2B<>1 AND GT1=0),NODRAW; DT2:=BARSLAST(FD21<>1 AND FD23<>1 AND FD231<>1 AND FD24<>1  AND FD2<>1 AND FD2A<>1 AND FD2B<>1 AND DT1=0),NODRAW; FG3:=BACKSET(REFX(GT2,1)=0 AND GT2<DT2 AND REFX(H,1)>=REF(H,GT2),GT2+1),NODRAW; FD3:=BACKSET(REFX(DT2,1)=0 AND DT2<GT2 AND REFX(L,1)<=REF(L,DT2),DT2+1),NODRAW; FG31:=IF(GT2=0 AND REF(GT2,1)<DT2 AND H<REF(H,REF(GT2,1)+1),1,0),NODRAW; FD31:=IF(DT2=0 AND REF(DT2,1)<GT2 AND L>REF(L,REF(DT2,1)+1),1,0),NODRAW; GT3:=BARSLAST(GT2=0 AND FG3<>1 AND FG31<>1 ),NODRAW; DT3:=BARSLAST(DT2=0 AND  FD3<>1 AND FD31<>1),NODRAW; FG4:=BACKSET(REFX(GT3,1)=0 AND GT3<DT3 AND REFX(H,1)>=REF(H,GT3),GT3+1),NODRAW; FD4:=BACKSET(REFX(DT3,1)=0 AND DT3<GT3 AND REFX(L,1)<=REF(L,DT3),DT3+1),NODRAW; FG41:=IF(GT3=0 AND REF(GT3,1)<DT3 AND H<REF(H,REF(GT3,1)+1),1,0),NODRAW; FD41:=IF(DT3=0 AND REF(DT3,1)<GT3 AND L>REF(L,REF(DT3,1)+1),1,0),NODRAW; HHH:=GT3=0 AND FG31<>1 AND  FG3<>1,NODRAW; LLL:=DT3=0 AND FD31<>1 AND  FD3<>1,NODRAW; DRAWLINE1(Q&&HHH ,H,Q&&LLL,L,0),COLORGREEN;//绿色 DRAWLINE1(Q&&LLL,L,Q&&HHH ,H,0),COLORRED;//红色
    DRAWNUMBER1(Q&& HHH>LLL, H ,HHH-REF(LLL,1) ,0 );
    DRAWNUMBER(Q&&(HHH||ISLASTBAR&&BARSLAST(LLL)<BARSLAST(HHH)),H+MM*MINPRICE,H-VALUEWHEN(LLL,L),0,COLORYELLOW),FONTSIZE24,ALIGN0; DRAWNUMBER(Q&&(LLL||ISLASTBAR&&BARSLAST(LLL)>BARSLAST(HHH)),L-MM*MINPRICE,L-VALUEWHEN(HHH,H),0,COLORYELLOW),VALIGN0,FONTSIZE24,ALIGN0; DRAWNUMBER(Q&&(HHH||ISLASTBAR&&BARSLAST(LLL)<BARSLAST(HHH)),H+MM*MINPRICE,BARSLAST(LLL)+1,0,COLORWHITE),FONTSIZE24,ALIGN2; DRAWNUMBER(Q&&(LLL||ISLASTBAR&&BARSLAST(LLL)>BARSLAST(HHH)),L-MM*MINPRICE,BARSLAST(HHH)+1,0,COLORWHITE),VALIGN0,FONTSIZE24,ALIGN2;
     
    N1:BACKSET(ISLASTBAR,SUMBARS(HHH,2)),NODRAW; N2:BACKSET(ISLASTBAR,SUMBARS(HHH,1)),NODRAW; //DRAWLINE1(CROSS(N1,0.5),H,CROSS(N2,0.5),H,1),COLORCYAN,LINETHICK2;

 

有思路,想编写各种指标公式,交易模型,选股公式,还原公式的朋友

可联系技术人员 QQ: 262069696  点击在线交流或微信号:cxh99cxh99  进行 有偿收费 编写!

怎么收费,代编流程等详情请点击阅读!

(注:由于人数限制,QQ或微信请选择方便的一个联系我们就行,加好友时请简单备注下您的需求,否则无法通过。谢谢您!)


【字体: 】【打印文章】【查看评论

相关文章

    没有相关内容