Fib Amisite
Fib Amisite, an Amibroker AFL indicator, incorporates Fibonacci levels to identify potential support and resistance levels in the market. It utilizes Fibonacci retracement and extension levels to assist traders in determining price levels where the market might reverse or continue its trend.
///system conceived by Vinod K. Iyer _SECTION_BEGIN("Background"); SetChartOptions(0,chartShowArrows|chartShowDates|chartWrapTitle|chartHideQuoteMarker); dy=ParamToggle("NR calc for", "RT SCAN|EOD SCAN", 0); TT=IIf(dy==0,in15Minute,inDaily); no=Param("NR days filter",0,0,4,1); Limit=Param(" Trade Till (Hour)(Min)(Sec)",153000,103000,153000,100); since=(TimeNum() >= 084500 AND TimeNum()<= Limit) AND (DateNum()==LastValue(DateNum())); perc= Param("Red-Green ratio % Set", 35, 0, 100, 1 ); inv=Param("INVEST CAPITAL", 23000,1000, 1000000, 500 ); SetChartBkColor(ParamColor("Outer panel",colorBlack)); // color of outer border SetChartBkGradientFill( ParamColor("Inner panel upper",colorBlack),ParamColor("Inner panel lower",colorBlack)); tchoice=Param("Title Selection ",2,1,2,1); _SECTION_BEGIN("Haiken"); Show_color = ParamToggle("Display CandleColor", "No|Yes", 0); r1 = Param( "ColorFast avg", 5, 2, 200, 1 ); r2 = Param( "ColorSlow avg", 10, 2, 200, 1 ); r3 = Param( "ColorSignal avg", 5, 2, 200, 1 ); Prd1=Param("ATR Period",4,1,20,1); Prd2=Param("Look Back",7,1,20,1); greenD = HHV(LLV(L,Prd1)+ATR(Prd1),Prd2); redD = LLV(HHV(H,Prd1)-ATR(Prd1),Prd2); HaClose =EMA((O+H+L+C)/4,3); // Woodie HaOpen = AMA( Ref( HaClose, -1 ), 0.5 ); HaHigh = Max( H, Max( HaClose, HaOpen ) ); HaLow = Min( L, Min( HaClose, HaOpen ) ); Temp = Max(High, HaOpen); Temp = Min(Low,HaOpen); m1=MACD(r1,r2); s1=Signal(r1,r2,r3); mycolor=IIf(m1<0 AND m1>s1, ColorRGB(230,230,0),IIf(m1>0 AND m1>s1,colorLime,IIf(m1>0 AND m1GreenD ,colorBrightGreen,IIf(C < REDD,colorRed,colorYellow)); barColor2=IIf(CCI(14) > ((Ref(CCI(14),-1)+Ref(CCI(14),-2))/2),colorAqua,colorBrown); if( ParamToggle("Plot Normal Candle", "No,Yes", 0 ) ) PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, " " , barcolor, styleCandle | styleThick ); else PlotOHLC( Open, High, Low, Close, " " , barcolor2, styleCandle | styleThick ); _SECTION_BEGIN("Volume"); Plot( Volume, _DEFAULT_NAME(), IIf( C > O,colorGreen, colorRed), ParamStyle( "Style", styleHistogram | styleOwnScale | styleThick | styleNoLabel, maskHistogram ), 2 ); Plot( OBV(), _DEFAULT_NAME(), ParamColor("OBV Color", colorCycle ), styleDashed| styleOwnScale | styleThick | styleNoLabel ); _SECTION_END(); _SECTION_BEGIN("Chaikin Volatility"); periods= Param("Periods", 10, 2, 100 ); function ChaikinVolatility( periods ) { return ROC( EMA( High - Low, periods ), periods ); } Plot( ChaikinVolatility(periods ),_DEFAULT_NAME(), colorYellow,styleLine| styleOwnScale | styleThick | styleNoLabel ); _SECTION_END(); TimeFrameSet(in5Minute); //TimeFrameSet(in5Minute); since5=(TimeNum() >= 090000 AND TimeNum()<= 153000) AND (DateNum()==LastValue(DateNum())); Candles5=(since5 & (C O | C==O)); Candles51=Cum(Candles5); HaClose0 =EMA((O+H+L+C)/4,3); HaOpen0 = AMA( Ref( HaClose0, -1 ), 0.5 ); HaHigh0 = Max( H, Max( HaClose0, HaOpen0 ) ); HaLow0 = Min( L, Min( HaClose0, HaOpen0 ) ); CondB=Haopen0 Haclose0; TimeFrameRestore(); _SECTION_BEGIN("2"); //Compress= Param("Compression",3,0.20,100,0.10); TimeFrameSet(in15Minute); since15=(TimeNum() >= 090000 AND TimeNum()<= 153000) AND (DateNum()==LastValue(DateNum())); Candles15=(since15 & (C O | C==O)); Candles115=Cum(Candles15); HaClose1 =EMA((O+H+L+C)/4,3); HaOpen1 = AMA( Ref( HaClose1, -1 ), 0.5 ); HaHigh1 = Max( H, Max( HaClose1, HaOpen1 ) ); HaLow1 = Min( L, Min( HaClose1, HaOpen1 ) ); CondB1=Haopen1 < Haclose1;CONDS1=Haopen1 >Haclose1; TimeFrameRestore(); _SECTION_BEGIN("3"); //Compress= Param("Compression",6,0.20,100,0.10); TimeFrameSet(in15Minute*2); since2=(TimeNum() >= 090000 AND TimeNum()<= 153000) AND (DateNum()==LastValue(DateNum())); Candles2=(since2 & (C O | C==O)); Candles12=Cum(Candles2); HaClose2 =EMA((O+H+L+C)/4,3); HaOpen2 = AMA( Ref( HaClose2, -1 ), 0.5 ); HaHigh2 = Max( H, Max( HaClose2, HaOpen2 ) ); HaLow2 = Min( L, Min( HaClose2, HaOpen2 ) ); CondB2=Haopen2 < Haclose2;CONDS2=Haopen2 > Haclose2; TimeFrameRestore(); _SECTION_BEGIN("4"); //Compress= Param("Compression",12,0.20,100,0.10); TimeFrameSet(inHourly); since3=(TimeNum() >= 090000 AND TimeNum()<= 153000) AND (DateNum()==LastValue(DateNum())); Candles3=(since3 & (C O | C==O)); Candles13=Cum(Candles3); HaClose3 =EMA((O+H+L+C)/4,3); HaOpen3 = AMA( Ref( HaClose3, -1 ), 0.5 ); HaHigh3 = Max( H, Max( HaClose3, HaOpen3) ); HaLow3 = Min( L, Min( HaClose3, HaOpen3 ) ); CondB3=Haopen3 < Haclose3;CONDS3=Haopen3 > Haclose3; TimeFrameRestore(); //patterns _SECTION_BEGIN("Pattern Alerts"); SRbS = ParamToggle("S/R broken","Off,On",1); SRcS = ParamToggle("S/R confirmed","Off,On",1); PjabS = ParamToggle("Price just above/below","Off,On",1); _SECTION_END(); _SECTION_BEGIN("Pattern Parameters"); PlotP1P2 = ParamToggle("Plot P1/P2 Shapes","Off,On",0); P1Shape = Param("P1 Shape Typ",35,0,50,1);//default 35 P2Shape = Param("P2 Shape Typ",37,0,50,1);//default 37 Parallellinesswitch = ParamToggle("Plot Parallel Lines","Off,On",0); DisRange = Param("Plot Parallel Lines Trigger",300,0,1000,20); _SECTION_BEGIN("Pattern Styles"); Style_SL= ParamStyle("Support",styleLine+styleThick,maskDefault)+styleNoRescale; Style_RL= ParamStyle("Resistance",styleLine+styleThick,maskDefault)+styleNoRescale; Style_PHL= ParamStyle("Parallel Support",styleLine+styleDashed,maskDefault)+styleNoRescale; Style_PLL= ParamStyle("Parallel Resistance",styleLine+styleDashed,maskDefault)+styleNoRescale; _SECTION_END(); _SECTION_BEGIN("Pattern Selection"); AscTs = ParamToggle("Ascending Triangle","Off,On",1); DscTs = ParamToggle("Descending Triangle","Off,On",1); STs = ParamToggle("Symmetrically Triangle","Off,On",1); ETs = ParamToggle("Expanding Triangle","Off,On",1); RWs = ParamToggle("Rising Wedge","Off,On",1); FWs = ParamToggle("Falling Wedge","Off,On",1); UTs = ParamToggle("Up Trend","Off,On",1); DTs = ParamToggle("Down Trend","Off,On",1); Ranges = ParamToggle("Range","Off,On",1); NonDefinedPatterns = ParamToggle("Not defined Patterns","Off,On",1); _SECTION_END(); //calcs HH = HHV(H,20); LL = LLV(L,20); Mid = LL+((HH-LL)/2); Div = 100-(HH/(0.01*Mid)); Per = LastValue(abs(Div)); Hp1 = Ref(H,-1);Hp2 = Ref(H,-2);Hp3 = Ref(H,-3);Hp4 = Ref(H,-4);Hp5 = Ref(H,-5);Hp6 = Ref(H,-6); Lp1 = Ref(L,-1);Lp2 = Ref(L,-2);Lp3 = Ref(L,-3);Lp4 = Ref(L,-4);Lp5 = Ref(L,-5);Lp6 = Ref(L,-6); Hf1 = Ref(H,1);Hf2 = Ref(H,2);Hf3 = Ref(H,3);Hf4 = Ref(H,4);Hf5 = Ref(H,5);Hf6 = Ref(H,6); Lf1 = Ref(L,1);Lf2 = Ref(L,2);Lf3 = Ref(L,3);Lf4 = Ref(L,4);Lf5 = Ref(L,5);Lf6 = Ref(L,6); x = Cum(1); divx = LastValue(x)-x; //Tops A = H; Top1 = A > Hf2 & A > Hf1 & A > Hp1 & A > Hp2 & divx>2; Top2 = A > Hf3 & A > Hf2 & A ==Hf1 & A > Hp1 & A > Hp2 & divx>3 ; Top3 = A > Hf4 & A > Hf3 & A ==Hf2 & A >=Hf1 & A > Hp1 & A > Hp2 & divx>4; Top4 = A > Hf5 & A > Hf4 & A ==Hf3 & A >=Hf2 & A >=Hf1 & A > Hp1 & A > Hp2 & divx>5; Top5 = A > Hf6 & A > Hf5 & A ==Hf4 & A >=Hf3 & A ==Hf2 & A >=Hf1 & A > Hp1 & A >Hp2 & divx>6; Top = Top1 OR Top2 OR Top3 OR Top4 OR Top5; TopHigh = ValueWhen(Top,H); TopX = ValueWhen(Top,X); //Valleys A = L; Valley1 = A < Lf2 & A <= Lf1 & A <= Lp1 & A < Lp2 & divx>2; Valley2 = A < Lf3 & A < Lf2 & A == Lf1 & A < Lp1 & A < Lp2 & divx>3; Valley3 = A < Lf4 & A < Lf3 & A == Lf2 & A <= Lf1 & A < Lp1 & A < Lp2 & divx>4; Valley4 = A < Lf5 & A < Lf4 & A == Lf3 & A <= Lf2 & A <= Lf1 & A < Lp1 & A < Lp2 & divx>5; Valley5 = A < Lf6 & A < Lf5 & A == Lf4 & A <= Lf3 & A == Lf2 & A <= Lf1 & A < Lp1 & A < Lp2 & divx>6; Valley = Valley1 OR Valley2 OR Valley3 OR Valley4 OR Valley4 OR Valley5; ValleyLow = ValueWhen(Valley,L); ValleyX = ValueWhen(Valley,X); x = Cum(1); xb = LastValue(ValueWhen(Valley,x,1)); xa = LastValue(ValueWhen(Valley,x,2)); yb = LastValue(ValueWhen(Valley,L,1)); Ya = LastValue(ValueWhen(Valley,L,2)); xab_log = log(yb/yA)/(xb-xa); SL = exp((x-xb)*xab_log)*yb; RocSL = ROC(SL,1); xd = LastValue(ValueWhen(top,x,1)); xc = LastValue(ValueWhen(top,x,2)); yd = LastValue(ValueWhen(top,H,1)); Yc = LastValue(ValueWhen(top,H,2)); xcd_log = log(yd/yc)/(xd-xc); RL = exp((x-xd)*xcd_log)*yd; RocRL = ROC(RL,1); //LPL Low_Value = LastValue(Ref(LLV(L,xd-xc),-(x-xd))); x2 = LastValue(ValueWhen(L==Low_Value & x>xc & x 5,exp((x-x2)*xcd_log)*Low_Value,-1e10); //HPL Hi_Value = LastValue(Ref(HHV(H,xb-xa),-(x-xb))); x3 = LastValue(ValueWhen(H==Hi_Value & x>xa & x 5,exp((x-x3)*xab_log)*Hi_Value,-1e10); //Channels AvgRoc = abs(MA(ROC(C,1),100)); Threshold_parallel = 15; Threshold_Trend = 0.001*per; SLabs = SL-Ref(SL,-1); RLabs = RL-Ref(RL,-1); ROC2SL = (SLabs/C)*100; ROC2RL = (RLabs/C)*100; RSL = ROC2SL > Threshold_Trend; FlatSL = abs(ROC2SL) < Threshold_Trend; FSL = ROC2SL < -Threshold_Trend; RRL = ROC2RL > Threshold_Trend; FlatRL = abs(ROC2RL) < Threshold_Trend; FRL = ROC2RL < -Threshold_Trend; parallel= abs(((RocSL/RocRL)-1)*100) 4 & xd-xc >4; //x-min.distance - optional AscT= FlatRL & RSL;// & xa SL;//& xa SL;//& xa RocRL & SL>RL AND NOT parallel;// & Xm; FW = FSL & FRL & RocRL XB; Sup_pricejustabove = L SL & X>XB; Sup_confirmed = L<=SL & C>SL & X>XB; //Resistance line signals Res_break = Cross(C,RL) & X>XD; Res_pricejustbelow = H>RL-Distance & H XD; Res_confirmed = H>=RL & C XD; //Parallel lower line signals PLL_break = Cross(PLL,C); PLL_pricejustabove = L PLL; PLL_confirmed = L<=PLL & C>PLL; //Parallel higher line signals PHL_break = Cross(C,PHL); PHL_pricejustbelow = H>PHL-Distance & H =PHL & C =xa & SL>RaL & SL =xa & RaL==0 & NOT AnZ,SL,-1e10)); RL_plot = IIf(x>=xc & RL>RaL & RL =xc & RaL==0 & NOT AnZ,RL,-1e10)); PLL_plot = IIf(x-x2>=0 & abs(LastValue(L/PLL)-1) RaL & PLL =0 & RaL==0 & PLLd & abs(LastValue(L/PLL)-1) =0 & abs(LastValue(H/PHL)-1) RaL & PHL =0 & RaL==0 & PHLd & abs(LastValue(H/PHL)-1) BEGIN-1,SL,-1e10); TRR = IIf(x>BEGIN-1,RL,-1e10); trr = IIf(trr>0,trr,Null); yVal=IIf(trs > trr,trr,trs); yval = IIf(yval>0,yval,Null); GraphZOrder = 0; if(Version()>4.75){ //PlotOHLC(0,trr,yval,0,"",Shadowcolor,styleCloud+styleNoLabel); } ///////////End Ploting Part//////////// DefinedPatterns = AscT | DscT | ST | ET | RW | FW | UT | DT; Filter = BarIndex()==LastValue(BarIndex()) AND NOT GroupID()==253; Filter = Filter AND (AscT AND AscTs)| (DscT AND DscTs)| (ST AND STs)| (ET AND ETs)| (RW AND RWs)| (FW AND FWs)| (UT AND UTs)| (DT AND DTs)|(Rangeee AND Ranges)| (SupSignals AND NonDefinedPatterns AND NOT DefinedPatterns)| (ResSignals AND NonDefinedPatterns AND NOT DefinedPatterns); // | PLLSignals | PHLSignals | Trade Variables //Shapes if(PlotP1P2){ PlotShapes(IIf(x==xa & NOT AnZ,P1Shape,shapeNone),Color_SL,0,SL,-13 ); PlotShapes(IIf(x==xc & NOT AnZ,P1Shape,shapeNone),Color_RL,0,H,13 ); } //end pattern ////////////////////////////////////////////////////////////////// _SECTION_BEGIN("Fib Retracements"); fibs = ParamToggle("Plot Fibs","Off|On",1); pctH = Param ("Pivot Hi %", 0.325,0.001,2.0,0.002); HiLB = Param ("Hi LookBack",1,1,BarCount-1,1); pctL = Param ("Pivot Lo %", 0.325,0.001,2.0,0.002); LoLB = Param ("Lo LookBack",1,1,BarCount-1,1); Back = Param ("Extend Left = 2",1,1,500,1); Fwd = Param("Plot Forward", 0, 0, 500, 1); text = ParamToggle("Plot Text","Off|On",1); hts = Param ("Text Shift", -33.5,-50,50,0.10); style =ParamStyle("Line Style",styleLine,styleNoLabel); x = BarIndex(); pRp = PeakBars( H, pctH, 1) == 0; yRp0 = SelectedValue(ValueWhen( pRp, H, HiLB)); xRp0 = SelectedValue(ValueWhen( pRp, x, HiLB)); pSp = TroughBars( L, pctL, 1) == 0; ySp0 = SelectedValue(ValueWhen( pSp, L, LoLB)); xSp0 = SelectedValue(ValueWhen( pSp, x, LoLB)); Delta = yRp0 - ySp0; function fib(ret) { retval = (Delta * ret); Fibval = IIf(ret < 1.0 AND xSp0 < xRp0, yRp0 - retval, IIf(ret < 1.0 AND xSp0 > xRp0, ySp0 + retval,IIf(ret > 1.0 AND xSp0 < xRp0, yRp0 - retval, IIf(ret > 1.0 AND xSp0 > xRp0, ySp0 + retval, Null)))); return FibVal; } x0 = Min(xSp0,xRp0)-Back; x1 = (BarCount -1); ////////////////////////////////////////////////////////////////// r236 = fib(0.236); r236I = LastValue (r236,1); r382 = fib(0.382); r382I = LastValue (r382,1); r050 = fib(0.50); r050I = LastValue (r050,1); r618 = fib(0.618); r618I = LastValue (r618,1); r786 = fib(0.786); r786I = LastValue (r786,1); e127 = fib(1.27); e127I = LastValue (e127,1); e162 = fib(1.62); e162I = LastValue (e162,1); e200 = fib(2.00); e200I = LastValue (e200,1); e262 = fib(2.62); e262I = LastValue (e262,1); e424 = fib(4.24); e424I = LastValue (e424,1); ////////////////////////////////////////////////////////////////// p00 = IIf(xSp0 > xRp0,ySp0,yRp0); p00I = LastValue (p00,1); p100 = IIf(xSp0 < xRp0,ySp0,yRp0); p100I = LastValue (p100,1); color00 =IIf(xSp0 > xRp0,colorLime,colorRed); color100 =IIf(xSp0 < xRp0,colorLime,colorRed); ////////////////////////////////////////////////////////////////// numbars = LastValue(Cum(Status("barvisible"))); fraction= IIf(StrRight(Name(),3) == "", 3.2, 3.2); ////////////////////////////////////////////////////////////////// Col=IIf(p00 H,O,H); Low1=IIf(O O; R=C O | C==O)); Reds=Cum(Red); Greens=Cum(Green); redr=IIf(red,O-C,0); greenr=IIf(green,C-O,0); Candles=Cum(red + green); Os=Sum(redr,Candles); ws=Sum(greenr,Candles); Lotsize=round((inv*5.5)/r236); ////////////////////////////////////////////////////////////////// Chg=Ref(C,-1); if (tchoice==1 ) { _N(Title = EncodeColor(colorWhite)+StrFormat(" {{NAME}} - {{INTERVAL}} {{DATE}} Open: %g, High: %g, Low: %g, Close: %g {{VALUES}}",O, H, L, C, SelectedValue( ROC( C, 1 ) ) )); } ////////////////////////////////////////////////////////////////// if (tchoice==2 ) { Title = EncodeColor(colorWhite)+ Date() + " Tick = " + EncodeColor(5) + Interval()+ EncodeColor(55)+ " Open: "+ EncodeColor(colorWhite)+ WriteVal(O,format=1.2) + EncodeColor(55)+ " High: "+ EncodeColor(colorWhite) + WriteVal(H,format=1.2) + EncodeColor(55)+ " Low: "+ EncodeColor(colorWhite)+ WriteVal(L,format=1.2) + EncodeColor(55)+ " Close: "+ WriteIf(C> Chg,EncodeColor(colorBrightGreen),EncodeColor(colorRed))+ WriteVal(C,format=1.2)+ EncodeColor(55)+ " Change: "+ WriteIf(C> Chg,EncodeColor(colorBrightGreen),EncodeColor(colorRed))+ WriteVal(ROC(C,1),format=1.2)+ "%"+ EncodeColor(55)+ " Volume: "+ EncodeColor(colorWhite)+ WriteVal(V,1)+EncodeColor(colorYellow) + " Lotsize: "+WriteVal(Lotsize,1)+" Lotsize/2: "+WriteVal(Lotsize/2,1)+"\n"+ WriteIf(LastValue(AscT),"Ascending Triangle - bullish formation that usually forms during an uptrend as a continuation pattern"+"","")+ WriteIf(LastValue(DscT),"Decending Triangle - bearish formation that usually forms during a downtrend as a continuation pattern."+"","")+ //WriteIf(LastValue(ST),"Symmetrical Triangle - mark important trend reversals, they more often mark a continuation of the current trend - direction of the next major move can only be determined after a valid breakout."+"","")+ WriteIf(LastValue(ET),"Expanding Triangle - The expanding triangle is said to be a good indicator of a reversal pattern"+"","")+ WriteIf(LastValue(RW),"Rising Wedge - rising wedges definitely slope up and have a bearish bias"+"","")+ WriteIf(LastValue(FW),"Falling Wedge - falling wedges definitely slope down and have a bullish bias."+" ","")+ WriteIf(LastValue(UT),"Up Channel - Bullish Trend"+"","")+ WriteIf(LastValue(DT),"Down Channel - Bearish Trend"+"","")+"\n"+ EncodeColor(colorYellow)+ Comm2=("heikin 5m : ")+ WriteIf(LastValue(Condb),EncodeColor(colorBrightGreen)+"+Up", WriteIf(LastValue(Conds),EncodeColor(colorRed)+"-Down",EncodeColor(colorLightYellow)+"< Flat >"))+"\n"+ EncodeColor(colorYellow)+ Comm2=("heikin 15m : ")+ WriteIf(LastValue(Condb1),EncodeColor(colorBrightGreen)+"+Up", WriteIf(LastValue(Conds1),EncodeColor(colorRed)+"-Down",EncodeColor(colorLightYellow)+"< Flat >"))+"\n"+ EncodeColor(colorYellow)+ Comm2=("heikin 30m : ")+ WriteIf(LastValue(Condb2),EncodeColor(colorBrightGreen)+"+Up", WriteIf(LastValue(Conds2),EncodeColor(colorRed)+"-Down",EncodeColor(colorLightYellow)+"< Flat >"))+"\n"+ EncodeColor(colorYellow)+ Comm2=("heikin 1Hr : ")+ WriteIf(LastValue(Condb3),EncodeColor(colorBrightGreen)+"+Up", WriteIf(LastValue(Conds3),EncodeColor(colorRed)+"-Down",EncodeColor(colorLightYellow)+"< Flat >"))+"\n"+ "\n"+EncodeColor(07)+"Volume: "+WriteIf(V>Vp2,EncodeColor(colorLime)+"Very High",WriteIf(V>Vp1,EncodeColor(colorLime)+" High",WriteIf(V>Vrg,EncodeColor(colorLime)+"Above Average", WriteIf(V Vn1,EncodeColor(colorRed)+"Less than Average",WriteIf(V Reds,EncodeColor(colorBrightGreen)+"+Up", WriteIf(Reds>Greens,EncodeColor(colorRed)+"-Down",EncodeColor(colorLightYellow)+"< Flat >"))+"\n"+ EncodeColor(colorRed) + WriteIf(Reds, "Reds: "+(reds)+" ","")+"\n"+ EncodeColor(colorBrightGreen) + WriteIf(Greens, "Greens: "+(greens)+" ","")+"\n"+ EncodeColor(colorRed) + Comm2=("Red Range: ")+ WriteVal(Os, 1.2)+"\n"+ EncodeColor(colorBrightGreen) + Comm2=("Green Range: ")+ WriteVal(Ws, 1.2)+"\n"+ EncodeColor(colorRed) + WriteIf(ChaikinVolatility( periods )<0, "Chaikin: "+(ChaikinVolatility( periods ) )+" ","")+"\n"+ EncodeColor(colorBrightGreen) + WriteIf(ChaikinVolatility( periods )>0 , "Chaikin: "+(ChaikinVolatility( periods ) )+" ","")+ "\n"+ WriteIf(Sup_pricejustabove,EncodeColor(colorBrightGreen)+"Price just above Support", WriteIf(Sup_confirmed,EncodeColor(colorBrightGreen)+"Support Confirmed",EncodeColor(colorWhite)+""))+ WriteIf(Sup_break,EncodeColor(colorRed)+"Support Break"+"","")+"\n"+ WriteIf(Res_pricejustbelow,EncodeColor(colorRed)+"Price just below Resistance", WriteIf(Res_confirmed,EncodeColor(colorRed)+"Resistance Confirmed",EncodeColor(colorWhite)+""))+ WriteIf(Res_break,EncodeColor(colorBrightGreen)+"Resistance Break"+"",""); } GraphXSpace=5; dy1=IIf(dy==1,(tgn7 | trn7 | tgn8|trn8|tgn7i|trn7i|ygn7 | yrn7 | ygn8|yrn8|ygn7i|yrn7i|zgn7 | zrn7 |zgn8|zrn8|zgn7i|zrn7i|agn7 | arn7 |agn8|arn8|agn7i|arn7i|bgn7 | brn7 | bgn8|brn8|bgn7i|brn7i),0); dy2=IIf(dy==1,(cgn7 | crn7 | cgn8|crn8|cgn7i|crn7i|dgn7 | drn7 | dgn8|drn8|dgn7i|drn7i|egn7 | ern7 |egn8|ern8|egn7i|ern7i|fgn7 |frn7 |fgn8|frn8|fgn7i|frn7i|ggn7 | grn7 | ggn8|grn8|ggn7i|grn7i),0); // Angle variables PI = atan(1.00) * 4; periods = periods; HighHigh = HHV(H, periods); LowLow = LLV(L, periods); range = 25 / (HighHigh - LowLow) * LowLow; // LSMA25 Angle LSMA25 = OBV(); x1_LSMA25 = 0; x2_LSMA25 = 1; y1_LSMA25 = 0; y2_LSMA25 = (Ref(LSMA25, -1) - LSMA25) / Avg * range; c_LSMA25 = sqrt((x2_LSMA25 - x1_LSMA25)*(x2_LSMA25 - x1_LSMA25) + (y2_LSMA25 - y1_LSMA25)*(y2_LSMA25 - y1_LSMA25)); angle_LSMA25 = round(180 * acos((x2_LSMA25 - x1_LSMA25)/c_LSMA25) / PI); angle_LSMA25 = IIf(y2_LSMA25 > 0, - angle_LSMA25, angle_LSMA25); Buy=IIf((p00 0 & angle_LSMA25>30 & Ws>=(Os+(Os*perc/100)) & (Cross(H,r236) | Cross(C,r236))),1,0); Buystop=ValueWhen(Buy,p00); btgt1=ValueWhen(Buy,r618); btgt2=ValueWhen(Buy,r786); Short=IIf((p00>p100 & ChaikinVolatility( periods )>0 & angle_LSMA25<(-30) & Os>=(Ws+(Ws*perc/100)) & (Cross(r236,L) | Cross(r236,C))),1,0); shortstop=ValueWhen(Short,p00); stgt1=ValueWhen(Short,r618); stgt2=ValueWhen(Short,r786); //Buy=ExRem(Buy,Short); //Short=ExRem(Short,Buy); //shapes PlotShapes(IIf(Buy,shapeUpArrow,shapeNone),colorWhite,0,L,-25 ); PlotShapes(IIf(Short,shapeDownArrow,shapeNone),colorOrange,0,H,-25 ); AddColumn( IIf(Buy & dy==0, r236, IIf(Short & dy==0, r236,01 )), "ENTRY@", 1.2, colorWhite, bkcolor= IIf(Short & dy==0,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(Buy & dy==0, Buystop, IIf(Short & dy==0, Shortstop,01 )), "STOP@", 1.2, colorWhite, bkcolor= IIf(Short & dy==0,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(Buy & dy==0, btgt1, IIf(Short & dy==0, stgt1,01 )), "TARGT-1", 1.2, colorWhite, bkcolor= IIf(Short & dy==0,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(Buy & dy==0, btgt2, IIf(Short & dy==0, stgt2,01 )), "TARGT-2", 1.2, colorWhite, bkcolor= IIf(Short & dy==0,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(Buy & dy==0, Lotsize, IIf(Short & dy==0, Lotsize,01 )), "QNTY", 1, colorWhite, bkcolor= IIf(Short & dy==0,colorDarkRed,colorDarkGreen) ); //AddColumn(dy==1 & no,"NR days",1); AddColumn( IIf(( dy==1 & tgn7), 55, IIf(( dy==1 & trn7), 55,01 )), "NR7-0", formatChar, colorWhite, bkcolor= IIf((dy==1 & trn7),colorDarkRed,colorDarkGreen) ); AddColumn( IIf((dy==1 & tgn8), 56, IIf(dy==1 & trn8, 56,01 )), "NR8-0", formatChar, colorWhite, bkcolor= IIf(dy==1 & trn8,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & tgn7i, 73, IIf(dy==1 & trn7i, 73,01 )), "NR7i-0", formatChar, colorWhite, bkcolor= IIf(dy==1 & trn7i,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & ygn7, 55, IIf(dy==1 & yrn7, 55,01 )), "NR7-1", formatChar, colorWhite, bkcolor= IIf(dy==1 & yrn7,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & ygn8, 56, IIf(dy==1 & yrn8, 56,01 )), "NR8-1", formatChar, colorWhite, bkcolor= IIf(dy==1 & yrn8,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & ygn7i, 73, IIf(dy==1 & yrn7i, 73,01 )), "NR7i-1", formatChar, colorWhite, bkcolor= IIf(dy==1 & yrn7i,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & zgn7, 55, IIf(dy==1 & zrn7, 55,01 )), "NR7-2", formatChar, colorWhite, bkcolor= IIf(dy==1 & zrn7,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & zgn8, 56, IIf(dy==1 & zrn8, 56,01 )), "NR8-2", formatChar, colorWhite, bkcolor= IIf(dy==1 & zrn8,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & zgn7i, 73, IIf(dy==1 & zrn7i, 73,01 )), "NR7i-2", formatChar, colorWhite, bkcolor= IIf(dy==1 & zrn7i,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & agn7, 55, IIf(dy==1 & arn7, 55,01 )), "NR7-3", formatChar, colorWhite, bkcolor= IIf(dy==1 & arn7,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & agn8, 56, IIf(dy==1 & arn8, 56,01 )), "NR8-3", formatChar, colorWhite, bkcolor= IIf(dy==1 & arn8,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & agn7i, 73, IIf(dy==1 & arn7i, 73,01 )), "NR7i-3", formatChar, colorWhite, bkcolor= IIf(dy==1 & arn7i,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & bgn7, 55, IIf(dy==1 & brn7, 55,01 )), "NR7-4", formatChar, colorWhite, bkcolor= IIf(dy==1 & brn7,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & bgn8, 56, IIf(dy==1 & brn8, 56,01 )), "NR7-4", formatChar, colorWhite, bkcolor= IIf(dy==1 & brn8,colorDarkRed,colorDarkGreen) ); AddColumn( IIf(dy==1 & bgn7i, 66, IIf(dy==1 & brn7i, 83,01 )), "NR7i-4", formatChar, colorWhite, bkcolor= IIf(dy==1 & brn7i,colorDarkRed,colorDarkGreen) ); //daily sup/res _SECTION_BEGIN("Daily Sup/Res Plot lines"); //Set parameter default to YES for displaying the final //results of the break out calculations. PlotBreak = ParamToggle("Plot Breakout", "YES|NO", 0); //set parameter default to YES for displaying PP, S1 and R1 PPSR1 = ParamToggle("PP,S1/R1", "YES|NO", 0); //set paramter default to NO for displaying S2 and R2 S2R2 = ParamToggle("S2,R2", "YES|NO", 0); //set parameter default to NO for dsiplaying S3 and R3 S3R3 = ParamToggle("S3,R3", "YES|NO", 1); //set paramter default to NO for diplaying S4 and R4 S4R4 = ParamToggle("S4,R4", "YES|NO", 1); _SECTION_END(); _SECTION_BEGIN("Realtime Hours "); //Determine the value of the market close. Initial setting is for //4:00 PM to match US Market Open. Adjust as need for your market UserOpen = ParamTime("Market Open", "09:00"); UserClose = ParamTime("Market Close", "15:30"); UseIndia = "YES";//ParamList("Indian Market?", "YES|NO",0); if(UseIndia == "YES") { TimeOpen = ValueWhen(DateNum() != Ref(DateNum(),-1), TimeNum()); } CalcClose = UserClose; TimeClose = IIf(StrMid(NumToStr(CalcClose ,1,False),2,2)=="00", 6000-((Interval()/60)*100)+(CalcClose-10000), CalcClose-(100*(Interval()/60))); CurBarTime = TimeNum(); DlyHigh = HighestSince(CurBarTime == TimeOpen , High); DlyHighest = ValueWhen(CurBarTime == TimeClose , DlyHigh); DlyLow = LowestSince(CurBarTime == TimeOpen , Low); DlyLowest = ValueWhen(CurBarTime == TimeClose , DlyLow); MrktClose = ValueWhen(CurBarTime == TimeClose , Close); Rangeeee = DlyHighest - DlyLowest; PP = (DlyHighest + DlyLowest + MrktClose)/3; PP = round(PP * 4) / 4; R1 = (2 * PP) - DlyLowest; S1 = (2 * PP) - DlyHighest; R2 = PP + Rangeeee; S2 = PP - Rangeeee; R3 = R2 + Rangeeee; S3 = S2 - Rangeeee; R4 = R3 + Rangeeee; S4 = S3 - Rangeeee; TitlePivots = "\n"+ EncodeColor(colorYellow) +"Today's Daily Pivots" +"\n" +"R1: " +R1 +"\n" +"PP: " +PP +"\n" +"S1: " +S1 //+WriteVal((fhh))+WriteVal((FHL))+WriteVal(((TOP)))+ WriteVal((bi1[0])) +"\n"; if(PPSR1 == 0) { Plot(R1, "Dly R1", colorPink, styleDashed | styleThick | styleNoRescale); Plot(PP, "Dly Pivot", colorGrey40, styleDots | styleThick | styleNoRescale); Plot(S1, "Dly S1", colorAqua, styleDashed | styleThick | styleNoRescale); } if(S2R2 == 0) { Plot(R2, "Dly R2", colorPink, styleDashed | styleThick | styleNoRescale); Plot(S2, "Dly S2", colorAqua, styleDashed | styleThick | styleNoRescale); } if(S3R3 == 0) { Plot(R3, "Dly R3", colorPink, styleDashed | styleThick | styleNoRescale); Plot(S3, "Dly S3", colorAqua, styleDashed | styleThick | styleNoRescale); } if(S4R4 == 0) { Plot(R4, "Dly R4", colorPink, styleDashed | styleThick | styleNoRescale); Plot(S4, "Dly S4", colorAqua, styleDashed | styleThick | styleNoRescale); } _SECTION_END(); Filter=Buy | Short | dy1;