Floor Pivot Trading System
The Floor Pivot Trading System AFL in Amibroker calculates pivot points to identify potential support and resistance levels. Utilizing Amibroker data feed, this indicator aids traders in determining key price levels for decision-making. By integrating this system within Amibroker AFL, traders gain insights into market sentiment, facilitating better trade management.
/_SECTION_BEGIN("HA"); //calculates floor pivots from previous days data & plots it on the present intraday chart. //RED LINE = RESISTANCE //RED DASHED LINE = MINI RESISTANCE //BLUE LINE = SUPPORT //BLUE DASHED LINE = MINI SUPPORT //YELLOW DOTTED LINE = PIVOT //RED DOTTED LINE = PREVIOUS Day High //BLUE DOTTED LINE = PREVIOUS Day Low //BLACK DOTTED LINE = PREVIOUS Day Close //2 - IN - 1 PRICE CHART Pstyle = ParamToggle("Heikin Ashi","On|Off",1); if(Pstyle==0){ HaClose = (O+H+L+C)/4; HaOpen = AMA( Ref( HaClose, -1 ), 0.5 ); HaHigh = Max( H, Max( HaClose, HaOpen ) ); HaLow = Min( L, Min( HaClose, HaOpen ) ); PlotOHLC(HaOpen,HaHigh,HaLow,HaClose,"",IIf(HaClose > HaOpen,colorGreen,colorBrown),styleCandle); _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); } else { _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); Plot( C, "Close", ParamColor("Color", colorBlack ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); } //TIME FRAME CALCULATION H1 = TimeFrameGetPrice("H", inDaily, -1); // yesterdays high L1 = TimeFrameGetPrice("L", inDaily, -1); // low C1= TimeFrameGetPrice("C", inDaily, -1); // close DayO = TimeFrameGetPrice("O", inDaily); // current day open // PIVOT Calculation P = ( H1+ L1 + C1 )/3; S1 = (2*P)-H1; R1 = (2*P)-L1; S2 = P -(H1 - L1); S3 = S1 - (H1-L1); R2 = P +(H1 - L1); R3 = R1 +(H1-L1); // PIVOT mid points MIDR1 = (P+R1)/2; MIDR2 = (R1+R2)/2; MIDR3 = (R2+R3)/2; MIDS1 = (P+S1)/2; MIDS2 = (S1+S2)/2; MIDS3 = (S2+S3)/2; //PLOTS Plot(R1, "",colorRed,styleLine+styleNoRescale); Plot(R2, "",colorRed,styleLine+styleNoRescale); Plot(R3, "",colorRed,styleLine+styleNoRescale); Plot(P, "",colorGold,styleDots+styleNoRescale); Plot(S1, "",colorDarkBlue,styleLine+styleNoRescale); Plot(S2, "",colorDarkBlue,styleLine+styleNoRescale); Plot(S3, "",colorDarkBlue,styleLine+styleNoRescale); Plot(MIDR1, "",colorRed,styleDashed+styleNoRescale); Plot(MIDR2, "",colorRed,styleDashed+styleNoRescale); Plot(MIDR3, "",colorRed,styleDashed+styleNoRescale); Plot(MIDS1, "",colorBlue,styleDashed+styleNoRescale); Plot(MIDS2, "",colorBlue,styleDashed+styleNoRescale); Plot(MIDS3, "",colorBlue,styleDashed+styleNoRescale); Plot(H1, "",colorRed,styleDots+styleNoRescale); Plot(L1, "",colorBlue,styleDots); Plot(C1, "",colorBlack,styleDots+styleNoRescale); // text section "HIGH /LOW /CLOSE = " +H +" / "+ L+" / "+ C +"\n"; "H1 /L1 /C1 = " +H1 +" / "+ L1+" / "+ C1 +"\n"; "R3 = " +R3; "midr3 = " +MIDR3; "R2 = " +R2; "midr2 = " +MIDR2; "R1 = " +R1; "midr1 = " +MIDR1; "*************"; "p = " +p; "*************"; "mids1 = " +MIDS1; "S1 = " +S1; "mids2 = " +MIDS2; "S2 = " +S2; "mids3 = " +MIDS3; "S3 = " +S3; _SECTION_END(); _SECTION_BEGIN("MA"); P = ParamField("Price field",-1); Periods = Param("Periods", 30, 2, 300, 1 ); Plot( MA( P, Periods ), _DEFAULT_NAME(), ParamColor( "Color", colorCycle ), ParamStyle("Style") ); _SECTION_END(); //Topping Bar //Range = H - L ; //TPB = Volume > MA(Volume,9) AND Close < Low + Range/2 AND Range <=Ref(Range,-1); //PlotShapes(shapeSmallCircle * TPB,colorYellow,0,H,20);