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 ....
For Portfolio Manager Click Here

WiseTrader Toolbox

#1 Selling Amibroker Plugin featuring:

Advanced Adaptive Indicators
Advanced Pattern Exploration
Neural Networks
And Much More ....
Find Out More Here

ADX BUY SELL FOR AMI 5.3 for Amibroker (AFL)

Rating:
4 / 5 (Votes 3)
Tags:
oscillator, trading system, amibroker

THIS INDICATOR IS MODIFIED FOR AMI 5.3 {ORIGINAL POST BY HAMAN} INDICATOR NAME IS “best adx signal amajeed for Amibroker (AFL)”

I ADDED 1 MORE FUNCTION WHICH REMOVES EXTRA BUY SELL SIGNALS

Similar Indicators / Formulas

Rahul Mohindar Oscillator (RMO)
Submitted by kaiji over 9 years ago
Volatility System
Submitted by kaiji over 9 years ago
NIFTYTIGER'S MAGIC LINES
Submitted by niftytiger about 7 years ago
Zerolag MACD
Submitted by myth.goa about 7 years ago
MACD Prediction
Submitted by EliStern over 8 years ago
MACD MT4/MT5
Submitted by vivek998877 about 7 years ago

Indicator / Formula

Copy & Paste Friendly
_SECTION_BEGIN("ADX");
Range             = Param(" +DI - D range", 10, 5, 30,1 );
Plot(PDI(Range),"",8,4);
Plot(MDI(Range),"",4,4);
Plot(MDI(Range),"",4,10);
Plot(ADX(Range),"",6,styleThick);
Plot(ADX(Range),"",6,4);

Buy             = Cross(PDI(Range), MDI(Range)) OR Cross (PDI(Range), ADX(Range))OR Cross (ADX(Range), MDI(Range));
Sell            = Cross(MDI(Range), PDI(Range))OR Cross (MDI(Range), ADX(Range))OR Cross (ADX(Range), PDI (Range)) OR  (PDI(Range)>=(40) );
TradeDisplay = ParamToggle("Remove Extra Trades?", "No|Yes");

if(TradeDisplay != 0){
	Buy = ExRem(Buy, Sell);
  	Sell = ExRem(Sell, Buy); // THIS WILL REMOVE EXESS SIGNALS ON A CHART OR IN AN EXPLORATION 
}

Filter = Buy OR Sell;
Action = WriteIf(Buy, "BUY", WriteIf(Sell, "SELL", "   "));

shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
 
PlotShapes(IIf(Buy,shapeUpArrow,shapeNone),colorGreen);
PlotShapes(IIf(Sell,shapeDownArrow,shapeNone),colorRed);

bars=SelectedValue(Min( BarsSince( Cross(PDI(Range) , MDI(Range) )), BarsSince( Cross( MDI(Range), PDI(Range))) ));
prevclose=Ref(Close,-bars);
Com=EncodeColor(colorTan)+("\n\nCurrently the +DMI ("+Range+") is "+
WriteIf(PDI(Range) > MDI(Range),"bullish","bearish")+", and it crossed "+
WriteIf(PDI(Range) > MDI(Range),"above","below")+" -DMI ("+Range+") ."+"\n"+EncodeColor(colorAqua)+
WriteVal( Min( BarsSince( Cross( PDI(Range), MDI(Range) )), BarsSince( Cross( MDI(Range), PDI(Range)))), 0.0)+
" period(s) ago.")+EncodeColor(colorTan)+
Com=("\n\nSince the +DMI crossed -DMI, "+Name()+ "'s price has  : ")+EncodeColor(colorGold)+"\n"+
WriteIf(Close>prevclose,"increased %","decreased %")+WriteVal(100*(Close-prevclose)/prevclose)+
EncodeColor(colorTan)+Com=("\n\nAnd has ranged from a high of "+
WriteVal(HHV(High,bars+1),6.2)+" to a low of "+WriteVal(LLV(Low,bars+1),6.2));
Title = EncodeColor(colorWhite)+ "ABS3" + " - " +  Name()  + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
"  - " + Date() +"  -  "+"\n" +EncodeColor(colorBlue) +"Op-"+O+"  "+"Hi-"+H+"  "+"Lo-"+L+"  "+
"Cl-"+C+"  "+ "Vol= "+ WriteVal(V)+ Com;
Plot(40,"",colorDarkGrey,styleDashed|styleNoLabel);
Plot(20,"",colorDarkGrey,styleDashed|styleNoLabel);
_SECTION_END();

1 comments

1. haman

IAM WITH U BUT
WHY I PUT DIFERENT SIGNALS?
BECOSE IF ADX CROSS PDI OR MDI THIS WILL GIVE A LONG TREND
AND THE OPPOSITE ,CROSSING ANY OF (PDI OR MDI )ADX THIS MEANS LONG TREND OF THEM
THANKS SER ,ALL OF THEM ARE TRUE

Leave Comment

Please login here to leave a comment.

Back