Utilizando los trabajos del colega Gestur (Josep Hervás), descubrió que el indicador manipulación era totalmente compatible con el estraperlo chivato.
Uniendo ambos códigos, eliminando algunos elementos del estraperlo chivato, la creación tomó imagen...
La criatura vive !!... |
El aspecto del indicador era intimidante...
Las señales que se producían eran interesantes. El manipulación en la parte central daba información sobre la compra o venta de las manos fuertes (color azul) y las manos débiles (color verde) ,así mismo la linea manipulación (color marron claro) al cruzarse por encima o por debajo de la linea cero, nos daba señales de compra o venta , que podrían ser cotejadas con la curva del estraperlo , así como la aparición de las barras chivatas...
Sin la autorización de Josep , pero con todo el respeto y reconocimiento por su labor , os pongo a vuestra disposición esta mezcla surgida de la mente de un pobre loco investigador de indicadores.
El código para la plataforma Prorealtime !totalmente gratis! ,es :
----------------------------------------------------------------------------------------------------
REM MANIPULACIÓN ESTRAPERLO
rem manipulación
rem Indicador que trata de diferenciar que parte del volumen de negociación
rem corresponde a manos débiles y a manos fuertes.
rem Creado por gestur
rem Variables que controlan el rango adaptativo del area azul y verde.
once divazul=1
once divverde=1
nvol=80
adapt=2
zoomazul=5
zoomverde=5
rem Periodo 1 y 2 de las medias moviles que se encargan de detectar cambios de direccion.
n1=50
n2=3
n3=6
m1 = Average[n1](close)
m2 = Average[n2](close)
m3 = Average[n3](close)
volm = average[nvol](volume)
diferencia1 = Average[2](m2) - Average[2](m1)
diferencia2 = Average[2](m3) - Average[2](m1)
mani1 = (m2 - m1 - diferencia1) / 2
mani2 = m3 - m1 - diferencia2
mani =mani1 + mani2
diferencia = diferencia1
volp = volume / volm
if volp = 0 then
volp = 1
volm = 1
endif
a = (diferencia / open) * volp
b = (close - m1) / close
c = (open - close[1]) / close[1]
d = (close - open) / close
rem Calculamos las franjas azul y verdes en funcion de los dos supuestos y los adaptamos al rango dinamico.
azul = (mani + ((d-c) * volp)) * volp - a
verde = b * volp
if volp <> 0 then
if averde[1] > 1 or averde[1] < -1 then
divverde = divverde * (1 + adapt / 50)
else
divverde = divverde / (1 + adapt / 600)
endif
if aazul[1] > 1 or aazul[1] < -1 then
divazul = divazul * (1 + adapt / 50)
else
divazul = divazul / (1 + adapt / 600)
endif
averde = verde / divverde * zoomverde
aazul = azul / divazul * zoomazul
endif
if averde > 8 then
averde = 8
endif
if averde < -8 then
averde = -8
endif
if aazul > 8 then
aazul = 8
endif
if aazul <-8 then
aazul = -8
endif
rem Ajustamos el indice de manipulacion para que se mantenga en un rango razonable.
amani=mani/(highest[nvol](mani)-lowest[nvol](mani))*2
rem estraperlo chivato
valor1=ExponentialAverage[12](close)
valor2=ExponentialAverage[26](close)
valor3=valor1/valor2
valor4=ExponentialAverage[9](valor3)
mimacd=valor3/valor4-1
val1=Exponentialaverage[5](close)
val2=ExponentialAverage[13](close)
mmacd=val1/val2-1
gd2=average[60](mmacd)
sd=1*STD[60](mmacd)
bollsup=gd2+sd
bollinf=gd2-sd
IF BARINDEX > 1 THEN
IF ZigZag[zz](Close)[2] < ZigZag[zz](Close)[1] AND ZigZag[zz](Close)[1] > ZigZag[zz](Close) THEN
Top = Close[1]
DiMD = mimacd[1]
IF Top <> Top[1] THEN
TwoPrevTop = PrevTop
PrevTop = Top[1]
Top = Top
TwoPrevDiMD = PrevDiMD
PrevDiMD = DiMD[1]
DiMD = DiMD
ENDIF
ENDIF
IF ZigZag[zz](Close)[2] > ZigZag[zz](Close)[1] AND ZigZag[zz](Close)[1] < ZigZag[zz](Close) THEN
Bottom = Close[1]
DiMDb = mimacd[1]
IF Bottom <> Bottom[1] THEN
TwoPrevBottom = PrevBottom
PrevBottom = Bottom[1]
Bottom = Bottom
TwoPrevDiMDb = PrevDiMDb
PrevDiMDb = DiMDb[1]
DiMDb = DiMDb
ENDIF
ENDIF
ENDIF
IF ((Top >= PrevTop AND DiMD CROSSES UNDER PrevDiMD) OR (Top CROSSES OVER PrevTop AND DiMD <= PrevDiMD)) OR ((Top >= TwoPrevTop AND DiMD CROSSES UNDER TwoPrevDiMD) OR (Top CROSSES OVER TwoPrevTop AND DiMD <= TwoPrevDiMD)) THEN
DivergeBottom =-1.8
ELSIF ((Top <= PrevTop AND DiMD CROSSES OVER PrevDiMD) OR (Top CROSSES UNDER PrevTop AND DiMD >= PrevDiMD)) OR ((Top <= TwoPrevTop AND DiMD CROSSES OVER TwoPrevDiMD) OR (Top CROSSES UNDER TwoPrevTop AND DiMD >= TwoPrevDiMD)) THEN
DivergeBottom = -1.8
ELSE
DivergeBottom = 0
ENDIF
IF ((Bottom >= PrevBottom AND DiMDb CROSSES UNDER PrevDiMDb) OR (Bottom CROSSES OVER PrevBottom AND DiMDb <= PrevDiMDb)) OR ((Bottom >= TwoPrevBottom AND DiMDb CROSSES UNDER TwoPrevDiMDb) OR (Bottom CROSSES OVER TwoPrevBottom AND DiMDb <= TwoPrevDiMDb)) THEN
DivergeTop = 1.8
ELSIF ((Bottom <= PrevBottom AND DiMDb CROSSES OVER PrevDiMDb) OR (Bottom CROSSES UNDER PrevBottom AND DiMDb >= PrevDiMDb)) OR ((Bottom <= TwoPrevBottom AND DiMDb CROSSES OVER TwoPrevDiMDb) OR (Bottom CROSSES UNDER TwoPrevBottom AND DiMDb >= TwoPrevDiMDb)) THEN
DivergeTop = 1.8
ELSE
DivergeTop = 0
ENDIF
return DivergeTop COLOURED (0,150,50) as "chivatoalcista",DivergeBottom COLOURED (200,0,0) as "chivatobajista",0 COLOURED (0,0,0) as "cero", aazul COLOURED(0,255,255) as "azul", averde COLOURED(102,255,102) as "verde", aazul COLOURED (0,51,255) as "lazul", averde COLOURED (0,153,51) as "lverde", amani COLOURED (153,102,0) as "mani",mmacd*100 as "LM",bollsup*100 as "BSUP",bollinf*100 as "BINF"
------------------------------------------------------------------------------------------------------------
En cuadro de variables:
zz = 3
Miguel, cada día me gusta más leerte. Algún día compartiremos unos espetos y cervezas en La Mezquitilla.
ResponderEliminarGracias.Me gusta que le guste.Anotado queda lo de los espetos.
EliminarUn saludo.
Popular está throw backeando su mm200. Si confirma el soporte sería buena señal de entrada.
ResponderEliminarhttps://twitter.com/Lupostrike/status/592297561899323392
Gracias Miguel. Te leo desde hace tiempo y me has proporcionado buenas ideas.
Esa es la idea de POP.Si las ideas que le han proporcionado este cutre blog le han servido para sacar algún provecho,me doy por satisfecho.
EliminarUn saludo y gracias a tí.
Así que voy a intentar corresponderte con una idea que vengo experimentando hace tiempo.
ResponderEliminarTe he visto combinar el ADX con DI+ y con DI- y dejando siempre oculta la linea DI.
Un día pensé en ajustar el DI a 200 periodos, que al fin y al cabo es el santo grial de los analistas, la media de 200 periodos.
El resultado es sorprendente porque parece proporcionar indicios sobre suelo y techo de mercado cuando se le aplican unas medias móviles que ademas también ayudan a determinar la tendencia del precio.
Me gustaría si puede ser,me mandases un gráfico con ese ADX a 200,si lo veo ma o meno lo comprendo.
EliminarMi correo : castillomorenom@gmail.com
Buenos dias Miguel Angel,
ResponderEliminarme podrias indicar como se ponen las variables en Prorealtime?
Voy a variables /añadir perono se como rellenarlo....
Muchas gracias por tu blog y por compartirlo.
Juan
Si te vas a la parte derecha del blog, en ETIQUETAS, y te lees GUIA DUMMIE PARA ESTRAPERLO,vas a cojer la idea de como se hace.
EliminarUn saludo Juan y felicidades hoy en tu santo.
Gracias Miguel Angel y ayer mi cumple, jjjj
Eliminarseria algo asi:
Nombre usado en programa: zz / Etiqueta en ventana de propiedades: zz / Tipo: Entero / Restriccion: mayor que 0 / Valor por defecto: 3
Los colores ya los he puesto y los histogramas pero la duda la tengo en añadir la variable.
Muchas gracias,
Juan
Este comentario ha sido eliminado por el autor.
ResponderEliminarEste comentario ha sido eliminado por el autor.
Eliminar