// Downloaded From https://www.WiseStockTrader.com
_SECTION_BEGIN("price");
SetChartOptions(0,chartShowArrows|chartShowDates);
Plot( C, "close", ParamColor("color", colorBlack ), styleNoTitle | ParamStyle("style") | GetPriceStyle() );
Plot( Open, "open", 0, stylehidden );
Plot(Close, "close", 0, stylehidden );
Plot(High, "high", 0, stylehidden );
Plot(Low, "low", 0, stylehidden );
_SECTION_END();

_SECTION_BEGIN("zzt");
para = ParamToggle("plot zz0","off,on");
cbar = Param("cbar",4,2,50,1);
per = Param("per",5,1,30,1);
zz0 = Zig(C,per);
zz1 = Ref( zz0, -1 );
zz2 = Ref( zz0, -2 );
tr = ValueWhen(zz0 > zz1 AND zz1 < zz2, zz1);
pk = ValueWhen(zz0 < zz1 AND zz1 > zz2, zz1);
pu = tr + 0.01 * abs(tr)*per;
pd = pk - 0.01 * abs(pk)*per;
zzt = IIf(C>= pu AND zz0 > zz1, 1,
IIf(C<= pd AND zz0 < zz1, -1, 0 ) );
zzt= ValueWhen( zzt != 0, zzt );
colorp2= IIf((C>O)OR(C<O),colorWhite,colorYellow);
Plot(IIf(para,zz0,Null)," ",colorWhite,styleLine);
pr=PeakBars(C,5)==0;
ps =TroughBars(C,5)==0;
Plot(pr,"",colorRed,styleArea|styleOwnScale);
Plot(ps,"",colorGreen,styleArea|styleHistogram|styleOwnScale);
rf=ValueWhen(pr,C);
sf=ValueWhen(ps,C);
rf1 = IIf(rf AND BarsSince(pr) <=cbar,rf,Null);
sf1 = IIf(sf AND BarsSince(ps ) <=cbar,sf,Null);
Plot(rf1,"",colorWhite,styleDots | styleNoLine);
Plot(sf1,"",colorWhite,styleDots | styleNoLine);
Plot(rf,"",colorBlack,40+16);
Plot(sf,"",colorBlack,40+16);
PlotShapes(IIf(pr, shapeSmallSquare,shapeNone),colorYellow,0,C,10);
PlotShapes(shapeSmallCircle*pr,colorBlack,0,C,10);
PlotShapes(IIf(ps, shapeSmallSquare,shapeNone),colorYellow,0,C,-10);
PlotShapes(shapeSmallCircle*ps,colorBlack,0,C,-10);
numbars = SelectedValue(Cum(Status("barvisible")));
fraction= IIf(StrRight(Name(),3) == "",3.2,3.2);
hts = Param ("text shift", -50,-100,100,10);
PlotText(">>>" + WriteVal(C,fraction),
SelectedValue(BarIndex())-(numbars/hts),SelectedValue(C),2);
PlotText("" + WriteVal(rf,fraction),
SelectedValue(BarIndex()+2)-(numbars/hts),SelectedValue(rf),colorCustom12);
PlotText("" + WriteVal(sf,fraction),
SelectedValue(BarIndex()+2)-(numbars/hts),SelectedValue(sf),5);
_SECTION_END();

_SECTION_BEGIN("Price");
SetChartOptions(0,chartShowArrows|chartShowDates);
Plot( C, "Close", ParamColor("Color", colorBlack ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
Plot( Open, "Open", 0, styleHidden );
Plot(Close, "Close", 0, styleHidden );
Plot(High, "High", 0, styleHidden );
Plot(Low, "Low", 0, styleHidden );
_SECTION_END();

_SECTION_BEGIN("TD Fractl LINE");
strength = Param("Strength",1,1,15,1);
pR=PeakBars(RSI(14),strength)==0;
PlotShapes(shapeSmallCircle*pR,colorWhite,0,H,0);
_SECTION_END();

_SECTION_BEGIN("TD Fractl LINE");
pS =TroughBars(RSI(14),strength)==0;
PlotShapes(shapeSmallCircle*pS,colorYellow,0,L,0);
_SECTION_END();

_SECTION_BEGIN("Price Risistance");
RT=SelectedValue(ValueWhen(pR,H));
ST=SelectedValue(ValueWhen(pS,L));
Plot(RT,"",colorBlue,styleThick);
Plot(ST,"",colorYellow,styleThick);
_SECTION_END();

_SECTION_BEGIN("TD Fractl LINE");
pR=PeakBars(RSI(14),strength)==0;
pivothigh = Ref(pR,-1)<pR AND pR>Ref(pR,1);
y0=SelectedValue(ValueWhen(pivothigh,H,2));
y1=SelectedValue(ValueWhen(pivothigh,H,1));
x0=SelectedValue(ValueWhen(pivothigh,Cum( 1)-1,2));
x1=SelectedValue(ValueWhen(pivothigh,Cum( 1)-1,1));
LineA=LineArray(x0,y0,x1,y1,1);
Plot(LineA,"",colorWhite,4+8,styleNoLabel);
_SECTION_END();

_SECTION_BEGIN("TD Fractl LINE");
pS =TroughBars(RSI(14),strength)==0;
pivotlow = Ref(pS,-1)<pS AND pS>Ref(pS,1);
yt0=SelectedValue(ValueWhen(pivotlow,L,2));
yt1=SelectedValue(ValueWhen(pivotlow,L,1));
xt0=SelectedValue(ValueWhen(pivotlow,Cum( 1)-1,2));
xt1=SelectedValue(ValueWhen(pivotlow,Cum( 1)-1,1));
LineB=LineArray(xt0,yt0,xt1,yt1,1);
Plot(LineB,"",colorWhite,4+8,styleNoLabel);
_SECTION_END();

_SECTION_BEGIN("EMA1");
P = ParamField("Price field",-1);
_SECTION_END();

PI = atan(1.00) * 4;
periods = 30;
HighHigh = HHV(H, periods);
LowLow = LLV(L, periods);
range = 25 / (HighHigh - LowLow) * LowLow;
MA1= EMA(C,200);
x1_MA = 0;
x2_MA= 1;
y1_MA= 0;
y2_MA= (Ref(MA1, -1) - MA1) / Avg * range;
c_MA= sqrt((x2_MA- x1_MA)*(x2_MA- x1_MA) + (y2_MA- y1_MA)*(y2_MA- y1_MA));
angle_MA= round(180 * acos((x2_MA - x1_MA)/c_MA) / PI);
angle_MA= IIf(y2_MA> 0, - angle_MA, angle_MA);
Col=IIf(angle_MA>3,colorWhite,IIf(angle_MA<(-3),colorRed,colorBlack));
Plot(EMA( P,200), _DEFAULT_NAME(), Col, ParamStyle("Style") );
Buy1=Cross(C,LineA) AND RSI(14)>60 AND angle_MA>=1;
Buy2=Cross(C,RT)AND RSI(14)>60 AND angle_MA>=1;
Buy=Buy1 OR Buy2;
Sell1=Cross(LineB,C)AND RSI(14)<40 AND angle_MA<=(-1);
Sell2=Cross(RT,C)AND RSI(14)<40 AND angle_MA<=(-1);
Sell=Sell1 OR Sell2;
PlotShapes(IIf(Buy,shapeSmallUpTriangle,shapeNone),colorBlue,0,L,-20);
PlotShapes(IIf(Sell,shapeSmallDownTriangle, shapeNone),colorYellow,0,H,-20);

_SECTION_BEGIN("Exploration");
Filter=Close;
Var = WriteIf(Buy,"BUY",WriteIf(Sell,"SELL",""));
AddTextColumn( Var , "Buy/Sell", 1.2 , colorWhite, IIf( Buy, colorBlue,IIf(Sell,colorRed,colorWhite) ));
AddColumn(angle_MA,"AnGle",1.4,colorBlue);
_SECTION_END();

if (SelectedValue(Buy)==1) Say("Super Move");
if (SelectedValue(Sell)==1) Say("Weake Move");

_SECTION_BEGIN("T TREND");
{ GfxSelectFont("Bernard MT Condensed",12, 800 );
GfxSetBkMode(1);
GfxSetTextColor(colorBlack);
GfxTextOut("RSI="+RSI(14)+" ",925,30);
}
_SECTION_END();


_SECTION_BEGIN("T TREND");
{ GfxSelectFont("Bernard MT Condensed",12, 800 );
GfxSetBkMode(1);
GfxSetTextColor(colorWhite);
GfxTextOut("Angle="+angle_MA+"% ",925,55);
}
_SECTION_END();
SetChartBkGradientFill( ParamColor("BgTop", ColorRGB( 172,172,172 )),

ParamColor("BgBottom", ColorRGB( 172,172,172 )),ParamColor("titleblock",ColorRGB( 172,172,172 )));