.

Pivot Trading - Amibroker AFL Code

Click Image To Enlarge. Please Rate And Comment.

Pivot Trading

_SECTION_BEGIN("PriceCandle");
SetChartOptions(0,chartShowArrows|chartShowDates);
Plot(MA(Close,3),"",IIf(MA(C,3) > Ref(MA(C,3),-1),colorGreen,colorRed),styleThick);
Plot(C,"", IIf(PDI(7) > MDI(7),colorGreen,colorRed) , styleCandle); 
_SECTION_END();


_SECTION_BEGIN("SIMPLE_D-CAMS_SHOW");
//---- pivot points 

DayH = TimeFrameGetPrice("H", inDaily, -1);// yesterdays high 
DayL = TimeFrameGetPrice("L", inDaily, -1);//low 
DayC = TimeFrameGetPrice("C", inDaily, -1);//close 
DayO = TimeFrameGetPrice("O", inDaily);// current day open 
HiDay = TimeFrameGetPrice("H", inDaily); 
LoDay = TimeFrameGetPrice("L", inDaily);


TimeFrameSet( inDaily );

R6 = (DayH / DayL) * DayC * 1.002;
R5 = (DayH / DayL) * DayC;
R4 = (((DayH / DayL) + 0.83) / 1.83) * DayC;
R3 = ( ( (DayH / DayL) + 2.66) / 3.66) * DayC;
R2 = ( ( (DayH / DayL) + 4.5) / 5.5) * DayC;
R1 = ( ( (DayH / DayL) + 10) / 11) * DayC;
 
S1 = (2- ( ( (DayH / DayL) + 10) / 11)) * DayC;
S2 = (2-( (DayH / DayL) + 4.5) / 5.5) * DayC;
S3 = (2-(( DayH / DayL) + 2.66) / 3.66) * DayC;
S4 = (2-( (DayH / DayL) + 0.83) / 1.83) * DayC;
S5 = (2-( DayH / DayL)) * DayC;
S6 = (2-( DayH / DayL)) * DayC * 0.998;


ShowR5 = ParamToggle("R5", "No|Yes");
R5Color=ParamColor( "R5Color", colorGold );
ShowR4 = ParamToggle("R4", "No|Yes");
R4Color=ParamColor( "R4Color", colorPink );
ShowR3 = ParamToggle("R3", "No|Yes");
R3Color=ParamColor( "R3Color", colorOrange );
ShowR2 = ParamToggle("R2", "No|Yes");
R2Color=ParamColor( "R2Color", colorDarkRed );
ShowR1 = ParamToggle("R1", "No|Yes");
R1Color=ParamColor( "R1Color", colorRed );

ShowS1 = ParamToggle("S1", "No|Yes");
S1Color=ParamColor( "S1Color", colorGreen );
ShowS2 = ParamToggle("S2", "No|Yes");
S2Color=ParamColor( "S2Color", colorBrightGreen );
ShowS3 = ParamToggle("S3", "No|Yes");
S3Color=ParamColor( "S3Color", colorBlue );
ShowS4 = ParamToggle("S4", "No|Yes");
S4Color=ParamColor( "S4Color", colorViolet );
ShowS5 = ParamToggle("S5", "No|Yes");
S5Color=ParamColor( "S5Color", colorAqua );

//Shadowcolor = ParamColor("Shadow",ColorRGB(40,30,20));
//Shadowcolor1 = ParamColor("Shadow1",ColorRGB(20,30,20));
//Shadowcolor2 = ParamColor("Shadow2",ColorRGB(30,40,0));

//style = styleDots | styleThick + styleNoRescale ; 
style = styleLine + styleNoRescale ; 

if(ShowR5 == True)
Plot(R5, "R5",R5Color,style);
if(ShowR4 == True) 
Plot(R4, "R4",R4Color,Style);
if(ShowR3 == True)
Plot(R3, "R3",R3Color,style);
if(ShowR2 == True) 
Plot(R2, "R2",R2Color,styleLine);
if(ShowR1 == True)
Plot(R1, "R1",R1Color,styleLine);

if(ShowS1 == True)
Plot(S1, "S1",S1Color,styleLine);
if(ShowS2 == True)
Plot(S2, "S2",S2Color,styleLine);
if(ShowS3 == True)
Plot(S3, "S3",S3Color,style);
if(ShowS4 == True) 
Plot(S4, "S4",S4Color,style);
if(ShowS5 == True) 
Plot(S5, "S5",S5Color,style); 

ToolTip=StrFormat("Open: %g\nHigh: %g\nLow: %g\nClose: %g (%.1f%%)\nVolume: "+NumToStr( V, 1 ), O, H, L, C, SelectedValue( ROC( C, 1)));
TimeFrameRestore();
_SECTION_END();


_SECTION_BEGIN("Fibo for all bars");

TimeFrameSet( inDaily ); 
DH=Ref(H,-1); 
DL=Ref(L,-1);
DC=Ref(C,-1);


pd = (O+ DH+ DL + DC )/4;
sd1 = (2*pd)-DH;
sd2 = pd -(DH - DL);
sd3 = Sd1 - (DH-DL); 
rd1 = (2*pd)-DL;
rd2 = pd +(DH -DL);
rd3 = rd1 +(DH-DL);

H4 =  (dH - dL) * 1.1 / 2 + dC;
H3 = (dH - dL) * 1.1 / 4 + dC;
h2 = (dH - dL) * 1.1 / 6 + dC;
H1 = (dH - dL) * 1.1 / 12 + dC;
L1 = dC - (dH - dL) * 1.1 / 12;
L2 = dC - (dH - dL) * 1.1 / 6;
L3 = dC - (dH - dL) * 1.1 / 4;
L4 = dC - (dH - dL) * 1.1 / 2 ;



//Plot (pd,"Pivot",colorBlue,styleDots);
//Plot (rd1," R1 ",35,styleDots);
//Plot (rd2," R2 ",35,styleDots);
//Plot (rd3," R3 ",35,styleDots);

//Plot (sd1," S1 ",4,styleDots);
//Plot (Sd2," S2 ",4,styleDots);
//Plot (Sd3," S3 ",4,8+16);
/*
style = IIf(ParamList("Chart style", "styleCandle|styleBar")=="styleCandle",64,128+4);
Plot (C,Date ()+" close",1,style); //ENABLE THIS TO HAVE CANDLES AS WELL
*/


tgt_up = H4*5/1000 + H4;
tgt_up2 = H4*10/1000 + H4;
tgt_dn = L4-L4*5/1000;
tgt_dn2 = L4-L4*10/1000;

TimeFrameRestore();
Title = EncodeColor(colorWhite)+ "" + " - " +  Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
 "  - " + Date() +" - "
//+ WriteIf(Col_action==colorGreen, EncodeColor(colorGreen)+"stay LONG","")+ WriteIf(Col_action==colorRed, EncodeColor(colorRed)+"stay SHORT","")+  WriteIf(Col_action==colorBlack, EncodeColor(colorYellow)+"No Trend","")+"\n"
+ "Vol= "+ WriteVal(V) +WriteIf ( V > MA(V,26) ,EncodeColor(colorGreen)+"  UP "+ (V/MA(V,26))*100 + " %", EncodeColor(colorRed)+"  DOWN "+ (V/MA(V,26))*100 + " %")
+ EncodeColor(colorGreen)+   "\n H4 : "+ EncodeColor(colorWhite)+H4+ EncodeColor(colorGreen)+   "    tgt : "+ EncodeColor(colorWhite)+tgt_up +EncodeColor(colorGreen)+   "    tgt2 : "+ EncodeColor(colorWhite)+tgt_up2 
+ EncodeColor(colorGreen)+   "\n H3 : "+ EncodeColor(colorWhite)+H3 
+ EncodeColor(colorGreen)+   "\n H2 : "+ EncodeColor(colorWhite)+H2 
+ EncodeColor(colorGreen)+   "\n H1 : "+ EncodeColor(colorWhite)+H1+ EncodeColor(colorGreen)+   "`            Hi: "+ EncodeColor(colorWhite)+H
+ EncodeColor(colorBlue)+   "\n Pivot : "+ EncodeColor(colorWhite)+pd + EncodeColor(colorYellow)+   "`   Op: "+ EncodeColor(colorWhite)+O+ EncodeColor(colorAqua)+   "Cl: "+ EncodeColor(colorBrightGreen)+C
+ EncodeColor(colorRed)+   "\n L1 : "+ EncodeColor(colorWhite)+L1+ EncodeColor(colorRed)+   "`            Lo: "+ EncodeColor(colorWhite)+L
+ EncodeColor(colorRed)+   "\n L2 : "+ EncodeColor(colorWhite)+L2
+ EncodeColor(colorRed)+   "\n L3 : "+ EncodeColor(colorWhite)+L3
+ EncodeColor(colorRed)+   "\n L4 : "+ EncodeColor(colorWhite)+L4+ EncodeColor(colorRed)+      "     tgt : "+ EncodeColor(colorWhite)+tgt_dn + EncodeColor(colorRed)+      "     tgt2 : "+ EncodeColor(colorWhite)+tgt_dn2
;

_SECTION_END();

Plot(6, "", IIf(PDI(7) > MDI(7) AND PDI(7) > 30,colorGreen,IIf (MDI(7) > PDI(7) AND MDI(7) > 30,colorRed,colorYellow)), styleOwnScale| styleArea|styleNoLabel,-0.5,100);

_SECTION_BEGIN("Bollinger Bands");
P = ParamField("Price field",-1);
Periods = Param("Periods", 15, 2, 300, 1 );
Width = Param("Width", 2, 0, 10, 0.05 );
Color = ParamColor("Color", colorCycle );
Style = ParamStyle("Style");
Plot( BBandTop( P, Periods, Width ), "BBTop" + _PARAM_VALUES(), Color, Style ); 
Plot( BBandBot( P, Periods, Width ), "BBBot" + _PARAM_VALUES(), Color, Style ); 
_SECTION_END();

_SECTION_BEGIN("Bollinger Bands1");
P = ParamField("Price field",-1);
Periods = Param("Periods", 15, 2, 300, 1 );
Width = Param("Width", 2, 0, 10, 0.05 );
Color = ParamColor("Color", colorCycle );
Style = ParamStyle("Style");
Plot( BBandTop( P, Periods, Width ), "BBTop" + _PARAM_VALUES(), Color, Style ); 
Plot( BBandBot( P, Periods, Width ), "BBBot" + _PARAM_VALUES(), Color, Style ); 
_SECTION_END();
Previous Post Next Post