Montage
The Montage AFL in Amibroker consolidates various market data, presenting it in a comprehensive format for traders. Leveraging Amibroker data feed, this AFL offers a consolidated view of essential market metrics, facilitating quicker analysis and decision-making. By integrating with Amibroker data feed capabilities, the Montage AFL streamlines information presentation, allowing traders to efficiently monitor multiple market aspects within a single interface.
/ _SECTION_BEGIN("Earth-2"); //Copyright 9Trading.com VAR2=(High+Low+(Close)*(2))/(4); B = ((EMA((VAR2-LLV(VAR2,15))/(HHV(Low,15)-LLV(VAR2,15)),2))*(38)); Plot(b, "", 4, 1+4); bot1 = ((((-1))*(EMA((VAR2-LLV(VAR2,15))/(HHV(Low,15)-LLV(VAR2,15)),2))+0.01)*(38)); Plot(bot1, "", 4, 1+4); VAR22=((Close-LLV(Low,10))/(HHV(High,10)-LLV(Low,10)))*(100); VAR33=EMA(VAR22,10); VAR44=EMA(VAR33,10); VAR55=(3)*(VAR33)-(2)*(VAR44); VAR66=EMA(VAR55,5); BridgeT = (EMA(VAR66,1)); Plot(bridget, "", IIf(bridget > Ref(bridget,-1),colorYellow,colorBlue), 1+4); Plot(-bridget, "", IIf(bridget > Ref(bridget,-1),colorYellow,colorBlue), 1+4); trend = (5)*(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5))- (3)*(EMA(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5),3))- EMA(EMA(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5),3),2); Buy1 = Cross(trend,5); PlotShapes( IIf( Buy1, shapeSmallSquare, shapeNone ), colorGreen, layer = 0, yposition = 0, offset = 3 ); PlotShapes( IIf( Buy1, shapeSmallSquare, shapeNone ),colorGreen, layer = 0, yposition = 0, offset = -4 ); VARA1=((Close>=Ref(Close,-1)) AND (Ref(Close,-1)>=Ref(Close,-2)) AND (Ref(Close,-1)<=Ref(Close,-3)) AND (Ref(Close,-2)<=Ref(Close,-3)) AND ((Ref(Close,-4)>Ref(Close,-2)) OR (Ref(Close,-4)<=Ref(Close,-2)) AND (Ref(Close,-5)>=Ref(Close,-3))) OR (Close>=Ref(Close,-1)) AND (Ref(Close,-1)<=Ref(Close,-2)) AND (Close>=Ref(Close,-2)) AND ((Ref(Close,-3)>Ref(Close,-1)) OR (Ref(Close,-3)<=Ref(Close,-1)) AND (Ref(Close,-4)>=Ref(Close,-2)))); VARA2=LLV(Low,5); VARA3=HHV(High,5); VARA4=EMA(((Close-VARA2)/(VARA3-VARA2))*(100),4); VARA5=EMA((0.66699999)*(Ref(VARA4,-1))+(0.333)*(VARA4),2); VARA6=(VARA5<24) AND (OpenRef(down,-1) AND Ref(up,-1)>up AND up>down ) OR (Ref(up,-1)down,5,4)); Plot(0,"",barcolor2,styleLine); _SECTION_END(); _SECTION_BEGIN("Earth-1"); EB1 = Close > Ref(Close, -1) AND Ref(Close, -1) > Ref(Close, -2) AND Ref(Close, -1) < Ref(Close, -3) AND IIf(Ref(Close, -3) < Ref(Close, -4), 1, IIf(Ref(Close, -4) < Ref(Close, -5),Ref(Close, -1) < Ref(Close, -4) OR( Ref(Close, -2) < Ref(Close, -4) AND Ref(Close, -3) >= Ref(Close, -5) ),IIf(Ref(Close, -5) < Ref(Close, -6), 1,Ref(Close, -6) < Ref(Close, -7)))); ES1 = Close < Ref(Close, -1) AND Ref(Close, -1) < Ref(Close, -2) AND Ref(Close, -1) > Ref(Close, -3) AND IIf(Ref(Close, -3) > Ref(Close, -4), 1, IIf(Ref(Close, -4) > Ref(Close, -5),Ref(Close, -1) > Ref(Close, -4) OR( Ref(Close, -2) > Ref(Close, -4) AND Ref(Close, -3) <= Ref(Close, -5) ),IIf(Ref(Close, -5) > Ref(Close, -6), 1,Ref(Close, -6) > Ref(Close, -7)))); PlotShapes( IIf( EB1, shapeHollowSmallSquare, shapeNone ), colorWhite, layer = 0, 0, 0 ); PlotShapes( IIf( ES1, shapeHollowSmallSquare, shapeNone ), colorOrange, layer = 0, 0, 0 ); _SECTION_END(); _SECTION_BEGIN("Exploration"); LastBar = Cum( 1 ) == LastValue( Cum( 1 ) ); Filter = LastBar; pfrom = Param("Price From", 0, 0, 1000, 0.5 ); pto = Param("Price To", 1000, 0, 1000, 0.5 ); Minv = Param("Minimum Volume (K)", 500, 0, 1000, 50); dd = Param("Decimal Digits", 1.2, 1, 1.7, 0.1 ); EB21= Buy1; EB22=Buy2; //Filter = Buy AND C>pfrom AND C 1000*Minv; Color = IIf(Close>Open, colorGreen, colorRed); bcolor = IIf(Buy1 OR Buy2, colorGreen, 1); AddTextColumn(WriteIf(EB1,"Buy",WriteIf(ES1,"Sell","")),"Earth-1",colorDefault,-1); AddTextColumn(WriteIf(Buy1==1,"Buy-A"," "),"Earth-2a",colorDefault,-1); AddTextColumn(WriteIf(Buy2==30,"Buy-B"," "),"Earth-2b",colorDefault,-1); AddTextColumn(WriteIf(bridget > Ref(bridget,-1) AND Ref(bridget,-1)Ref(bridget,-2),"Sell","")),"Earth-2c",colorDefault,-1); AddTextColumn(WriteIf(barcolor2==colorBlue,"Modarate",WriteIf(barcolor2==4,"Buy",WriteIf(barcolor2==5,"Sell",""))),"Earth-3",colorDefault,-1); //AddColumn(Buy, "Buy" , 1.1, bcolor); //AddColumn(O, "Open", dd, textColor = Color); //AddColumn(C, "Close", dd, textColor = Color); //AddColumn(V, "Volume", 1, textColor = Color); //AddTextColumn(FullName(),"Name"); _SECTION_END(); // TRADING THE MACD Ver 1.0 by Karthik Marar. _SECTION_BEGIN("MACD"); r1 = Param( "Fast avg", 12, 2, 200, 1 ); r2 = Param( "Slow avg", 26, 2, 200, 1 ); r3 = Param( "Signal avg", 9, 2, 200, 1 ); r4 = Param( "Wk slow", 17, 2, 200, 1 ); r5 = Param( "Wk fast", 8, 2, 200, 1 ); m1=MACD(r1,r2); s1=Signal(r1,r2,r3); GraphXSpace =20; mycolor=IIf(m1<0 AND m1>s1, 51,IIf(m1>0 AND m1>s1,colorLime,IIf(m1>0 AND m1 0, colorLime, colorRed ); TimeFrameSet( inDaily );// weekly m1w=MACD(r4,r5); s1w=Signal(r4,r5,r3); kp=m1w-s1w; kph=Ref(kp,-1); TimeFrameRestore(); kw=TimeFrameExpand( kp, inDaily ); // expand for display khw=TimeFrameExpand( kph, inDaily ); // expand for display mw=TimeFrameExpand( m1w, inDaily ); // expand for display sw=TimeFrameExpand( s1w, inDaily ); // expand for display hcolor=IIf(mw<0 AND mw>sw, 51,IIf(mw>0 AND mw>sw,colorLime,IIf(mw>0 AND mw khw,IIf(kw>0,colorDarkYellow,colorYellow),IIf(kw>0,colorSkyblue,colorBlue)); Plot( 2,"Wkly MACD ribbon",hcolor,styleOwnScale|styleArea|styleNoLabel, -0.5, 100 ); Plot( 2,"Ribbon",gcolor,styleOwnScale|styleArea|styleNoLabel, -0.4, 40,-0.6 ); Plot( m1-s1, "MACD Histogram", mycolor, styleHistogram | styleThick| styleOwnScale ); _SECTION_END(); _SECTION_BEGIN("Signals"); //Zero crossover up j1=Cross(m1,0); PlotShapes(IIf(j1,shapeDigit1 ,Null),colorPaleGreen,0,Min(0,0),Min(0,0)); PlotShapes(IIf(j1,shapeUpArrow,Null),colorGreen,0,Min(0,0),-10); // crossover above zero j2=Cross(m1,s1) AND m1>0; PlotShapes(IIf(j2,shapeDigit2 ,Null),colorYellow,0,0,0); PlotShapes(IIf(j2,shapeUpArrow,Null),colorGreen,0,0,-10); //Zero crossover down j3=Cross(s1,m1) AND m1>0; PlotShapes(IIf(j3,shapeDigit3 ,Null),colorOrange,0,Min(0,0),0); PlotShapes(IIf(j3,shapeDownArrow,Null),colorOrange,0,Min(0,0),-10); // crossover below zero j4=Cross(0,m1); PlotShapes(IIf(j4,shapeDigit4 ,Null),colorRed,0,0,0); PlotShapes(IIf(j4,shapeDownArrow,Null),colorRed,0,0,-10); // Histogram peak and troughs pt=m1-s1; Tp = Ref(pT,-1) == HHV(pT,3); Vl = Ref(pT,-1)==LLV(pT,3); PlotShapes(IIf(Vl AND m1>s1 ,shapeSmallCircle+ shapePositionAbove,shapeNone),IIf(m1<0 ,colorYellow,colorLime),0,0,0); PlotShapes(IIf(Tp AND m1 Ref(EMA(PDI(14),3),-5); ap=EMA(ADX(14),3)>Ref(EMA(ADX(14),3),-5); Minus=EMA(MDI(14),3)>Ref(EMA(MDI(14),3),-5); //Power Dips - Bullish PDIp=ADX(14)>MDI(14) AND PDI(14)>MDI(14) AND ap AND Vl AND m1>s1 AND plus ; PlotShapes(IIf(PDIp,shapeHollowCircle+ shapePositionAbove,shapeNone),colorCustom12,0,0,0); //power buys pr2=ADX(14)>20 AND PDI(14)>20 AND ADX(14)>MDI(14) AND PDI(14)>MDI(14) AND plus AND j2; PlotShapes(IIf(pr2,shapeHollowCircle+ shapePositionAbove,shapeNone),colorCustom12,0,0,20); //Power Dips - Bearish PDIm=ADX(14)>PDI(14) AND MDI(14)>PDI(14) AND ap AND Tp AND m1 20 AND MDI(14)>20 AND ADX(14)>PDI(14) AND MDI(14)>PDI(14) AND Minus AND j4; PlotShapes(IIf(sr2,shapeHollowCircle+ shapePositionAbove,shapeNone),colorRed,0,0,-20); //powerbuy2 pr2a=ADX(14)>20 AND PDI(14)>20 AND ADX(14)>MDI(14) AND PDI(14)>MDI(14) AND plus AND j1; PlotShapes(IIf(pr2a,shapeHollowCircle+ shapePositionAbove,shapeNone),colorCustom12,0,0,20); _SECTION_END(); _SECTION_BEGIN("Exploration"); Filter = j1 OR j2 OR j3 OR j4 OR PDIp OR PDIm OR pr2 OR sr2 ; AddColumn(j1,"ZL UP",1); AddColumn(J2,"MA Up",1); AddColumn(j3,"MA DN",1); AddColumn(J4,"ZL DN",1); AddColumn(PDIp,"PDIP UP",1); AddColumn(pr2,"PHK UP",1); AddColumn(PDIm,"PDIP DN",1); AddColumn(sr2,"PHk UP",1); _SECTION_END(); _SECTION_BEGIN("Display the Signals"); Title = "Trading the MACD" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor() + " - " + Date() +" - " +EncodeColor(colorLime)+ "MACD= "+WriteVal(m1)+"--"+EncodeColor(colorYellow)+ WriteIf (j1, " MACD Crossed above zero","")+ WriteIf (j2, " Bullish crossover above zero","")+ WriteIf (j4, " MACD Crossed below Zero","")+ WriteIf (j3, " Bearish crossover above zero","")+ WriteIf (PDIP, " Bullish Power Dip","")+ WriteIf (pr2, " & Power Buy","")+ WriteIf (sr2, " & Power Short","")+ WriteIf (PDIm, " Bearish Power Dip","")+ WriteIf (Hd1, " & Bullish Hook","")+ WriteIf (Hu1, " & Bearish Hook","")+ WriteIf (zlrd1, " & Bearish zeroline Reject","")+ WriteIf (zlru, " & Bullish Zeroline Reject",""); _SECTION_END();