Buenos días,
Os dejo aquí un indicador de mi cosecha mezclando el VIGIA de Blai5 y el concepto de ICHIMOKU.
Para mi un indicador debe estar basado en una buena curva. El VIGIA es una gran curva que además tiene propiedades de anticipación al precio. Por supuesto el VIGIA es mucho mas que una simple curva, aunque para este caso es lo único que he usado del gran indicador.
La mezcla quedaría algo así:
La curva VIGIA es la negra, La nube es la formada por la SpanA y la SpanB como en el indicador original, aunque una de ellas la he llevado a cero para simplificar el gráfico. Del resto de indicador original ICHIMOKU he dejado el Kjun para cortes con el VIGIA. En verde sombreo cuando el VIGIA supera la nube.
No suelo usar el indicador como gatillo sino mas bien como filtro. Por ejemplo, para entradas largas pido que el VIGIA esté por encima de la nube (mas conservador) o por encima del Kjun (mas agresivo).
El corte del VIGIA hacia abajo con el Kjun suele ser un buen aviso para poner un stop en posiciones largas.
El código:
// Indicador Calatravo Vigia Ichimoku
// Indicador basado en la curva Vigia aplicando la nube Ichimoku
// Indicador Vigia v09 de Blai5
xmf = MoneyFlowIndex[20]
OB1 = (BollingerUp[20](TotalPrice) + BollingerDown[20](TotalPrice)) / 2
OB2 = BollingerUp[20](TotalPrice) - BollingerDown[20](TotalPrice)
BollOsc = ((close - OB1) / OB2 ) * 100
xrsi = rsi [20](TotalPrice)
STOC = Stochastic[20,3](TotalPrice)
vg = ((xrsi + xmf + BollOsc + (STOC / 3))/2) - 60
// Nube Ichimoku del indicador by Calatravo
//Tenkan Sen (Mayor máximo + Menor mínimo)/2 para el periodo n
if barindex < n then
tenkan=vg
else
tenkan=(highest[n](vg)+lowest[n](vg))/2
endif
//Kijun Sen (Mayor máximo + Menor mínimo)/2 para el periodo n1
if barindex < n1 then
kijun=vg
else
kijun=(highest[n1](vg)+lowest[n1](vg))/2
endif
// Senkou Span A. (Tenkan+Kijun)/2 desplazado n1 periodos
MediaTK= (Tenkan+Kijun)/2
SpanA=MediaTK[n1]
// Senkou Span B. (Mayor max + Meno min)/2 en los n2 periodos desplazado n1 periodos
if barindex < n2 then
MediaB=vg
SpanB=MediaB[n1]
else
MediaB=(highest[n2](vg)+lowest[n2](vg))/2
SpanB=MediaB[n1]
endif
if SpanB>SpanA then
line=SpanB
else
line=SpanA
endif
Return vg-SpanB as "Vigia", tenkan-SpanB as "Tenkan", Kijun-SpanB as "Kijun", SpanA-SpanB as "Span A", SpanB-SpanB as "Span B", line-SpanB as "Contorno nube sup"
Variables:
n=7
n1=22
n2=44
Saludos.
Hola, buen trabajo!, para gráficos de 3 minutos, que valores de n,n1,n2 deberíamos poner?
ResponderEliminarsaludos.
Disculpa pero no trabajo con Tf tan bajos. Esos parámetros funcionan bien en diario y semanal, mas abajo no he probado.
EliminarHola Carlos (calatravo). Soy otro Carlos más, Fariasclub de diasdebolsa.com, donde te conocí junto a otros muchos buenos foreros, entre ellos Miguel AngelCastillo, Noldor, etc, también amantes de los indicadores y su programación.
ResponderEliminarEstoy tratando de añadir a los míos del PRT el Vigía Ichimoku.
Hago copia y pega de tu código y me sale error sintaxis en caracter 1 en tres lineas de casi el final:
line=SpanB
else
line=SpanA
Si quieres te envío una foto de la pantalla, por si no me he explicado bien.
Muchas gracias por tu trabajo, que sigo con frecuencia y admiro mucho. Yo no soy capaz de programar ni mi jornada laboral :-)))
Un saludo
Hola Carlos!. Gracias por tus comentarios. No acabo de ver donde esta el problema. Enviame un pantaĺlazo por favor.
Eliminarcrozasl01@gmail.com
Buenos dias Carlos, Acabo de entrar en tu blog y me parece muy interesante, Estoy intentando copiar el codigo en PRT y al parecer tambien tengo el mismo problema que Carlos Valiente, pudiste solicionarselo? gracias un saludo y enhorabuena por tu trabajo! Toni
EliminarBuenos dias Carlos, Acabo de entrar en tu blog y me parece muy interesante, Estoy intentando copiar el codigo en PRT y al parecer tambien tengo el mismo problema que Carlos Valiente, pudiste solicionarselo? gracias un saludo y enhorabuena por tu trabajo! Toni
Eliminar