文华财经周高低点自动画线指标,自动识别每周高低点与开盘价并生成红绿水平线,辅助判断关键支撑压力位与突破信号,主图清晰直观,适用于文华WH6/WH7,期货股票通用,源码可直接导入使用。

HH:=”WEEK$1$HIGH”;
LL:=”WEEK$1$LOW”;
OO:=”WEEK$1$O”;
NN:=BACKSET(ISLASTBAR,BARSLAST(WEEKDAY<REF(WEEKDAY,1))+1),NODRAW;
TT:=BARSLAST(WEEKDAY<REF(WEEKDAY,1))+1;
CC1:=REF(HHVBARS(H,TT),TT);
CC2:=REF(LLVBARS(L,TT),TT);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)>HH,HH,COLORRED);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)>HH,HH,0,-CC1-1,0,COLORRED);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)>LL,LL,COLORRED);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)>LL,LL,0,-CC2-1,0,COLORRED);
DRAWTEXT(ISLASTBAR&&C>HH,HH,’周高’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>LL,LL,’周低’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>OO,OO,’上周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),’本周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
//DRAWTEXT(ISLASTBAR&&C>VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),’当日开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWSL(ISLASTBAR&&C>OO,OO,0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),2)+1,0,COLORRED);
DRAWSL(ISLASTBAR&&C>VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),1)+1,0,COLORRED);
DRAWSL(ISLASTBAR&&C>VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),0,-DAYBARPOS+1,0,COLORRED);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)<HH,HH,COLORGREEN);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)<HH,HH,0,-CC1-1,0,COLORGREEN);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)<LL,LL,COLORGREEN);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)<LL,LL,0,-CC2-1,0,COLORGREEN);
DRAWTEXT(ISLASTBAR&&C<HH,HH,’周高’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<LL,LL,’周低’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<OO,OO,’上周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),’本周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
//DRAWTEXT(ISLASTBAR&&C<VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),’当日开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWSL(ISLASTBAR&&C<OO,OO,0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),2)+1,0,COLORGREEN);
DRAWSL(ISLASTBAR&&C<VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),1)+1,0,COLORGREEN);
DRAWSL(ISLASTBAR&&C<VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),0,-DAYBARPOS+1,0,COLORGREEN);
使用技巧:仅供参考
红色线表示价格在其上方(偏多区域),绿色线表示价格在其下方(偏空区域)
周高点(红色/绿色“周高”标注)构成压力参考,价格有效突破红色周高可视为多头信号;周低点构成支撑参考
建议配合周线级别趋势判断,关键价位突破后需结合量能确认有效性,避免震荡行情中的假突破
完整源码:
HH:=”WEEK$1$HIGH”;
LL:=”WEEK$1$LOW”;
OO:=”WEEK$1$O”;
NN:=BACKSET(ISLASTBAR,BARSLAST(WEEKDAY<REF(WEEKDAY,1))+1),NODRAW;
TT:=BARSLAST(WEEKDAY<REF(WEEKDAY,1))+1;
CC1:=REF(HHVBARS(H,TT),TT);
CC2:=REF(LLVBARS(L,TT),TT);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)>HH,HH,COLORRED);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)>HH,HH,0,-CC1-1,0,COLORRED);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)>LL,LL,COLORRED);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)>LL,LL,0,-CC2-1,0,COLORRED);
DRAWTEXT(ISLASTBAR&&C>HH,HH,’周高’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>LL,LL,’周低’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>OO,OO,’上周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWTEXT(ISLASTBAR&&C>VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),’本周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
//DRAWTEXT(ISLASTBAR&&C>VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),’当日开’),ALIGN0,VALIGN1,FONTSIZE14,COLORRED;
DRAWSL(ISLASTBAR&&C>OO,OO,0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),2)+1,0,COLORRED);
DRAWSL(ISLASTBAR&&C>VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),1)+1,0,COLORRED);
DRAWSL(ISLASTBAR&&C>VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),0,-DAYBARPOS+1,0,COLORRED);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)<HH,HH,COLORGREEN);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)<HH,HH,0,-CC1-1,0,COLORGREEN);
DRAWHORIZONTALLINE(CROSS(NN=1,0.5)&&REFX1(C,1000)<LL,LL,COLORGREEN);
DRAWSL(CROSS(NN=1,0.5)&&REFX1(C,1000)<LL,LL,0,-CC2-1,0,COLORGREEN);
DRAWTEXT(ISLASTBAR&&C<HH,HH,’周高’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<LL,LL,’周低’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<OO,OO,’上周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWTEXT(ISLASTBAR&&C<VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),’本周开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
//DRAWTEXT(ISLASTBAR&&C<VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),’当日开’),ALIGN0,VALIGN1,FONTSIZE14,COLORGREEN;
DRAWSL(ISLASTBAR&&C<OO,OO,0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),2)+1,0,COLORGREEN);
DRAWSL(ISLASTBAR&&C<VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),VALUEWHEN(ISWEEKEND=0&&REF(ISWEEKEND,1),O),0,-SUMBARS(ISWEEKEND=0&&REF(ISWEEKEND,1),1)+1,0,COLORGREEN);
DRAWSL(ISLASTBAR&&C<VALUEWHEN(DAYBARPOS=1,O),VALUEWHEN(DAYBARPOS=1,O),0,-DAYBARPOS+1,0,COLORGREEN);
