jueves, 1 de noviembre de 2018

UNA JOYA OCULTA EN EL RSI (2) - CÓDIGO

Hola de nuevo

En esta entrada aporto el código para prorealtime, del indicador RSI separando las fuerzas positivas y negativas, de mi creación.

Podéis copiarlo y pegarlo en la plataforma, pero no olvidéis definir las variables "n" y "p", ambas con el valor predeterminado de 14.

Este indicador lo uso en temporalidad semanal como base para aplicar estrategias en diario, dependiendo si la zona que marca es alcista, bajista o lateral.

Saludos

--------------------------------------------------------------------------------------------------------------------------

//Indicador RSI separando el promedio de ganancias del promedio de perdidas

If barindex<2 then
Var=0
else
//Variación sobre el día anterior
Var=close-close[1]
if var>0 then
Varpos=var
Varneg=0
else
Varpos=0
Varneg=-var
endif
endif

//Cálculo de los promedios positivos y negativos
if barindex<15 then

else
Promediopos=(average[n](Varpos)[1]*13+Varpos)/14
Promedioneg=(average[n](Varneg)[1]*13+Varneg)/14
endif

//Normalización de los promedios al intervalo RSI
RSIpos=100-100/(1+Promediopos)
RSIneg=100-100/(1+Promedioneg)

//Variación respecto a la referencia fija
//Referencia fija: Media de 14 periodos del valor medio entre RSIpos y RSIneg
MediaPromedios=exponentialaverage[p]((RSIpos+RSIneg)/2)
FuerzaPos=RSIpos-MediaPromedios
FuerzaNeg=RSIneg-MediaPromedios


Return 0, FuerzaPos, FuerzaNeg




miércoles, 31 de octubre de 2018

UNA JOYA OCULTA EN EL RSI

Voy a dedicar este articulo, de nuevo a mi indicador favorito, el Relative Strength Index, mas conocido por RSI, ideado por J. Welles Wilder en 1978.

Es sin duda uno de los indicadores mas conocidos, no así su algoritmo. Esto es debido a que al ser tan famoso y venir cargado por defecto en todas las plataformas, la mayoría, lo cargamos y vamos a buscar sus famosas zonas de sobreventa y sobrecompra, sin pensar en qué es lo que estamos haciendo.

Pues bien, vamos a explicar para empezar, su proceso de calculo:
  • En primer lugar se obtiene la diferencia entre el cierre de la barra actual y la previa.
  • Si la diferencia es positiva se registra en la variable VarPos la diferencia entre los cierres y en la variable VarNeg el valor cero:
    • VarPos = cierre-cierre(anterior)
    • VarNeg = 0
  • Si la diferencia es negativa se registra en la variable VarPos el valor cero y en la variable VarNeg la diferencia EN POSITIVO entre los cierres:
    • VarPos = 0
    • VarNeg = abs(cierre-cierre(anterior))
  • Posteriormente hacemos los promedios de VarPos y VarNeg de las 14 barras anteriores. A esos promedios le llamaremos PromedPos y PromedNeg.
  • Ya estamos en disposición de obetener el índice RS:
    • RS=(PromedPos/PromedNeg)
  • Y por último para obtener el RSI se normaliza al rango 0-100:
    • RSI=100-100/(1+RS)
Y eso es todo, ya tenemos el famoso RSI. Integra en una sola línea la fuerza negativa y la fuerza negativa para analizar la fuerza del precio.


¿Que tal si ahora analizamos las tripas del cálculo? Por ahí hay dos variables que creo son muy útiles, el PromedPos y el PromedNeg. Si las ponemos por separado en un gráfico obtenemos lo siguiente (en verde PromedPos y en rojo PromedNeg).


La primera tentación que tenemos todos a los que nos apasionan los indicadores es analizar esos cruces y ver si cuando la línea verde está por encima de la roja coincide con zonas de subidas y viceversa. Reconocedlo, ya lo habéis hecho todos. Yo también lo hice y ciertamente así solo, ya resulta útil para detectar esas zonas. 

Pero vamos a ir un poco mas allá. Vamos a analizar la variación de ambas curvas respecto a una referencia fija, para ver como se mueven una respecto a otra. Para fijar esa referencia utilizo la media entre las dos, a la que hacemos una media de 14 periodos también (blanca discontinua en el gráfico):


Ahora empezamos a ver a donde quiero llegar. Las zonas de subidas coinciden cuando la linea verde PromedPos está por encima de PromedNeg (y al revés para las bajadas), pero sobre todo cuando PromedPos esta por encima de la media y PromedNeg por debajo (al revés para las bajadas). 

Esto tiene sentido, me explico. Podría pensarse que porque la fuerza positiva sea superior a la fuerza negativa estemos en zona de subidas, pero podría pasar que ambas Fuerzas sean "Fuertes" (por encima de la media) o "Débiles" por debajo de la media y aunque PromedPos sea superior a PromedNeg, estemos en una zona de "empate" y por tanto....voila...en una zona lateral. En las zonas dentro de las elipses amarillas, aproximadamente siempre las dos curvas están del mismo lado de la media.

En un gráfico se ve todo mejor. En éste a todas curvas le he restado la media, y por tanto ésta última se ve ahora horizontal:


Esta técnica me resulta muy útil para detectar zonas de subida, de bajada o laterales y aplicar las estrategias que mas probabilidades de éxito tienen en cada caso.

Un abrazo.


martes, 2 de enero de 2018

UNA ESTRATEGIA PARA EMPEZAR EL AÑO

El origen de la idea que voy a explicar a continuación no es mía, de hecho ha sido publicada. Lo que hecho es adaptarlo a una estrategia que estoy aplicando con cierto éxito.

Al grano. La idea es sencilla y para posiciones largas. Se usan tres indicadores:

1. Una media rápida: media exponencial de 12 sesiones al cierre.
2. El histograma del MACD 12, 26, 9.
3. La linea del MACD 12, 26, 9.

Las opciones son las siguientes:

a. Media creciente e histograma del MACD creciente (situación VERDE).
b. Media decreciente e histograma del MACD decreciente (situación ROJA).
c. Resto de alternativas (las dos restantes) (situación AMARILLA).

Y ahora lo que yo he aportado...la estrategia...:

  1. Temporalidad semanal.
  2. Línea del MACD por encima de cero. Con ésto filtro las zonas alcistas. Fuera de ellas no se opera.
  3. En función de las opciones a, b y c, se actúa de la siguiente forma. Si se viene de una vela o serie de velas de situación roja (o también si el MACD cruza a positivo), en cuanto se pase a situación amarilla o verde se tiene la alarma.
  4. Se entra largo a la superación del máximo de la vela señal.
  5. STOP por debajo del mínimo de la vela señal.
  6. Salida: por debajo del mínimo de primera vela que pase a situación roja. (Si no se rompe la salida en las siguientes velas, la salida se va subiendo de forma dinámica según vayan apareciendo velas en situación roja).
Y ya está.

Para que la estrategia me resulte visual y sencilla (y rastreable con screnners) la he traducido a un indicador que pinta las velas según las situaciones anteriores, verde, rojo y amarillo, pero únicamente si la línea MACD está por encima de cero. Entiendo que esto no es necesario debido a la sencillez de la estrategia y se puede seguir de forma manual o con cualquier otra programación, pero a mi me ayuda.

Ejemplo con ArcellorMittal donde actualmente estoy operando con esta estrategia:

Arcellor Mittal


La eficiencia de la estrategia aumenta si se aplica en zonas relevantes del precio, pero como ese es un factor cuasi-subjetivo, no lo añado como condición.

Mas ejemplos:

VISCOFAN


EUSKALTEL


Para finalizar y para aquellos que tenéis alguna dificultad para programar, dejo aquí el código para PRT, que como veis es realmente sencillo. (variable n=12).




Felices Reyes!

Saludos