Stock Portfolio Organizer
The ultimate porfolio management solution.
WiseTrader Toolbox
#1 Selling Amibroker Plugin featuring:
ADX MTF Exploration for Amibroker (AFL)
Here is the ADX with MTF exploration…..
1. It displays ADX in selected (current) TF
2. It displays MTF status in the title bar
3. It explores ADX Status in MTF (While exploring, select Hourly TF)
Similar Indicators / Formulas
Indicator / Formula
/////////// Current TF _SECTION_BEGIN("ADX Trend Indicator Signal"); // ADX Trend Indicator Signal // PARAMETERS ADX_Parm = Param( "ADX Period", 10, 5, 50,1); // FORMULA ADXwk = ADX(ADX_Parm) < 25; ADXst = ADX(ADX_Parm) > 25 AND ADX(ADX_Parm) < 50 ; ADXvs = ADX(ADX_Parm) > 50 AND ADX(ADX_Parm) < 75 ; ADXex = ADX(ADX_Parm) > 75; ADXchoppy = ADX(ADX_Parm) < PDI(ADX_Parm) AND ADX(ADX_Parm) < MDI(ADX_Parm); // VARIABLES ADXc_Status = WriteIf(ADXwk,"Weak", WriteIf(ADXst,"Good", WriteIf(ADXvs,"Strong", WriteIf(ADXex,"EXCELENT", WriteIf(ADXchoppy,"Choppy","Neutral"))))); ADXc_Color = IIf(ADXwk,colorRed, IIf(ADXst,colorDarkGreen, IIf(ADXvs,colorBrightGreen, IIf(ADXex,colorLime, colorLightGrey)))); // IIf(ADXchoppy,colorGold,colorLightGrey))))); Color2 = IIf(ADXchoppy,colorGold,colorBlack); Plot(ADX(ADX_Parm),"ADX"+ADX_Parm,ADXc_Color,styleLine); emaADX=EMA(ADX(ADX_Parm),9); Plot(emaAdX,"ema ADX",colorWhite,styleLine); Plot(25,"",color2,styleLine); //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Current TF ADX Over xxxxxxxxxxxxxxxxxxxxxxxxxx// TimeFrameSet( inHourly ); // switch Time Frame ADX_Parmh = 10; ADXwkh = ADX(ADX_Parmh) < 25; ADXsth = ADX(ADX_Parmh) > 25 AND ADX(ADX_Parmh) < 50 ; ADXvsh = ADX(ADX_Parmh) > 50 AND ADX(ADX_Parmh) < 75 ; ADXexh = ADX(ADX_Parmh) > 75; ADXchoppyh = ADX(ADX_Parmh) < PDI(ADX_Parmh) AND ADX(ADX_Parmh) < MDI(ADX_Parmh); // VARIABLES ADXc_Statush = WriteIf(ADXwkh,"Weak", WriteIf(ADXsth,"Good", WriteIf(ADXvsh,"Strong", WriteIf(ADXexh,"EXCELENT", WriteIf(ADXchoppyh,"Choppy","Neutral"))))); ADXc_Colorh = IIf(ADXwkh,colorRed, IIf(ADXsth,colorDarkGreen, IIf(ADXvsh,colorBrightGreen, IIf(ADXexh,colorLime, colorLightGrey)))); // IIf(ADXchoppy,colorGold,colorLightGrey))))); Color2h = IIf(ADXchoppyh,colorGold,colorBlack); myArrayh=ADX(ADX_Parmh); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxx Daily xxxxxxxxxxxxxxxxxx/////////// TimeFrameSet( inDaily ); // switch Time Frame ADX_Parmd = 10; ADXwkd = ADX(ADX_Parmd) < 25; ADXstd = ADX(ADX_Parmd) > 25 AND ADX(ADX_Parmd) < 50 ; ADXvsd = ADX(ADX_Parmd) > 50 AND ADX(ADX_Parmd) < 75 ; ADXexd = ADX(ADX_Parmd) > 75; ADXchoppyd = ADX(ADX_Parmd) < PDI(ADX_Parmd) AND ADX(ADX_Parmd) < MDI(ADX_Parmd); // VARIABLES ADXc_Statusd = WriteIf(ADXwkd,"Weak", WriteIf(ADXstd,"Good", WriteIf(ADXvsd,"Strong", WriteIf(ADXexd,"EXCELENT", WriteIf(ADXchoppyd,"Choppy","Neutral"))))); ADXc_Colord = IIf(ADXwkd,colorRed, IIf(ADXstd,colorDarkGreen, IIf(ADXvsd,colorBrightGreen, IIf(ADXexd,colorLime, colorLightGrey)))); // IIf(ADXchoppy,colorGold,colorLightGrey))))); Color2d = IIf(ADXchoppyd,colorGold,colorBlack); myArrayd=ADX(ADX_Parmd); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Daily over xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// //xxxxxxxxxxxxxxxxxxxxxxxxxxx Wekly xxxxxxxxxxxxxxxxxx/////////// TimeFrameSet( inWeekly ); // switch Time Frame ADX_Parmw = 10; ADXwkw = ADX(ADX_Parmw) < 25; ADXstw = ADX(ADX_Parmw) > 25 AND ADX(ADX_Parmw) < 50 ; ADXvsw = ADX(ADX_Parmw) > 50 AND ADX(ADX_Parmw) < 75 ; ADXexw = ADX(ADX_Parmw) > 75; ADXchoppyw = ADX(ADX_Parmw) < PDI(ADX_Parmw) AND ADX(ADX_Parmw) < MDI(ADX_Parmw); // VARIABLES ADXc_Statusw = WriteIf(ADXwkw,"Weak", WriteIf(ADXstw,"Good", WriteIf(ADXvsw,"Strong", WriteIf(ADXexw,"EXCELENT", WriteIf(ADXchoppyw,"Choppy","Neutral"))))); ADXc_Colorw = IIf(ADXwkw,colorRed, IIf(ADXstw,colorDarkGreen, IIf(ADXvsw,colorBrightGreen, IIf(ADXexw,colorLime, colorLightGrey)))); // IIf(ADXchoppy,colorGold,colorLightGrey))))); Color2w = IIf(ADXchoppyw,colorGold,colorBlack); myArrayw=ADX(ADX_Parmw); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Weekly over xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// //xxxxxxxxxxxxxxxxxxxxxxxxxxx Monthly xxxxxxxxxxxxxxxxxx/////////// TimeFrameSet( inMonthly ); // switch Time Frame ADX_Parmm = 10; ADXwkm = ADX(ADX_Parmm) < 25; ADXstm = ADX(ADX_Parmm) > 25 AND ADX(ADX_Parmm) < 50 ; ADXvsm = ADX(ADX_Parmm) > 50 AND ADX(ADX_Parmm) < 75 ; ADXexm = ADX(ADX_Parmm) > 75; ADXchoppym = ADX(ADX_Parmm) < PDI(ADX_Parmm) AND ADX(ADX_Parmm) < MDI(ADX_Parmm); // VARIABLES ADXc_Statusm = WriteIf(ADXwkm,"Weak", WriteIf(ADXstm,"Good", WriteIf(ADXvsm,"Strong", WriteIf(ADXexm,"EXCELENT", WriteIf(ADXchoppym,"Choppy","Neutral"))))); ADXc_Colorm = IIf(ADXwkm,colorRed, IIf(ADXstm,colorDarkGreen, IIf(ADXvsm,colorBrightGreen, IIf(ADXexm,colorLime, colorLightGrey)))); // IIf(ADXchoppy,colorGold,colorLightGrey))))); Color2m = IIf(ADXchoppym,colorGold,colorBlack); myArraym=ADX(ADX_Parmm); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Monthly over xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// //xxxxxxxxxxxxxxxxxxxxxxxxxxx Quarterly xxxxxxxxxxxxxxxxxx/////////// TimeFrameSet( inQuarterly ); // switch Time Frame ADX_Parmq = 10; ADXwkq = ADX(ADX_Parmq) < 25; ADXstq = ADX(ADX_Parmq) > 25 AND ADX(ADX_Parmq) < 50 ; ADXvsq = ADX(ADX_Parmq) > 50 AND ADX(ADX_Parmq) < 75 ; ADXexq = ADX(ADX_Parmq) > 75; ADXchoppyq = ADX(ADX_Parmq) < PDI(ADX_Parmq) AND ADX(ADX_Parmq) < MDI(ADX_Parmq); // VARIABLES ADXc_Statusq = WriteIf(ADXwkq,"Weak", WriteIf(ADXstq,"Good", WriteIf(ADXvsq,"Strong", WriteIf(ADXexq,"EXCELENT", WriteIf(ADXchoppyq,"Choppy","Neutral"))))); ADXc_Colorq = IIf(ADXwkq,colorRed, IIf(ADXstq,colorDarkGreen, IIf(ADXvsq,colorBrightGreen, IIf(ADXexq,colorLime, colorLightGrey)))); Color2q = IIf(ADXchoppyq,colorGold,colorBlack); myArrayq=ADX(ADX_Parmq); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Quarterly over xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// //xxxxxxxxxxxxxxxxxxxxxxxxxxx Yearly xxxxxxxxxxxxxxxxxx/////////// TimeFrameSet( inYearly ); // switch Time Frame ADX_Parmy = 10; ADXwky = ADX(ADX_Parmy) < 25; ADXsty = ADX(ADX_Parmy) > 25 AND ADX(ADX_Parmy) < 50 ; ADXvsy = ADX(ADX_Parmy) > 50 AND ADX(ADX_Parmy) < 75 ; ADXexy = ADX(ADX_Parmy) > 75; ADXchoppyy = ADX(ADX_Parmy) < PDI(ADX_Parmy) AND ADX(ADX_Parmy) < MDI(ADX_Parmy); // VARIABLES ADXc_Statusy = WriteIf(ADXwky,"Weak", WriteIf(ADXsty,"Good", WriteIf(ADXvsy,"Strong", WriteIf(ADXexy,"EXCELENT", WriteIf(ADXchoppyy,"Choppy","Neutral"))))); ADXc_Colory = IIf(ADXwky,colorRed, IIf(ADXsty,colorDarkGreen, IIf(ADXvsy,colorBrightGreen, IIf(ADXexy,colorLime, colorLightGrey)))); Color2y = IIf(ADXchoppyy,colorGold,colorBlack); myArrayy=ADX(ADX_Parmy); TimeFrameRestore(); // restore time frame to original //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Quarterly over xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx// //~~~~~~~~~~~~~~~~~~~~~~~~~~`Variable Expand ~~~~~~~~~~~~~~~~~~~~~~~~~~`// MyArrayh = TimeFrameExpand(MyArrayh, inHourly); MyArrayd = TimeFrameExpand(MyArrayd, inDaily); MyArrayw = TimeFrameExpand(MyArrayw, inWeekly); MyArraym = TimeFrameExpand(MyArraym, inMonthly); MyArrayq = TimeFrameExpand(MyArrayq, inQuarterly); MyArrayy = TimeFrameExpand(MyArrayy, inYearly); // EXPLORER Filter = 1; AddColumn(myArrayh,"Hourly" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statush,"Hrly",1,colorWhite,ADXc_Colorh); AddColumn(myArrayd,"Daily" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statusd,"Daily",1,colorWhite,ADXc_Colord); AddColumn(myArrayw,"Weekly" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statusw,"Weekly",1,colorWhite,ADXc_Colorw); AddColumn(myArraym,"Motnhly" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statusm,"Monthly",1,colorWhite,ADXc_Colorm); AddColumn(myArrayq,"Qtrly" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statusq,"Qtly",1,colorWhite,ADXc_Colorq); AddColumn(myArrayy,"Yearly" , 1.2 , colorDefault , colorDefault , 65); AddTextColumn(ADXc_Statusy,"Yearly",1,colorWhite,ADXc_Colory); _SECTION_END(); ///////////// Title ////////////////// Change=C-Ref(C,-1); ROCVal = ROC(C,1); Title = "ADX: " + NumToStr(ADX(ADX_Parm),1.2) + ", Status:" + ADXc_Status +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Hrly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmh),1.2)+";"+ ADXc_Statush +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Dly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmd),1.2)+";"+ ADXc_Statusd +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Wkly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmw),1.2)+";"+ ADXc_Statusw +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Mthly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmm),1.2)+";"+ ADXc_Statusm +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Qtrly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmq),1.2)+";"+ ADXc_Statusq +EncodeColor(colorWhite) +" | " +EncodeColor(colorBlue) + " Yrly :" +EncodeColor(colorBlack) + NumToStr(ADX(ADX_Parmy),1.2)+";"+ ADXc_Statusy; /* + ", L:" +L+ ", C:"+ C +" ("+NumToStr(Change,1.2)+" )" +" ("+NumToStr(ROCVal,1.2)+" %%)") + WriteIf(IDNR7, EncodeColor(colorBrightGreen) + WriteIf(idm7 > 1, StrLeft(NumToStr(idm7), 4), "") + " IDNR7 ", "") + WriteIf(IDNR4, EncodeColor(colorLightOrange) + WriteIf(idm4 > 1, StrLeft(NumToStr(idm4), 4), "") + " IDNR4 ", "") + WriteIf(NR7 AND NOT ID, EncodeColor(colorBrightGreen) + WriteIf(m7 > 1, StrLeft(NumToStr(m7), 4), "") + " NR7 ", "") + WriteIf(NR4 AND NOT ID, EncodeColor(colorLightOrange) + WriteIf(m4 > 1, StrLeft(NumToStr(m4), 4), "") + " NR4 ", "") + WriteIf(ID AND NOT NR7 AND NOT NR4, EncodeColor(colorTurquoise) + WriteIf(idm > 1, StrLeft(NumToStr(idm), 4), "") + " Inside Day ", "") + ", Range=" + Prec(R + 0.00001, 2) + "," +EncodeColor(colorBlack) +" Vol : "+NumToStr(V,1.2) + "," +EncodeColor(colorYellow) + " LSMA 25: " +NumToStr(LSMA25,1.2) +"\n"+EncodeColor(41)+"HrlyTrend: " +WriteIf(hup,EncodeColor(colorBrightGreen)+"Up ", WriteIf(hdN,EncodeColor(colorRed)+"Down", WriteIf(hflat,EncodeColor(colorWhite)+"Flat ",""))) +"\n"+EncodeColor(41)+"DailyTrend: " +WriteIf(dup,EncodeColor(colorBrightGreen)+"Up ", WriteIf(ddN,EncodeColor(colorRed)+"Down", WriteIf(dflat,EncodeColor(colorWhite)+"Flat ",""))) +EncodeColor(colorWhite) +"\n"+EncodeColor(41)+"WeeklyTrend: " +WriteIf(wup,EncodeColor(colorBrightGreen)+"Up ", WriteIf(wdN,EncodeColor(colorRed)+"Down", WriteIf(wflat,EncodeColor(colorWhite)+"Flat ",""))) +EncodeColor(colorWhite) +"\n"+EncodeColor(41)+"MonthlyTrend: " +WriteIf(mup,EncodeColor(colorBrightGreen)+"Up ", WriteIf(mdN,EncodeColor(colorRed)+"Down", WriteIf(mflat,EncodeColor(colorWhite)+"Flat ",""))) +EncodeColor(colorWhite) +EncodeColor(colorBlue)
4 comments
Leave Comment
Please login here to leave a comment.
Back
Good exploration
Hi,
This code does not contain standard setting.
One may use following code.
Is there an option to sort the Exploration by the strongest to the weakest? Currently this is sorted by Ticker and Timeframe. Would like to have it sorted by Strongest to Weakest.
Hi,
While the exploration looks good, the values it shows for ADX in exploration seem to be wrong bcoz when I open a particular chart it shows different ADx values.
Is there something I am doing wrong?
Thanks
Vijay