correct the afl

#1
can some one corrrect this afl-{- Filename: Trend for All Markets 2 -}

var var
FastLen, MMLen, SlowLen, Length, StDv, Average1, Average2, Smooth, i: integer; FastLen, MMLen, SlowLen, Length, StDv, Average1, Average2, Smooth, i: integer;
xAvg1, bbMacd, xAvg21, xAvg22, xAvg23, xAvg31, xAvg32, xAvg33: TSeries; xAvg1, bbMacd, xAvg21, xAvg22, xAvg23, xAvg31, xAvg32, xAvg33: tseries;
sDev, upperBand, lowerBand, t3Trnd, t3TrndSmth: TSeries; sDev, upper band, lower band, t3Trnd, t3TrndSmth: tseries;
begin beginning
{ Parameters } Parameters {}
FastLen := CreateParameterInteger('FastLen', 1, 999, 12, true); FastLen: integer parameter = CreateObject ("FastLen ', 1, 999, 12, true);
MMLen := CreateParameterInteger('MMLen', 1, 999, 34, true); MMLen: integer parameter = CreateObject ("MMLen ', 1, 999, 34, true);
SlowLen := CreateParameterInteger('SlowLen', 1, 999, 26, true); SlowLen: integer parameter = CreateObject ("SlowLen ', 1, 999, 26, true);
Length := CreateParameterInteger('Length', 1, 999, 10, true); Length: integer parameter = CreateObject ("Length", 1, 999, 10, true);
StDv := CreateParameterInteger('StDv', 1, 999, 1, true); StDv: integer parameter = CreateObject ("StDv ', 1, 999, 1, true);
Average1 := CreateParameterInteger('Average1', 1, 999, 32, true); Average1: integer parameter = CreateObject ("Average1 ', 1, 999, 32, true);
Average2 := CreateParameterInteger('Average2', 1, 999, 5, true); Average2: integer parameter = CreateObject ("Average2 ', 1, 999, 5, true);
Smooth := CreateParameterInteger('Smooth', 1, 999, 5, true); Smooth: integer parameter = CreateObject ("Smooth", 1, 999, 5, true);

{ Indicator eigenschappen } Indicator properties {}
with Indicator do do with Indicator
begin beginning
RequiredBars := 5*(SlowLen+Length+Average1+Average2); required bars: = 5 * (Length + + SlowLen Average1 Average2 +);
end; end;

{ Berekening } {Calculation}
bbMacd := MACD(Close, FastLen, SlowLen); bbMacd: = MACD (Close, FastLen, SlowLen);
xAvg1 := MA(bbMacd, maExponential, Length); xAvg1: = MA (bbMacd, maExponential, Length);
sDev := StdDev(bbMacd, Length); sDev: = StdDev (bbMacd, Length);
upperBand := AddSeries(xAvg1, MultiplySeriesBy(sDev, StDv)); upper band: AddSeries = (xAvg1, MultiplySeriesBy (sDev, StDv));
lowerBand := SubtractSeries(xAvg1, MultiplySeriesBy(sDev, StDv)); lower band: SubtractSeries = (xAvg1, MultiplySeriesBy (sDev, StDv));

xAvg21 := MA(Momentum(Close, 1), maExponential, Average1); xAvg21: = MA (Momentum (Close, 1), maExponential, Average1);
xAvg22 := MA(xAvg21, maExponential, Average2); xAvg22: = MA (xAvg21, maExponential, Average2);
xAvg23 := MA(xAvg22, maExponential, 1); xAvg23: = MA (xAvg22, maExponential, 1);
xAvg31 := MA(AbsSeries(Momentum(Close, 1)), maExponential, Average1); xAvg31: = MA (AbsSeries (Momentum (Close, 1)), maExponential, Average1);
xAvg32 := MA(xAvg31, maExponential, Average2); xAvg32: = MA (xAvg31, maExponential, Average2);
xAvg33 := MA(xAvg32, maExponential, 1); xAvg33: = MA (xAvg32, maExponential, 1);

t3Trnd := DivideSeries(xAvg23, xAvg33); t3Trnd: = divide series (xAvg23, xAvg33);
t3TrndSmth := MA(t3Trnd, maExponential, Smooth); t3TrndSmth: = MA (t3Trnd, maExponential, Smooth);
for i:=0 to BarCount-1 do for i: = 0 to BarCount-1 do
begin beginning
if IsValid(t3TrndSmth) and IsValid(bbMacd) then if isvalid (t3TrndSmth ) and isvalid (bbMacd ) then
begin beginning
if (t3Trnd >= t3TrndSmth) and (bbMacd > lowerBand) then if (t3Trnd > = t3TrndSmth ) and (bbMacd > lower band ) then
SetBarColor(1, i, clLime) SetBarColor (1, i, clLime)
else if (t3Trnd <= t3TrndSmth) and (bbMacd < upperBand) then else if (t3Trnd <= t3TrndSmth ) and (bbMacd <upper band ) then
SetBarColor(1, i, clRed); SetBarColor (1, i, clRed);

if t3Trnd < lowerBand then SetBarColor(0, i, RGB(255, 0, 0)) else if t3Trnd <lower band then SetBarColor (0, i, RGB (255, 0, 0)) else
if t3Trnd < xAvg1 then SetBarColor(0, i, RGB(160, 0, 0)) else if t3Trnd <xAvg1 then SetBarColor (0, i, RGB (160, 0, 0)) else
if t3Trnd > upperBand then SetBarColor(0, i, RGB(0, 255, 0)) else if t3Trnd > upper band then SetBarColor (0, i, RGB (0, 255, 0)) else
SetBarColor(0, i, RGB(0, 160, 0)); SetBarColor (0, i, RGB (0, 160, 0));
end; end;
end; end;

{ Weergave } {Display}
with CreateLine(SubtractSeries(xAvg1, t3Trnd)) do line with CreateObject (SubtractSeries (xAvg1, t3Trnd)) do
begin beginning
Name := 'xAvg1-t3Trnd'; Name: = 'xAvg1 t3Trnd-';
Color := clSilver; Color: = clSilver;
LineType := ltBar; Line Type: = ltBar;
Width := 2; Width: = 2;
end; end;
with CreateLine(FillSeries(CreateSeries(BarCount), 0)) do CreateObject line with (fill series (series CreateObject (BarCount), 0)) do
begin beginning
Name := '0'; Name: = '0 ';
Color := clWhite; Color: = clWhite;
LineType := ltDot; Line Type: = ltDot;
Width := 2; Width: = 2;
end; end;
end. end.
 

Similar threads