Hourly Daily Weekly Support Resistance |
//www.aflcode.com ppl = ParamToggle("","Off|On",1); numbars = LastValue(Cum(Status("barvisible"))); fraction= IIf(StrRight(Name(),3) == "", 3.2, 3.2); hts = -33.5; _SECTION_BEGIN("Indicators"); RSI_Periods = Param("RSI Periods", 2, 1, 100, 1); MA_Periods = Param("Periods for MAV", 50, 1, 200, 1); Daily_Trend_MA_Pds = Param("Periods for Trend EMA", 6, 1, 100, 1); MAV_Value = V/EMA(V, MA_Periods); _SECTION_END(); // Check if previous day's close is above its 6-day EMA DailyClose = TimeFrameCompress(Close, inDaily); DailyEMA = EMA( DailyClose, Daily_Trend_MA_Pds); DailyClose = TimeFrameExpand(DailyClose, inDaily, expandFirst); DailyEma = TimeFrameExpand(DailyEMA, inDaily, expandFirst); //Plot(DailyEma,"DailEma",colorCustom12,styleLine); // Trend detection based on 6EMA for Daily Daily_Trend_UP = DailyClose > DailyEMA; Daily_Trend_DOWN = DailyClose < DailyEMA; Trend_UP_Text = WriteIf(Daily_Trend_UP, "Daily Trend UP", ""); Trend_DOWN_Text = WriteIf(Daily_Trend_DOWN, "Daily Trend DOWN", ""); Trend_Neutral_Text = WriteIf(NOT Daily_Trend_DOWN AND NOT Daily_Trend_UP, "Neutral", ""); TrendCol = IIf(Daily_Trend_UP, colorGreen, IIf(Daily_Trend_DOWN, colorRed, colorLightGrey)); _SECTION_END(); _SECTION_BEGIN("i"); /* ICHIMOKU CHART */ n1 = Param("Èøèìîêó: ïåðèîä 1",9,1,200,1); n2 = Param("Èøèìîêó: ïåðèîä 2",26,1,400,1); n3 = Param("Èøèìîêó: ïåðèîä 3",52,1,600,1); TenkanSen =(HHV(H,n1)+LLV(L,n1))/2; // Tenkan-sen (Ã’Ã¥Ãêà Ã-ñåÃ) – ýòî ñðåäÃåå çÃà ÷Ã¥Ãèå öåÃû çà ïåðâûé ïðîìåæóòîê âðåìåÃè (ðà âÃà (high+low)/2, ãäå high è low – ìà êñèìóì è ìèÃèìóì çà ïåðèîä). KijunSen =(HHV(H,n2)+LLV(L,n2))/2; // Kijun-sen (ÊèäæóÃ-ñåÃ) – ýòî ñðåäÃåå çÃà ÷Ã¥Ãèå öåÃû çà âòîðîé ïðîìåæóòîê. ChinkouSpan =Ref(C,-n2); // Chinkou Span (×èêîó ñïåÃ) - öåÃà çà êðûòèÿ òåêóùåãî áà ðà , ñäâèÃóòà ÿ Ãà çà ä Ãà âåëè÷èÃó âòîðîãî âðåìåÃÃîãî èÃòåðâà ëà . Cks = Close; // Ãðà ôè÷åñêèé Chinkou Span, ñäâèã Ãà çà ä çà ñ÷åò îòðèñîâêè. SenkouSpanA =Ref((KijunSen+TenkanSen)/2,-n2); // Senkou Span A (ÑåÃêîó ñïåà À) / Up Kumo - ñåðåäèÃà ðà ññòîÿÃèÿ ìåæäó Tenkan-sen è Kijun-sen, ñäâèÃóòîå âïåðåä Ãà âåëè÷èÃó âòîðîãî âðåìåÃÃîãî èÃòåðâà ëà . SpA =(KijunSen+TenkanSen)/2; // Ãðà ôè÷åñêèé Senkou Span A , ñäâèã âïåðåä çà ñ÷åò îòðèñîâêè. SenkouSpanB =Ref((HHV(H,n3)+LLV(L,n3))/2,-n2); // Senkou Span B (ÑåÃêîó ñïåà Â) / Down Kumo - ñðåäÃåå çÃà ÷Ã¥Ãèå öåÃû çà òðåòèé âðåìåÃÃîé èÃòåðâà ë, ñäâèÃóòîå âïåðåä Ãà âåëè÷èÃó âòîðîãî âðåìåÃÃîãî èÃòåðâà ëà . SpB =(HHV(H,n3)+LLV(L,n3))/2; // Ãðà ôè÷åñêèé Senkou Span B, ñäâèã âïåðåä çà ñ÷åò îòðèñîâêè. DL = Ref( C, 25 ); Plot (SpA,"SenkouSpanA",colorOrange,styleDashed,0,0,n2); Plot (SpB,"SenkouSpanB",colorPink,styleDashed,0,0,n2); _SECTION_END(); _SECTION_BEGIN("Price"); _N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); pds = 20; MAFAST = EMA( Close, 20 ); MASLOW = EMA( Close, 40 ); DonchianUpper = HHV( Ref( H, -1 ), pds ); // Highest high value of highs in last 20 periods DonchianLower = LLV( Ref( L, -1 ), pds ); // Lowest low value of low in last 20 periods DonchianMiddle = ( DonchianUpper + DonchianLower ) / 2; UpTrend = C > ( LLV( L, 20 ) + 2 * ATR( 10 ) ) AND EMA( Close, 20 ) > EMA( Close, 40 ); DnTrend = C < ( HHV( H, 20 ) - 2 * ATR( 10 ) ) AND EMA( Close, 20 ) < EMA( Close, 40 ); Color = IIf( UpTrend, colorBlue, IIf( DnTrend, colorRed, colorYellow) ); // Plots a 20 period Donchian channel Plot( C, "Price", Color, styleCandle | styleThick ); NewDay = IIf(Day() != Ref(Day(), -1) OR BarIndex() == LastValue(BarIndex()), 1, 0); //Plot(NewDay, "", 47, 2 + 32768 + 4096, Minvalue = 0, Maxvalue = 1); _SECTION_END(); _SECTION_BEGIN("PIVOT POINTS"); /* This code calculates the previous days high, low and close */ Hi1 = IIf(Day()!=Ref(Day(),-1),Ref(HighestSince(Day()!=Ref(Day(),-1),H,1),-1),0); Hi = ValueWhen(Day()!=Ref(Day(),-1),Hi1,1); Lo1 = IIf(Day()!=Ref(Day(),-1),Ref(LowestSince(Day()!=Ref(Day(),-1),L,1),-1),0); Lo = ValueWhen(Day()!=Ref(Day(),-1),Lo1,1); Cl1 = IIf(Day()!=Ref(Day(),-1),Ref(C,-1),0); C1 = ValueWhen(Day()!=Ref(Day(),-1),Cl1,1); wHi=TimeFrameGetPrice("H",inWeekly,-1); wLo=TimeFrameGetPrice("L",inWeekly,-1); wCl=TimeFrameGetPrice("C",inWeekly,-1); mHi=TimeFrameGetPrice("H",inMonthly,-1); mLo=TimeFrameGetPrice("L",inMonthly,-1); mCl=TimeFrameGetPrice("C",inMonthly,-1); //---------------------------------------------------------------------------------- /* This code calculates Daily Piovts */ rg = (Hi - Lo); bp = (Hi + Lo + C1)/3; bpI = LastValue (bp,1); r1 = (bp*2)-Lo; r1I = LastValue (r1,1); s1 = (bp*2)-Hi; s1I = LastValue (s1,1); r2 = bp + r1 - s1; r2I = LastValue (r2,1); s2 = bp - r1 + s1; s2I = LastValue (s2,1); r3 = bp + r2 - s1; r3I = LastValue (r3,1); s3 = bp - r2 + s1; s3I = LastValue (s3,1); r4 = bp + r2 - s2; r4I = LastValue (r4,1); s4 = bp - r2 + s2; s4I = LastValue (s4,1); wrg = (wHi - wLo); wbp = (wHi + wLo + wCl)/3; wbpI = LastValue (wbp,1); wr1 = (wbp*2)-wLo; wr1I = LastValue (wr1,1); ws1 = (wbp*2)-wHi; ws1I = LastValue (ws1,1); wr2 = wbp + wr1 - ws1; wr2I = LastValue (wr2,1); ws2 = wbp - wr1 + ws1; ws2I = LastValue (ws2,1); wr3 = wbp + wr2 - ws1; wr3I = LastValue (wr3,1); ws3 = wbp - wr2 + ws1; ws3I = LastValue (ws3,1); wr4 = wbp + wr2 - ws2; wr4I = LastValue (wr4,1); ws4 = wbp - wr2 + ws2; ws4I = LastValue (ws4,1); mrg = (mHi - mLo); mobp = (mHi + mLo + mCl)/3; mobpI = LastValue (mobp,1); mr1 = (mobp*2)-mLo; mr1I = LastValue (mr1,1); ms1 = (mobp*2)-mHi; ms1I = LastValue (ms1,1); mr2 = mobp + mr1 - ms1; mr2I = LastValue (mr2,1); ms2 = mobp - mr1 + ms1; ms2I = LastValue (ms2,1); if(ppl==1) { Plot(bp,"",colorBlue,styleDashed|styleLine|styleNoRescale); Plot(s1,"",colorRed,styleDashed|styleNoRescale); Plot(s2,"",colorRed,styleDashed|styleNoRescale); Plot(s3,"",colorRed,styleDashed|styleNoRescale); Plot(s4,"",colorRed,styleDashed|styleNoRescale); Plot(r1,"",colorGreen,styleDashed|styleNoRescale); Plot(r2,"",colorGreen,styleDashed|styleNoRescale); Plot(r3,"",colorGreen,styleDashed|styleNoRescale); Plot(r4,"",colorGreen,styleDashed|styleNoRescale); Plot(wbp,"",colorTan,styleDashed|styleLine|styleNoRescale); Plot(ws1,"",colorPaleGreen,styleDashed|styleNoRescale); Plot(ws2,"",colorPaleGreen,styleDashed|styleNoRescale); //Plot(ws3,"",colorPaleGreen,styleDashed|styleNoRescale); //Plot(ws4,"",colorPaleGreen,styleDashed|styleNoRescale); Plot(wr1,"",colorPaleBlue,styleDashed|styleNoRescale); Plot(wr2,"",colorPaleBlue,styleDashed|styleNoRescale); //Plot(wr3,"",colorPaleBlue,styleDashed|styleNoRescale); //Plot(wr4,"",colorPaleBlue,styleDashed|styleNoRescale); Plot(mobp,"",colorTan,styleDashed|styleLine|styleNoRescale); Plot(ms1,"",colorPaleGreen,styleDashed|styleNoRescale); Plot(mr1,"",colorPaleBlue,styleDashed|styleNoRescale); PlotText(" Pivot = " + WriteVal(bp,fraction), LastValue(BarIndex())-(numbars/Hts), bpI +0.05, colorBlue); PlotText(" Resistance 1 = " + WriteVal(r1,fraction), LastValue(BarIndex())-(numbars/Hts), r1I +0.05, colorGreen); PlotText(" Support 1 = " + WriteVal(s1,fraction), LastValue(BarIndex())-(numbars/Hts), s1I +0.05, colorRed); PlotText(" Resistance 2 = " + WriteVal(r2,fraction), LastValue(BarIndex())-(numbars/Hts), r2I +0.05, colorGreen); PlotText(" Support 2 = " + WriteVal(s2,fraction), LastValue(BarIndex())-(numbars/Hts), s2I +0.05, colorRed); PlotText(" Resistance 3 = " + WriteVal(r3,fraction), LastValue(BarIndex())-(numbars/Hts), r3I +0.05, colorGreen); PlotText(" Support 3 = " + WriteVal(s3,fraction), LastValue(BarIndex())-(numbars/Hts), s3I +0.05, colorRed); PlotText(" Resistance 4 = " + WriteVal(r4,fraction), LastValue(BarIndex())-(numbars/Hts), r4I +0.05, colorGreen); PlotText(" Support 4 = " + WriteVal(s4,fraction), LastValue(BarIndex())-(numbars/Hts), s4I +0.05, colorRed); PlotText(" W Pivot = " + WriteVal(wbp,fraction), LastValue(BarIndex())-(numbars/Hts), wbpI +0.05, colorTan); PlotText(" W Resistance 1 = " + WriteVal(wr1,fraction), LastValue(BarIndex())-(numbars/Hts), wr1I +0.05, colorPaleBlue); PlotText(" W Support 1 = " + WriteVal(ws1,fraction), LastValue(BarIndex())-(numbars/Hts), ws1I +0.05, colorPaleGreen); PlotText(" W Resistance 2 = " + WriteVal(wr2,fraction), LastValue(BarIndex())-(numbars/Hts), wr2I +0.05, colorPaleBlue); PlotText(" W Support 2 = " + WriteVal(ws2,fraction), LastValue(BarIndex())-(numbars/Hts), ws2I +0.05, colorPaleGreen); //PlotText(" W Resistance 3 = " + WriteVal(wr3,fraction), LastValue(BarIndex())-(numbars/Hts), wr3I +0.05, colorPaleBlue); //PlotText(" W Support 3 = " + WriteVal(ws3,fraction), LastValue(BarIndex())-(numbars/Hts), ws3I +0.05, colorPaleGreen); //PlotText(" W Resistance 4 = " + WriteVal(wr4,fraction), LastValue(BarIndex())-(numbars/Hts), wr4I +0.05, colorPaleBlue); //PlotText(" W Support 4 = " + WriteVal(ws4,fraction), LastValue(BarIndex())-(numbars/Hts), ws4I +0.05, colorPaleGreen); PlotText(" M Pivot = " + WriteVal(mobp,fraction), LastValue(BarIndex())-(numbars/Hts), mobpI+0.05, colorTan); PlotText(" M Resistance 1 = " + WriteVal(mr1,fraction), LastValue(BarIndex())-(numbars/Hts), mr1I+0.05, colorPaleBlue); PlotText(" M Support 1 = " + WriteVal(ms1,fraction), LastValue(BarIndex())-(numbars/Hts), ms1I+0.05, colorPaleGreen); } _SECTION_END(); _SECTION_BEGIN("L.T.P."); cx = Param( "cxposn", 1000, 0, 1250, 1 ); cy = Param( "cyposn", 25, 0, 500, 1 ); GfxSelectFont( "Candara", 18, 98, False ); gfxcup = SelectedValue(C > Ref(C,-1)); gfxpcolor = IIf(gfxcup,colorBrightGreen,colorRed); GfxSetTextColor(gfxpcolor); //GfxSetTextColor( colorWhite ); GfxTextOut( "L.T.P. " + C + " ", cx, cy ); _SECTION_END(); _SECTION_BEGIN("Background text"); SetChartBkColor(colorBlack); strWeekday = StrMid("---sunday---Monday--TuesdayWednesday-Thursday--Friday--Saturday", SelectedValue(DayOfWeek())*9,9); GraphXSpace=Param("GraphXSpace",15,-55,200,1); C13=Param("fonts",20,10,30,1 ); C14=Param("left-right",2.1,1.0,5.0,0.1 ); C15=Param("up-down",12,1,20,1 ); Miny = Status("axisminy"); Maxy = Status("axismaxy"); lvb = Status("lastvisiblebar"); fvb = Status("firstvisiblebar"); pxwidth = Status("pxwidth"); pxheight = Status("pxheight"); GfxSetBkMode(transparent=1); GfxSetOverlayMode(1); GfxSelectFont("Candara", Status("pxheight")/C13 ); GfxSetTextAlign( 6 ); GfxSetTextColor( ColorRGB (217,217,213)); GfxTextOut( Name(), Status("pxwidth")/C14, Status("pxheight")/C15 ); GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 ); GfxSetTextColor( ColorRGB (103,103,103)); GfxTextOut( "By", Status("pxwidth")/C14, Status("pxheight")/C15*2.5 ); GfxSelectFont("Candara", Status("pxheight")/C13*0.5 ); GfxSetTextColor( ColorRGB (103,103,103)); GfxTextOut( "", Status("pxwidth")/C14, Status("pxheight")/C15*4 ); GfxSelectFont("MS Sans Serif", 10, 500, False, False, 0); _SECTION_END(); _SECTION_BEGIN("Title"); DODay = TimeFrameGetPrice("O", inDaily); DHiDay = TimeFrameGetPrice("H", inDaily); DLoDay = TimeFrameGetPrice("L", inDaily); Title = EncodeColor(colorWhite)+"* * "+EncodeColor(colorWhite)+ Name() + ", " + Interval(2) + ", " + Date() + " - "+strWeekday + " - " + EncodeColor(colorWhite) + "\nO " + EncodeColor(colorWhite) + O + ", H : " + H + ", L : " + L + ", C : " + C + "\n"+EncodeColor(colorWhite)+ " Day-Open : " +DODay + " Day-High : " +DHiDay + " Day-Low : " + DLoDay + "\n" + EncodeColor(colorRed) + Trend_Down_Text + EncodeColor(colorBrightGreen) + Trend_Up_Text + EncodeColor(colorWhite) + Trend_Neutral_Text + EncodeColor(colorCustom12) + " || Trend value: " + WriteVal(DailyEMA,1) ; _SECTION_BEGIN("Time Left"); function GetSecondNum() { Time = Now( 4 ); Seconds = int( Time % 100 ); Minutes = int( Time / 100 % 100 ); Hours = int( Time / 10000 % 100 ); SecondNum = int( Hours * 60 * 60 + Minutes * 60 + Seconds ); return SecondNum; } RequestTimedRefresh( 1 ); TimeFrame = Interval(); SecNumber = GetSecondNum(); Newperiod = SecNumber % TimeFrame == 0; SecsLeft = SecNumber - int( SecNumber / TimeFrame ) * TimeFrame; SecsToGo = TimeFrame - SecsLeft; x=Param("xposn",430,0,1000,1); y=Param("yposn",40,0,1000,1); GfxSelectSolidBrush( ColorRGB( 230, 230, 230 ) ); GfxSelectPen( ColorRGB( 230, 230, 230 ), 2 ); if ( NewPeriod ) { GfxSelectSolidBrush( colorYellow ); GfxSelectPen( colorYellow, 2 ); Say( "New period" ); } cx = Param( "cxposn", 1100, 0, 1250, 1 ); cy = Param( "cyposn", 10, 0, 500, 1 ); GfxSelectFont( "Candara", 12, 98, False ); //gfxcup = SelectedValue(C > Ref(C,-1)); //gfxpcolor = IIf(gfxcup,colorBrightGreen,colorRed); GfxSetTextColor(colorRed); //GfxSetTextColor( colorWhite ); GfxTextOut( "T i m e L e f t " + SecsToGo + " ", cx, cy ); _SECTION_END(); _SECTION_BEGIN("PIVOTS Hourly"); TimeFrameSet(inHourly); HourlyH= LastValue(Ref(H,-1)); HourlyL= LastValue(Ref(L,-1)); HourlyC= LastValue(Ref(C,-1)); TimeFrameRestore(); //Daily HPP = (HourlyL + HourlyH + HourlyC)/3;HPPI = LastValue (HPP,1); HR1 = (2 * HPP) - HourlyL;HR1I = LastValue (HR1,1); HS1 = (2 * HPP) - HourlyH;HS1I = LastValue (HS1,1); HR2 = HPP + (HourlyH - HourlyL);HR2I = LastValue (HR2,1); HS2 = HPP - (HourlyH - HourlyL);HS2I = LastValue (HS2,1); HR3 = HourlyH + 2*(HPP - HourlyL);HR3I = LastValue (HR3,1); HS3 = HourlyL - 2*(HourlyH - HPP);HS3I = LastValue (HS3,1); SHOWDPIVOTS = ParamToggle("Daily Pivots", "No|Yes",0); SHOW3 = ParamToggle("3rd Line", "No|Yes",0); if (SHOWDPIVOTS & SHOW3) { Plot(HS3, "S3",ColorR); Plot(HR3, "R3",ColorG); PlotText(" H Resis 3 = " + WriteVal(HR3,fraction), LastValue(BarIndex())-(numbars/Hts), HR3I +0.05, colorGreen); PlotText(" H Sup 3 = " + WriteVal(HS3,fraction), LastValue(BarIndex())-(numbars/Hts), HS3I +0.05, colorRed); } for (i=BarCount-2;i>(BarCount-13);i--)//set the last bars to the final PP value { HPP[i] = HPP[BarCount-1]; HR1[i] = HR1[BarCount-1]; HR2[i] = HR2[BarCount-1]; HS1[i] = HS1[BarCount-1]; HS2[i] = HS2[BarCount-1]; ColorG[i] = colorGreen; ColorB[i] = colorBlue; ColorR[i] = colorRed; } // // Conceal all but the trailing portion of the line // for (i=0;i<BarCount-15;i++) //hide the line except most recent 15 bars { ColorR[i] = ColorG[i] = ColorB[i] = colorBlack; } if (SHOWDPIVOTS) { Plot(HR2, "R2",ColorG); Plot(HR1, "R1",ColorG); Plot(HPP, "PP",ColorB); Plot(HS1, "S1",ColorR); Plot(HS2, "S2",ColorR); PlotText(" H Pivot = " + WriteVal(HPP,fraction), LastValue(BarIndex())-(numbars/Hts), HPPI +0.05, colorBlue); PlotText(" H Resis 1 = " + WriteVal(HR1,fraction), LastValue(BarIndex())-(numbars/Hts), HR1I +0.05, colorGreen); PlotText(" H Sup 1 = " + WriteVal(HS1,fraction), LastValue(BarIndex())-(numbars/Hts), HS1I +0.05, colorRed); PlotText(" H Resis 2 = " + WriteVal(HR2,fraction), LastValue(BarIndex())-(numbars/Hts), HR2I +0.05, colorGreen); PlotText(" H Sup 2 = " + WriteVal(HS2,fraction), LastValue(BarIndex())-(numbars/Hts), HS2I +0.05, colorRed); } if (SHOWDPIVOTS & SHOW3) { Plot(S3, "S3",ColorR); Plot(R3, "R3",ColorG); PlotText(" H Resis 3 = " + WriteVal(HR3,fraction), LastValue(BarIndex())-(numbars/Hts), HR3I +0.05, colorGreen); PlotText(" H Sup 3 = " + WriteVal(HS3,fraction), LastValue(BarIndex())-(numbars/Hts), HS3I +0.05, colorRed); } _SECTION_END();
Sign up here with your email
ConversionConversion EmoticonEmoticon