OBVDI

OBVDI

Type: User-Function, Name: OBVDI

Inputs: Length(Numeric);
Vars: BollTop(0), BollBot(0), PerB(0), OBVBollTop(0), OBVBollBot(0), OBVPerB(0);

BollTop=BollingerBand(Close,Length,2);
BollBot=BollingerBand(Close,Length,-2);
If (BollTop-BollBot)<>0 then PerB=(Close-BollBot)/(BollTop-BollBot);

OBVBollTop=BollingerBand(OBV,Length,2);
OBVBollBot=BollingerBand(OBV,Length,-2);
If (OBVBollTop-OBVBollBot)<>0 then OBVPerB=(OBV-OBVBollBot)/(OBVBollTop-OBVBollBot);
OBVDI=(1+PerB)/(1+OBVPerB);

 

 

Type: User-Function, Name: NVDI

Inputs: Length(Numeric);
Vars: BollTop(0), BollBot(0), PerB(0), NegVBollTop(0), NegVBollBot(0), NegVPerB(0), NegV(0);

If Currentbar=1 then NegV=100;
BollTop=BollingerBand(Close,Length,2);
BollBot=BollingerBand(Close,Length,-2);
If (BollTop-BollBot)<>0 then
PerB=(Close-BollBot)/(BollTop-BollBot);
NegV=IFF(Volume<Volume[1],NegV+((Close-Close[1])/Close[1])*100,NegV);

NegVBollTop=BollingerBand(NegV,Length,2);
NegVBollBot=BollingerBand(NegV,Length,-2);
If (NegVBollTop-NegVBollBot)<>0 then
NegVPerB=(NegV-NegVBollBot)/(NegVBollTop-NegVBollBot);

NVDI=(1+PerB)/(1+NegVPerB);

 

Type: Indicator, Name: OBVDI w/ Avg

Plot1( OBVDI(33),»OBVDI»);
Plot2( Average(OBVDI(33),4),»AvgOBVDI»);

Николай Солабуто
Оцените автора
Николай Солабуто
Добавить комментарий