// Downloaded From https://www.WiseStockTrader.com _SECTION_BEGIN("Chart Settings"); SetChartOptions(0,chartShowArrows|chartShowDates); SetChartBkColor(ParamColor("Outer Panel",1)); SetChartBkGradientFill(ParamColor("Upper Chart",1),ParamColor("Lower Chart",23)); GraphXSpace=Param("GraphXSpace",10,0,100,1); dec = (Param("Decimals",2,0,7,1)/10)+1; bi = BarIndex(); Lbi = LastValue(BarIndex()); sbi = SelectedValue(bi); x1= BarCount-1; SetBarFillColor (IIf(C>O,19,IIf(CO,51,IIf(CRef(HLAvg,-1),H,L))); za=Zig(zp,pct); pR=Ref(za,-1)Ref(za,1);//pk pS=Ref(za,-1)>za AND zaxr0; Res = xr0>xs0; xsh = 50; xsbi = IIf(Res, xr0-xsh, xs0-xsh);//xstart za=Zig(zp,0.01); pR=Ref(za,-1)Ref(za,1);//pk pS=Ref(za,-1)>za AND za=Ay,XBe,XBi); XD=abs(Dy-Ay)/abs(Xy-Ay)*100; ACi=abs(Cy-Ay)/abs(By-Ay)*100; ACe=abs(By-Cy)/abs(By-Ay)*100; AC = IIf(Cy>=Ay,ACi,ACe); BDi=abs(Dy-By)/abs(By-Cy)*100; BDe=abs(Dy-Cy)/abs(By-Cy)*100; BD = IIf(Dy>=By,BDe,BDi); //Plot Labels and Retracements if(ptx==1) { PlotText(" S ",sx,sy + va2, col,1); PlotText(" T ",tx,ty + va1, col,1); PlotText(" U ",ux,uy + va2, col,1); PlotText(" V ",vx,vy + va1, col,1); PlotText(" W ",IIf(sup,xr2,xs2),wy + va2, col,1); PlotText(" X = "+NumToStr(WX,1.1)+" % ",xx,xy + va1, col,1); PlotText(" A = "+NumToStr(XA,1.1)+" % ",ax,ay + va2, col,1); PlotText(" B = "+NumToStr(AB,1.1)+" % ",bx,by + va1, col,1); PlotText(" C = "+NumToStr(BC,1.1)+" % ",cx,cy + va2, col,1); PlotText(" D = "+NumToStr(CD,1.1)+" % ",dx,dy + va1, colp,1); PlotText(" "+NumToStr(de,1.1)+"%",(dx+x1)/2,(dy+d1)/2,42,1); PlotText(" "+NumToStr(ce,1.1)+"%",(cx+x1)/2,(cy+c1)/2,42,1); PlotText(" "+NumToStr(XB,1.1)+" %",((xx+bx)/2)-2,(xy+by)/2, 40,1); PlotText(" "+NumToStr(XD,1.1)+" %",(xx+dx)/2,(xy+dy)/2, 34,1); PlotText(" "+NumToStr(AC,1.1)+" %",(ax+cx)/2-2,(ay+cy)/2, 10,1); PlotText(" "+NumToStr(BD,1.1)+" %",((bx+dx)/2)-2,(by+dy)/2, 10,1); } //Plot Hi-Hi Lo-Lo Lines if(ppa==1) { Plot(LineArray(dx,dy,x1,d1,0),"",42,32|4096); Plot(LineArray(cx,cy,x1,c1,0),"",42,32|4096); Plot(LineArray(sx,sy,ax,ay,1),"",35,41|4096|2048); Plot(LineArray(ux,uy,ax,ay,1),"",25,41|4096|2048); Plot(LineArray(bx,by,dx,dy,0),"",34,32|4096); Plot(LineArray(ax,ay,cx,cy,0),"",34,32|4096); Plot(LineArray(xx,xy,dx,dy,0),"",32,32|4096); Plot(LineArray(xx,xy,bx,by,0),"",32,32|4096); } //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx //Count Bars Between Pivots xXA=xsbi+abs(ax-xx); xXB=xsbi+abs(bx-xx); xXC=xsbi+abs(cx-xx); xXD=xsbi+abs(dx-xx); xAB=xsbi+abs(bx-ax); xAC=xsbi+abs(cx-ax); xAD=xsbi+abs(dx-ax); xBC=xsbi+abs(cx-bx); xBD=xsbi+abs(dx-bx); xCD=xsbi+abs(dx-cx); //============================== if(plx==1) { bc=IIf(sup,sbi-xs0,sbi-xr0); tp=IIf(sup,ys0-Vsh,yr0+Vsh); if(Res==1) { col=42; Plot(bi==xCD, "", colorYellow, styleHistogram|styleOwnScale,0,1,xsh);//sample code if lines are preferred PlotText("XA\n | "+NumToStr(abs(xx-ax)-bc,1),xxa+xsh,tp,col,1); PlotText("XB\n | "+NumToStr(abs(bx-xx)-bc,1),xxb+xsh,tp,col,1); PlotText("XC\n | "+NumToStr(abs(cx-xx)-bc,1),xxc+xsh,tp,col,1); PlotText("XD\n | "+NumToStr(abs(xx-dx)-bc,1),xxd+xsh,tp,col,1); PlotText("AB\n | "+NumToStr(abs(bx-ax)-bc,1),xab+xsh,tp,col,1); PlotText("AC\n | "+NumToStr(abs(cx-ax)-bc,1),xac+xsh,tp,col,1); PlotText("AD\n | "+NumToStr(abs(dx-ax)-bc,1),xad+xsh,tp,col,1); PlotText("BC\n | "+NumToStr(abs(cx-bx)-bc,1),xbc+xsh,tp,col,1); PlotText("BD\n | "+NumToStr(abs(dx-bx)-bc,1),xbd+xsh,tp,col,1); PlotText("CD\n | "+NumToStr(abs(dx-cx)-bc,1),xcd+xsh,tp,col,1); } if(Sup==1) { col=34; Plot(bi==xCD, "", colorYellow, styleHistogram|styleOwnScale,0,1,xsh);//sample code if lines are preferred PlotText("| "+NumToStr(abs(xx-ax)-bc,1)+"\nXA",xxa+xsh,tp,col,1); PlotText("| "+NumToStr(abs(bx-xx)-bc,1)+"\nXB",xxb+xsh,tp,col,1); PlotText("| "+NumToStr(abs(cx-xx)-bc,1)+"\nXC",xxc+xsh,tp,col,1); PlotText("| "+NumToStr(abs(xx-dx)-bc,1)+"\nXD",xxd+xsh,tp,col,1); PlotText("| "+NumToStr(abs(bx-ax)-bc,1)+"\nAB",xab+xsh,tp,col,1); PlotText("| "+NumToStr(abs(cx-ax)-bc,1)+"\nAC",xac+xsh,tp,col,1); PlotText("| "+NumToStr(abs(dx-ax)-bc,1)+"\nAD",xad+xsh,tp,col,1); PlotText("| "+NumToStr(abs(cx-bx)-bc,1)+"\nBC",xbc+xsh,tp,col,1); PlotText("| "+NumToStr(abs(dx-bx)-bc,1)+"\nBD",xbd+xsh,tp,col,1); PlotText("| "+NumToStr(abs(dx-cx)-bc,1)+"\nCD",xcd+xsh,tp,col,1); } } //example of plotting line with start at a future point f50= ys0+(abs(yr0-ys0)*0.50); Plot(LineArray(xxb,f50,xxd,f50,0),"",29,32,0,0,xsh); //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Title = EncodeColor(55)+ Title = Name() + " " + EncodeColor(32) + Date() + " " + EncodeColor(5) + "{{INTERVAL}} " + EncodeColor(55)+ " Open = "+ EncodeColor(52)+ WriteVal(O,dec) + EncodeColor(55)+ " High = "+ EncodeColor(5) + WriteVal(H,dec) + EncodeColor(55)+ " Low = "+ EncodeColor(32)+ WriteVal(L,dec) + EncodeColor(55)+ " Close = "+ EncodeColor(52)+ WriteVal(C,dec)+ EncodeColor(55)+ " Volume = "+ EncodeColor(52)+ WriteVal(V,1);