For my case, I use multiple timeframe trading a lot and therefore it is important for me to do top down technical analysis from the monthly charts down to the 1hr timeframe to identify where the major support and resistance levels are including trendlines, price channels etc and I have lines drawn up on my charts there to remind me should price. Sign up here with your email. Next « Prev Post. Previous Next Post ». Automatic Support Resistance Channel Afl is a concept in technical analysis that the movement of the price of a security will tend to stop and reverse at certain predetermined price levels. Wondershare filmora 8.7.4 for mac. These levels are denoted by multiple touches of price without a breakthrough of the level. How to pictures from samsung galaxy s3 to mac. Desi accounting software, free download. Here Support and resistance levels using by RSI. Automatic Support Resistance Channel Afl – Automatic Support Resistance Channel Afl is a concept in technical analysis that the movement of the price of a security will tend to stop and reverse at certain predetermined price levels. These levels are denoted by multiple touches of price without a breakthrough of the level.
Auto Support Resistance advance trend lines for Amibroker (AFL)
_SECTION_BEGIN('Advanced Trend Lines');
function GetXSupport(Lo, Percentage, Back)
{
return ((BarCount - 1) - LastValue(TroughBars(Lo, Percentage,Back)));
}
function GetYSupport(Lo, Percentage, Back)
{
return (LastValue(Trough(Lo, Percentage, back)));
}
function GetXResistance(Hi, Percentage, Back)
{
return ((BarCount - 1) -LastValue(PeakBars(Hi, Percentage, Back)));
}
function GetYResistance(Hi, Percentage, Back)
{
return (LastValue(Peak(Hi, Percentage, Back)));
}
function TD_Supply(P)
{
return ( P > Ref(P, 1) AND P > Ref(P, -1) AND P > Ref(C, -2));
}
function TD_Demand(P)
{
return ( P < Ref(P, 1) AND P < Ref(P, -1) AND P < Ref(C, -2));
}
////////////////////////////////////////////////////////////////////////
//Parameters
Percentage = Param('Percentage', 1.5, 0.01, 100. ,0.01);
DrawAllLines = ParamToggle('Draw All Lines?', 'No|Yes');
Lines = Param('Lines?', 1, 1, BarCount-2);
DrawR = ParamList('Resistance Points', 'Off|High to High|High to Low', 1);
DrawS = ParamList('Support Points', 'Off|Low to Low|Low to High', 1);
ShowTDP = ParamToggle('Show TD Pionts', 'No|Yes', 1);
AllOrDownR = ParamToggle('Resistance Direction', 'All|Down');
AllOrUpS = ParamToggle('Support Direction', 'All|Up');
ShowSR = ParamToggle('Show Vert S/R','No|Yes', 1);
SRPer = Param('S/R Percentage', 3, 1);
SRBack = Param('S/R Back', 5, 1);
str = ';
Res = Sup = 0;
Con = 1;
////////////////////////////////////////////////////////////////////////
Main = C;
Con = ConS = ConR = 1;
if(DrawS'Low to Low')
{
Support1 = L;
Support2 = L;
}
else
{
Support1 = L;
Support2 = H;
}
if(DrawR'High to High')
{
Resistance1 = H;
Resistance2 = H;
}
else
{
Resistance1 = H;
Resistance2 = L;
}
////////////////////////////////////////////////////////////////////////
//Plotting Area
Plot(Main, ', IIf(C>O,colorGreen, colorRed), styleCandle);
if(DrawAllLines)
for(i = 2; i<=Lines+1; i++)
{
if(DrawS!='Off')
{
x0 = GetXSupport(Support1, Percentage, i);
x1 = GetXSupport(Support2, Percentage, i-1);
y0 = GetYSupport(Support1, Percentage, i);
y1 = GetYSupport(Support2, Percentage, i-1);
Advanced Support Resistance And Trendlines Aflam
x = LineArray(x0, y0, x1, y1, 1);if(AllOrUpS) ConS = StrToNum(NumToStr(y0 < y1));
if(Con AND ConS)
Plot(x, ', IIf(LastValue(C) < LastValue(x), colorBlue,colorBlue),
styleLine|styleThick);
}
if(DrawR!='Off')
{
x0 = GetXResistance(Resistance1, Percentage, i);
x1 = GetXResistance(Resistance2, Percentage, i-1);
y0 = GetYResistance(Resistance1, Percentage, i);
y1 = GetYResistance(Resistance2, Percentage, i-1);
x = LineArray(x0, y0, x1, y1, 1);
if(AllOrDownR) ConR = y0 > y1;
if(Con AND ConR)
Plot(x, ', IIf(LastValue(C) < LastValue(x), colorRed,colorRed),
styleLine|styleThick);
}
}
else
{
if(DrawS!='Off')
{
x0 = GetXSupport(Support1, Percentage, Lines+1);
x1 = GetXSupport(Support2, Percentage, Lines);
y0 = GetYSupport(Support1, Percentage, Lines+1);
y1 = GetYSupport(Support2, Percentage, Lines);
x = LineArray(x0, y0, x1, y1, 1 );
Sup = LastValue(LinRegSlope(x, Lines+1));
if(AllOrUpS) ConS = y0 < y1;
if(Con AND ConS)
Plot(x, ', IIf(LastValue(C) < LastValue(x), colorBlue,colorBlue),
styleLine|styleThick);
}
if(DrawR!='Off')
{
x0 = GetXResistance(Resistance1, Percentage, Lines+1);
x1 = GetXResistance(Resistance2, Percentage, Lines);
y0 = GetYResistance(Resistance1, Percentage, Lines+1);
y1 = GetYResistance(Resistance2, Percentage, Lines);
x = LineArray(x0, y0, x1, y1, 1 );
Res = LastValue(LinRegSlope(x, Lines+1));
if(AllOrDownR) ConR = y0 > y1;
if(Con AND ConR)
Plot(x, ', IIf(LastValue(C) < LastValue(x), colorRed,colorRed),
styleLine|styleThick);
}
str = 'nR Slope=('+Res+'), S Slope=('+Sup+')';
}
if(ShowTDP)
{
PlotShapes(TD_Supply(H)*shapeSmallCircle, colorRed, 0, H, H*.001);
PlotShapes(TD_Demand(L)*shapeSmallCircle, colorGreen, 0, L, -L*.001);
}
if(ShowSR)
{
for(i=1; i<=SRBack; i++)
{
x0 = GetXSupport(L, SRPer, i);
x1 = BarCount-1;
y0 = GetYSupport(L, SRPer, i);
x = LineArray(x0, y0, x1, y0, 0);
Plot(x, ', IIf(LastValue(C) > x, colorDarkGreen, colorDarkRed),
styleLine|styleDashed|styleThick);
x0 = GetXResistance(H, SRPer, i);
y0 = GetYResistance(H, SRPer, i);
x = LineArray(x0, y0, x1, y0, 0);
Plot(x, ', IIf(LastValue(C) > x, colorDarkGreen, colorDarkRed),
styleLine|styleDashed|styleThick);
}
}
Cached
Title =FullName()+' ({{NAME}})n{{DATE}}n'+'Open: '+O+', Hi: '+H+', Lo: '+L+',Close: '+C+StrFormat(' (%.2f %.2f%)', C-Ref(C, -1), SelectedValue(ROC(C,1)))+str;