e1=EMA(C,5);
e2=EMA(C,20);
Plot(C,"Close",3,64);
Plot(e1,"",6,1);
Plot(e2,"",4,1);
b1=Cross(e1,e2);
s1=Cross(e2,e1);
Buysetup=Flip(b1,s1);
Shortsetup=Flip(s1,b1);
trend=IIf(BarsSince(Buysetup)>BarsSince(Shortsetup ),1,0);
L2=e2;
H2=e2;
s5d=TrendSL=IIf(trend==1,L2,H2);
t1=Param("Set Target points",15,5,100,1);
BOS=IIf(e1>e2,1,-1);
Price=ValueWhen(IIf(Bos==1,b1,s1),C);
T1=IIf(BOS==1,(Price+t1),(Price-t1));
buyBars=BarsSince(Cross(e1,e2));
sellBars=BarsSince(Cross(e2,e1));
DisPds=LastValue(IIf(Bos==1,buybars,sellbars))+1;
BackPds=0;
T1A=ValueWhen(DisPds,Ref(Ref(T1,-BackPds),BackPds));
Plot(T1A,"Target",IIf(Bos==1,5,4),24);
EndDay = ParamTime( "No trade after ", "15:00:00" );
EndDay2 = ParamTime( "close position ", "15:15:00" );
tn = TimeNum();
dn = DateNum();
Exit = Ref( tn < EndDay2, -1 ) AND ( tn >= EndDay2 OR dn < Ref( dn, 1 ) );
Buy = B1 AND Tn<EndDay;
Short= S1 AND Tn<EndDay;
Sell=Shortsetup OR Cross(t1a,C) OR exit;
Cover=Buysetup OR Cross(C,t1a) OR exit;
Buy = ExRem(Buy,Sell);
Sell = ExRem(Sell,Buy);
Short = ExRem(Short,Cover);
Cover=ExRem(Cover,Short);
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorGreen, 0,Low,-15);
PlotShapes(IIf(Sell, shapeHollowDownArrow, shapeNone),colorOrange, 0,High,-25);
PlotShapes(IIf(Cover, shapeHollowUpArrow, shapeNone),colorLime, 0,Low,-25);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorRed, 0,High,-15);
barcomplete = BarIndex() < LastValue(BarIndex());
//AlertIf( barcomplete AND Buy, "", "NMA-Buy ", 1 );
AlertIf( barcomplete AND Buy, "SOUND C:\\Windows\\Media\\notify.wav", "Audio alert", 1 );
//AlertIf( barcomplete AND Sell, "", "NMA-Sell", 2 );
AlertIf( barcomplete AND Sell, "SOUND C:\\Windows\\Media\\chimes.wav", "Audio alert", 2 );
//AlertIf( barcomplete AND Short, "", "NMA-Short", 3 );
AlertIf( barcomplete AND Short, "SOUND C:\\Windows\\Media\\chord.wav", "Audio alert", 3 );
//AlertIf( barcomplete AND Cover, "", "NMA-Cover", 4 );
AlertIf( barcomplete AND Cover, "SOUND C:\\Windows\\Media\\ringout.wav", "Audio alert", 4 );
side = 3;//
dist = Param("text up-dn",0.1,0,2,0.1);
for( i = 1; i < BarCount; i++ )
{
if(i+side== BarCount) PlotText( "T.Stop " + e2[ i ], i+5, e2[ i ]-dist[i], colorLime );
}