Stock Portfolio Organizer
The ultimate porfolio management solution.
Shares, Margin, CFD's, Futures and Forex
EOD and Realtime
Dividends and Trust Distributions
And Much More ....
WiseTrader Toolbox
#1 Selling Amibroker Plugin featuring:
Advanced Adaptive Indicators
Advanced Pattern Exploration
Neural Networks
And Much More ....
Trade with several indicators for Amibroker (AFL)
Copy & Paste Friendly
Back
//============== PRICE ============== _SECTION_BEGIN("Price"); n = 15; a = C > ( MA( H, n ) + MA( L, n ) ) / 2;// then Buy next bar at market; b = C < ( MA( H, n ) + MA( L, n ) ) / 2;// then Sell Short next bar at market; state = IIf( BarsSince( a ) < BarsSince( b ), 1, 0 ); Longs = state == 1; shorts = state == 0; Colorbar = IIf( Longs, colorseaGreen, IIf( Shorts, colorRed, colorGrey40 ) ); Plot( C, "Close", Colorbar, styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); _SECTION_END(); //============== VOLUME ============== _SECTION_BEGIN("VOLUME"); Volume_to = Sum(Volume, 31); Volume_to = Volume_to - Volume; Volume30 = Volume_to / 30; percentage = ( abs( Volume - Volume30 ) ) / Volume30; percentage = percentage * 100; _SECTION_END(); //============== MACD ============== _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 ); ml = MACD(r1, r2); sl = Signal(r1,r2,r3); Hitg = ml-sl; MACUP = Hitg > Ref(Hitg,-1); MACDN = Hitg < Ref(Hitg,-1); Period = Optimize("Period", 17, 2, 200, 1); EMACALC = EMA(C, Period); COND1 = Close > EMACALC AND MACD() > Signal(); COND2 = Close > EMACALC AND MACD() < Signal() OR Close < EMACALC AND MACD() > Signal(); COND3 = Close < EMACALC AND MACD() < Signal(); UPBAR = COND1; DOWNBAR = COND2 OR COND3; _SECTION_END(); //============== VOLUME ============== _SECTION_BEGIN("VOLUME"); Volume_to = Sum(Volume, 10); Volume_to = Volume_to - Volume; Volume10 = Volume_to / 10; percentage = ( abs( Volume - Volume10 ) ) / Volume10; percentage = percentage * 100; _SECTION_END(); //============== RSI ============== _SECTION_BEGIN("RSI"); periods = Param( "Periods", 14, 1, 200, 1 ); z = RSI( periods); Lookback = Param("LookBack", 10, 10, 50, 1); // Default for interday commodity currency trading Lookback = 15; H11 = LastValue(Ref(HHV(RSI(14), Lookback), - 1)); L11 = LastValue(Ref(LLV(RSI(14), Lookback), - 1)); _SECTION_END(); _SECTION_BEGIN("MCDX - Multi Color Dragon Extended"); GraphXSpace = Param("GraphXSpace - Zoom Chart",10,5,300,5); //Chon che do Zoom Bankerbase = Param("Banker Base", 50, 10, 100, 1); Bankerperiod = Param("Banker Period", 50, 10, 100, 1); Hotbase = Param("Hot Base", 30, 10, 100, 1); Hotperiod = Param("Hot Period", 40, 10, 100, 1); Bankersen = Param("Banker Sensitivity", 1.5, 0.1, 10, 0.1); Hotsen = Param("Hot Sensitivity", 0.7, 0.1, 10, 0.1); MAbankerPeriod = Param("MA Banker Period ", 10, 1, 260, 1); Banker_rsi = Bankersen * (RSI(Bankerperiod) - Bankerbase); Hot_rsi = Hotsen * (RSI(Hotperiod) - Hotbase); Banker = IIf(Banker_rsi > 20, 20, IIf(Banker_rsi < 0, 0, Banker_rsi)); Hot = IIf(Hot_rsi > 20, 20, IIf(Hot_rsi < 0, 0, Hot_rsi)); Retailcolor = ParamColor("Retail Color", colorRed); MAbanker = MA(Banker,MAbankerPeriod); Bankercolor = IIf(Banker>=MAbanker OR Banker>=20, ParamColor("Banker Color", colorGreen),IIf(Banker<MAbanker,colorSeaGreen,Null)); _SECTION_END(); //============== TITLE ============== _SECTION_BEGIN("Price"); SetChartOptions(0,chartShowArrows|chartShowDates); dec = (Param("Decimals",2,0,7,1)/10)+1; Title = EncodeColor(55) + Title = EncodeColor(41)+ Name() + " - Trade + - " + EncodeColor(41)+ FullName() + " " + EncodeColor(32)+ Date() + " " + EncodeColor(5) + "{{INTERVAL}} " + EncodeColor(55)+ " - Open = " + EncodeColor(52)+ WriteVal(O,dec) + EncodeColor(55)+ " - High = " + EncodeColor(5) + WriteVal(H,dec) + EncodeColor(55)+ " - Low = " + EncodeColor(32)+ WriteVal(L,dec) + EncodeColor(55)+ " - Close = " + EncodeColor(52)+ WriteVal(C,dec) + EncodeColor(55)+ " - % Change = " + EncodeColor(52)+ WriteVal((C-Ref(C,-1))/Ref(C,-1)*100,dec) + EncodeColor(55)+ " - Volume = " + EncodeColor(52)+ WriteVal(V,1) + EncodeColor(55)+ " - Volume 10 = " + EncodeColor(52)+ WriteVal(Volume10,1); _SECTION_END(); _SECTION_BEGIN("TOP BOTTOM"); sen = Param("% change",5,0.1,25,0.1); High = Peak( H, Sen ) ; Low = Trough( L, Sen ) ; Mid = (H+L)/2; Top = High; Bottom = Low; //Plot(Top,"TOP",colorGreen,styleDots|styleNoLine|styleNoRescale); //Plot(Bottom,"BOTTOM",colorRed,styleDots|styleNoLine|styleNoRescale); _SECTION_END(); //============== Fib Retracements ============== //_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); //////////////////////////////////////////////////////////////// // if(fibs==1) // { // Plot(LineArray(xRp0-Fwd,yRp0,x1,yRp0,Back),"PR",colorGreen,8|styleNoRescale,Null, Null,Fwd); // Plot(LineArray(xSp0-Fwd,ySp0,x1,ySp0,Back),"PS",colorRed,8|styleNoRescale,Null, Null,Fwd); // } //_SECTION_END(); _SECTION_BEGIN("Background text"); C11=ParamColor("up panel",colorDarkOliveGreen ); C12=ParamColor("dn panel",colorDarkGrey ); 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( 0 ); GfxSetOverlayMode(1); GfxGradientRect(0,0,pxwidth, pxheight, C11, C12 ); GfxSelectFont("Tahoma", Status("pxheight")/C13 ); GfxSetTextAlign( 6 ); GfxTextOut( Name(), Status("pxwidth")/C14, Status("pxheight")/C15 ); GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 ); //GfxTextOut( "Volatility Bands - stocks", Status("pxwidth")/C14, Status("pxheight")/C15*2.5 ); GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 ); //GfxTextOut( " www.TAtechnics.in", Status("pxwidth")/C14, Status("pxheight")/C15*4 ); _SECTION_END(); SPWidth=param("Swing Point Width",9,7,13,2); //suggest 7,9,13 HV=HighestVisibleValue(H); LV=LowestVisibleValue(L); ymin=LV-.05*(hv-lv); ymax=HV+.05*(hv-lv); SetChartOptions(1,1,chartGridMiddle,ymin,ymax); HB=Max(C,O); LB=Min(C,O); sp1=sp2=0; sph = (HB==HHV(HB,SPWidth)) AND (HB==Ref(HHV(HB,SPWidth),SPWidth-1)); spl = (LB==LLV(LB,SPWidth)) AND (LB==Ref(LLV(LB,SPWidth),SPWidth-1)); lasti=0; for(i=0;i<=BarCount-1;i++){ if(sph[i] AND sph[lasti]){ if(HB[i]>HB[lasti]){ sph[lasti]=0; }else{ sph[i]=0; } } if(spl[i] AND spl[lasti]){ if(LB[i]<LB[lasti]){ spl[lasti]=0; }else{ spl[i]=0; } } if(sph[i] OR spl[i]) lasti=i; } BullBearZone = ( High - Low ) / 3; bullbar = C > ( High - BullBearZone ); bearbar = C < ( Low + BullBearZone ); _SECTION_BEGIN("RRC"); ticker= ParamStr("ticker","VNINDEX"); Value = Param( "Trx Value (in Billion)", 50, 0, 1000, 1 ); function getrs ( sc, t ) { bc = Foreign(Ticker,"Close"); sbr = sc / bc; rs1 = MA( sbr, 12 ); rs2 = MA( sbr, 26 ); rs = 100 * ( ( rs1 - rs2 ) / rs2 + 1 ); rm1 = MA( rs, 1 ); rm2 = MA( rs, 9 ); rm = 100 * ( ( rm1 - rm2 ) / rm2 + 1 ); return IIf( t, rs , rm ) - 100; } rs = getrs( C, 1 ); rm = getrs( C, 0 ); Lagging = rs < 0 AND rm < 0; Improving = rs < 0 AND rm > 0; Leading = rs > 0 AND rm > 0; Weakening = rs > 0 AND rm < 0; pos = WriteIf( Lagging, "3. Lagging", WriteIf( Improving, "4. Improving", WriteIf( Leading, "1. Leading", WriteIf( Weakening, "2. Weakening", "5." ) ) ) ); poss = IIf( Lagging, 3, IIf( Improving, 4, IIf( Leading, 1, IIf( Weakening, 2, 5 ) ) ) ); qcolor = IIf( Lagging, colorOrange, IIf( Improving, colorSkyblue, IIf( Leading, colorBrightGreen, IIf( Weakening, colorYellow, colorLightGrey ) ) ) ); VAL = V * C / ( 10 ^ 9 * 0.01); Chg = ROC( C, 1 ); _SECTION_END(); Buy = (state == 1 AND UPBAR) OR (C>TOP AND Ref(C,-1)<=TOP) AND bearbar //(Ref(state,1) == 1 AND Ref(UPBAR,1) AND (Banker>=MAbanker OR Banker>=20) AND Banker > MA(Banker,10)) OR (C>TOP AND Ref(C,-1)<=TOP) ; Sell= (state == 0 AND DOWNBAR) AND Ref(state,-3) == 1//Ref(state,1) == 0 AND Ref(DOWNBAR,1) ; Sell=ExRem(Ref(Sell,1),Ref(Buy,1)); Buy=ExRem(Ref(Buy,1),Ref(Sell,1)); //Sell=ExRem(Sell,Buy); Buy=ExRem(Buy,Sell); PlotShapes(IIf(Buy,shapeHollowSmallUpTriangle,shapeNone),colorYellow,0,Graph0Low,-12); PlotShapes(IIf(Sell,shapeHollowSmallDownTriangle,shapeNone),colorWhite,0,Graph0High,-12); Filter = pos == "1. Leading" OR pos == "4. Improving"; Filter = Filter AND (Buy OR Sell) AND V>1000000 AND V>5; //---------------------------------------------------------------------------------------------- AddColumn( IIf( Buy, 66,1 ), "Buy", formatChar, 1, bkcolor =IIf (Buy,colorGreen, colorRed )); AddColumn( IIf( Sell, 83,1 ), "Sell", formatChar, 1, bkcolor =IIf (Sell,colorRed, colorGreen )); AddColumn(C, "Close",1.2,colorYellow,colorCustom16); AddColumn(Top, "Top",1.2,colorGreen); AddColumn(Bottom, "Bottom",1.2,colorRed); AddColumn(IIf((C>TOP AND Ref(C,-1)<=TOP),1,0), "Break",1.2,colorDefault); AddColumn(Volume,"Volume Today", 1.2,colorYellow,colorCustom16); AddColumn(Volume10,"Ave 10 days Volume", 1, colorBlue); AddColumn(Percentage," % Increase", 1.2, colorBlue); AddColumn(z,"RSI", 1.2,IIF(z >= 50, colorSeaGreen,colorRed)); //---------------------------------------------------------------------------------------------- AddColumn(Ref(C,1),"Price 1D",1.2); _Change1d = IIf(Buy,((Ref(C,1)-Close)/Close)*100,IIf(Sell,((Close-Ref(C,1))/Ref(C,1))*100,((Ref(C,1)-Close)/Close)*100)); AddColumn(_Change1d,"% Price 1D",1.2,IIf(_Change1d >= 0,colorGreen,colorRed)); AddColumn(Ref(C,3),"Price 3D",1.2); _Change3d = IIf(Buy,((Ref(C,3)-Close)/Close)*100,IIf(Sell,((Close-Ref(C,3))/Ref(C,3))*100,((Ref(C,1)-Close)/Close)*100)); AddColumn(_Change3d,"% Price 3D",1.2,IIf(_Change3d >= 0,colorGreen,colorRed)); AddColumn(Ref(C,5),"Price 1W",1.2); _Change5d = IIf(Buy,((Ref(C,5)-Close)/Close)*100,IIf(Sell,((Close-Ref(C,5))/Ref(C,5))*100,((Ref(C,1)-Close)/Close)*100)); AddColumn(_Change5d,"% Price 1W",1.2,IIf(_Change5d >= 0,colorGreen,colorRed)); AddColumn(Ref(C,20),"Price 1M",1.2); _Change20d = IIf(Buy,((Ref(C,20)-Close)/Close)*100,IIf(Sell,((Close-Ref(C,20))/Ref(C,20))*100,((Ref(C,1)-Close)/Close)*100)); AddColumn(_Change20d,"% Price 1M",1.2,IIf(_Change20d >= 0,colorGreen,colorRed)); //---------------------------------------------------------------------------------------------- SetSortColumns(2,4,5);