Buenos días.
Querría saber si existe screeners para detectar divergencias en los indicadores más utilizados: MACD , RSI y ESTOCASTICO.
Gracias.
Buenos dias
en el archivo adjunto mi analizador de divergencia RSI,MACD,MFI,STOCASTICAL
En primer lugar, muchas gracias JacquesGermain por contestar.
No obstante, me es imposible abrir el archivo en ese formato. ¿Podrías pasarlo en otro? Gracias.
N=40
miMACD=MACDline[9,19,6](typicalprice)
miRSI = RSI[14](close)
miMFI = MoneyFlowIndex[14]
miSTOC = Stochastic[14,3](close)
signalmacd=0
signalmfi=0
signalrsi=0
signalSTOC=0
IF (miMACD[1]>miMACD AND miMACD[1]>miMACD[2]) THEN
extremum2=miMACD[1]
extremum1=highest[N](miMACD)
preciomax2=close[1]
preciomax=Highest[N](close)
IF(extremum2<extremum1 AND preciomax2>preciomax[1]) THEN
for i=1 to N
if close[i]=preciomax[1] then
signalmacd=-1
endif
next
endif
endif
IF (miMACD[1]<miMACD AND miMACD[1]<miMACD[2]) THEN
extremum22=miMACD[1]
extremum11=lowest[N](miMACD)
preciomin2=close[1]
preciomin=lowest[N](close)
IF(extremum22>extremum11 AND preciomin2<preciomin[1]) THEN
for i2=1 to N
if close[i2]=preciomin[1] then
signalmacd=1
endif
next
endif
endif
IF (miRSI[1]>miRSI AND miRSI[1]>miRSI[2]) THEN
extremumrsi2=miRSI[1]
extremumrsi1=highest[N](miRSI)
preciomaxrsi2=close[1]
preciomaxrsi=Highest[N](close)
IF(extremumrsi2<extremumrsi1 AND preciomaxrsi2>preciomaxrsi[1]) THEN
for j=1 to N
if close[j]=preciomaxrsi[1] then
signalrsi=-2
endif
next
endif
endif
IF (miRSI[1]<miRSI AND miRSI[1]<miRSI[2]) THEN
extremumrsi22=miRSI[1]
extremumrsi11=lowest[N](miRSI)
preciominrsi2=close[1]
preciominrsi=lowest[N](close)
IF(extremumrsi22>extremumrsi11 AND preciominrsi2<preciominrsi[1]) THEN
for j2=1 to N
if close[j2]=preciominrsi[1] then
//zz2=j2
signalrsi=2
endif
next
endif
endif
IF (miMFI[1]>miMFI AND miMFI[1]>miMFI[2]) THEN
extremumMFI2=miMFI[1]
extremumMFI1=highest[N](miMFI)
preciomaxMFI2=close[1]
preciomaxMFI=Highest[N](close)
IF(extremumMFI2<extremumMFI1 AND preciomaxMFI2>preciomaxMFI[1]) THEN
for k=1 to N
if close[k]=preciomaxMFI[1] then
signalMFI=-3
endif
next
endif
endif
IF (miMFI[1]<miMFI AND miMFI[1]<miMFI[2]) THEN
extremumMFI22=miMFI[1]
extremumMFI11=lowest[N](miMFI)
preciominMFI2=close[1]
preciominMFI=lowest[N](close)
IF(extremumMFI22>extremumMFI11 AND preciominMFI2<preciominMFI[1]) THEN
for k2=1 to N
if close[k2]=preciominMFI[1] then
signalMFI=3
endif
next
endif
endif
IF (miSTOC[1]>miSTOC AND miSTOC[1]>miSTOC[2]) THEN
extremumsto2=miSTOC[1]
extremumsto1=highest[N](miSTOC)
preciomaxsto2=close[1]
preciomaxsto=Highest[N](close)
IF(extremumsto2<extremumsto1 AND preciomaxsto2>preciomaxsto[1]) THEN
for k=1 to N
if close[k]=preciomaxsto[1] then
signalSTOC=-4
endif
next
endif
endif
IF (miSTOC[1]<miSTOC AND miSTOC[1]<miSTOC[2]) THEN
extremumsto22=miSTOC[1]
extremumsto11=lowest[N](miSTOC)
preciominsto2=close[1]
preciominsto=lowest[N](close)
IF(extremumsto22>extremumsto11 AND preciominsto2<preciominsto[1]) THEN
for k2=1 to N
if close[k2]=preciominsto[1] then
signalSTOC=4
endif
next
endif
endif
SCREENER[ signalrsi or signalmacd or signalMFI or signalSTOC](Signalmacd AS “signal macd”,signalrsi as “signal rsi”,signalmfi as “signal mfi”,signalSTOC as “signalstoc”)