Skip to main content

Demand Indicator for Amibroker (AFL)

nl100 over 15 years ago Amibroker (AFL)

  • Rating:
    2 / 5 (Votes 3)
  • Tags:
    oscillator, amibroker

Demand supply indicator

Screenshots

Indicator / Formula

Copy & Paste Friendly
arg = ParamList("Weighted Close", "Close|Avg|WtClose|Median", 2);
Const = Param("Constant", 10, .50, 10.5, 0.01);
periods = Param("periods", 100, 10, 40, 1);
Lb = Param("lb", 4, 2, 10, 1);
if(arg == "Close") WtClose = C;
if(arg == "Avg")	WtClose = Avg;
if(arg == "WtClose") WtClose = (H + L + C + C)/4;
if(arg == "Median") 	WtClose = (H + L)/2;
AvgTr = MA(HHV(H, Lb) - LLV(L, Lb), periods);
WtCratio = (WtClose - Ref(WtClose, -1))/Min(WtClose, Ref(WtClose, -1));
VolRatio = Volume/MA(Volume, periods);
Constant = ((WtClose * 3)/AvgTr) * abs(WtCRatio);
Constant = IIf(Constant > Const, Const, Constant);
Constant = VolRatio /exp(Constant);
BuyP = IIf(WtCRatio > 0, VolRatio, Constant);
SellP = IIf(WtCRatio > 0, Constant, VolRatio);
BuyPressure = EMA(BuyP, periods);
SellPressure = EMA(SellP, periods);
tmpDI = IIf(SellPressure > BuyPressure, -BuyPressure/SellPressure,
SellPressure/BuyPressure);
DMI = IIf(tmpDi < 0, -1 - tmpDI, 1 - tmpDI)*100;

Plot(dmi, "demand index", colorBlue, styleLine);

0 comments

Leave Comment

Please login here to leave a comment.