// DIVERGENCES TTI STOCHASTIC EXTREME
//TTI Sctochastic Extreme PRC 12.05.2017
//Nicolas @ www.prorealcode.com
lookback = 10
if close>average[14] then
x1 = std[14]
else
x1 = -1*std[14]
endif
//x2 = (summation[3](x1-lowest[5](x1))/summation[3](highest[5](x1)-lowest[5](x1)))*100
x3 = x1*averagetruerange[5]
x4 = (summation[3](x3-lowest[5](x3))/summation[3](highest[5](x3)-lowest[5](x3)))*100
//a = average[3,1](x2)
//b = average[3,1](x4)
b = exponentialaverage[3](x4)
//return b as " ax4 ", 5 style(line) as "level 5", 95 style(line) as "level 95",close as "close"
// a style(dottedline)as "ax2"
// Variable :
// ma = 14 entier
///////////////////////////////////////////////////////////////////////
// DIVERGENCES STOCHASTIQUES BAISSIERES et HAUSSIERES d’après le code de HKlisse
x = b [7]
y=average[2](x)
// DIVERGENCES BAISSIERES TTI
if x>y then
hi=max(hi,x)
hico=max(hico,max(high,high[1]))
endif
if x crosses under y then
sto2b=sto1b
sto1b=hi
hi=0
p3b=p1b
p2b=max(p1b,hico1)
p1b=max(highest[3](high),hico)
if p2b=p1b then
p2b=max(p3b,p4b)
endif
hico=0
hico1=0
endif
if x<y then
p4b=hico1
hico1=max(hico1,high)
endif
if p1b>p2b and sto1b<sto2b and x crosses under y and x<x[1] then
signB= 5 //-2
else
signB= 0
endif
// DIVERGENCES HAUSSIERES TTI
if x<y then
lo=min(lo,x)
lowco=min(lowco,min(low,low[1]))
endif
if x CROSSES OVER y then
sto2h=sto1h
sto1h=lo
lo=100
p3h=p1h
p2h=min(p1h,lowco1)
p1h=min(lowest[3](low),lowco)
if p2h=p1h then
p2h=min(p3h,p4h)
endif
lowco=100000
lowco1=100000
endif
if x>y then
p4h=lowco1
lowco1=min(lowco1,low)
endif
if p1h<p2h and sto1h > sto2h and x crosses over y and x>x[1] then
signH= 5 //2
else
signH= 0
endif
////////////////////////////////////////////////
test = summation[lookback](signB<>0 or signH<>0)>0
screener[test]
//return signH as " div TTI H ", signB as " div TTI B " , 0 as " zero "
// Variable : p = 7