Buenos días,
He intentado programar un Proscreener para contar las velas que se salen de bollinger en 20 sesiones. Algo debo estar haciendo mal porque solo cuenta si en el día actual la vela rompe la banda, al día siguiente si queda dentro de bandas ya me cuentas cuantas velas siguen habiendo fuera.
paso el código
// Cierre fuera de la Boll sup
v1 = (Close > Bollingerup[20](Close))
//Cierre dentro de Boll Sup y máx sup al 1%
v2 = high > Bollingerup[20]*1.01
v3 = (Close < Bollingerup[20](Close))
v4 = v2 and v3
criteria = summation[20](v1 + v4)
SCREENER[v1 OR v4](criteria AS "Días fuera")
Porque estás agregando las condiciones v1 y v4, mientras que debes usar “AND”:
criteria = summation[20](v1 AND v4)
Gracias lo del cambio que me sugieres ha funcionado.
Ahora lo que le pasa al mismo código es que, solo aparecen los valores si la vela actual cumple con alguna de las condiciones. Lo que quiero es que cuente las dos condiciones fuera de Bollinger en 20 días aunque la vela actual no cumpla con ninguna de las dos.
Ya está, acabo de solucionarlo. Muchas gracias por tu aportación.
Buenas tardes,
¿En Proscreener hay forma de identificar las velas que cumplan una condición? Ya sea asignando un color distinto a la vela o dibujando una flecha sobre o bajo esa vela. Por ejemplo quiero identificar las velas que cumplen la variable v4 del siguiente código.
Un saludo
//Cierre fuera de Bollinger Superior
v1 = (Close > Bollingerup[20](Close))
//Cierre dentro de Bollinger y máximo superior al 1%
v2 = high > Bollingerup[20]*1.01
v3 = (Close < Bollingerup[20](Close))
v4 = v2 AND v3
Para dibujar flechas, puede tomar ejemplos de la documentación: DRAWARROWDOWN DRAWARROWUP o si desea modificar el aspecto de las velas con diferentes precios o colores: DRAWCANDLE Háganos saber si está en problemas para hacerlo, gracias.
Buenas tardes,
Continuo con el mismo código, ahora quiero saber cuántas velas azules hay en el gráfico, demás poner encima de la vela el número que le corresponde. He mirado la documentación sobre Drawtext pero no me aclaro. Adjunto código e imagen.
Un saludo
//Bollinger Take Profit indicator
c1 = high < Bollingerup[20](Close) * 1.01
c2 = high > Bollingerup[20](Close) * 0.997
c3 = Average[6] < Bollingerup * 0.98
c4 = low < Bollingerup * 0.99
c10 = close<open
c11 = c1 and c2 and c3 and c4 and c10
c20 = high < Bollingerup[20](Close) * 1.01
c21 = high > Bollingerup[20](Close) * 0.997
c22 = Average[6] < Bollingerup * 0.98
c23 = low < Bollingerup * 0.99
c24 = open<close
c25 = close<Bollingerup[20](Close) * 0.99
c26 = c20 and c21 and c22 and c23 and c24 and c25
c5 = low > Bollingerdown[20](Close) * 0.99
c6 = low < Bollingerdown[20](Close) * 1.003
c7 = Bollingerdown < Average[6] * 0.98
c8 = high > Bollingerdown * 1.01
c9 = open<close
c12 = c5 and c6 and c7 and c8 and c9
c13 = low > Bollingerdown[20](Close) * 0.99
c14 = low < Bollingerdown[20](Close) * 1.003
c15 = Bollingerdown < Average[6] * 0.98
c16 = high > Bollingerdown * 1.01
c17 = close<open
c18 = close>Bollingerdown[20](Close) * 1.01
c19 = c13 and c14 and c15 and c16 and c17 and c18
rge = averagetruerange[10](close)
if c11 or c26 then
DRAWARROWDOWN(barindex[0],high[0]+rge/2)coloured(10,10,255)
elsif c12 or c19 then
DRAWARROWUP(barindex[0],low[0]-rge/2)coloured(10,10,255)
endif
RETURN
Lo siento, pero no entiendo de qué velas azules estás hablando? ¿Te refieres a los verdes? ¿Y quieres contarlos en función de qué condiciones por favor?
Hola Kalia,
Te refieres a “velas azules”, o FLECHAS azules??
Gracias
Buenos días
Lo siento me he equivocado, lo que quiero contar son las “Flechas” Azules que sobre y debajo de las velas. Por ejemplo: ¿Cuántas Flechas azules hay sumando la condición c11 + c26?
En el gráfico he puesto manualmente los números pero quiero que me dibuje el número sobre la flecha.
Un saludo
Eso está muy claro. Por lo tanto, el siguiente código trazará el conteo de flechas hacia arriba y hacia abajo desde el comienzo del cuadro.
//Bollinger Take Profit indicator
c1 = high < Bollingerup[20](Close) * 1.01
c2 = high > Bollingerup[20](Close) * 0.997
c3 = Average[6] < Bollingerup * 0.98
c4 = low < Bollingerup * 0.99
c10 = close<open
c11 = c1 and c2 and c3 and c4 and c10
c20 = high < Bollingerup[20](Close) * 1.01
c21 = high > Bollingerup[20](Close) * 0.997
c22 = Average[6] < Bollingerup * 0.98
c23 = low < Bollingerup * 0.99
c24 = open<close
c25 = close<Bollingerup[20](Close) * 0.99
c26 = c20 and c21 and c22 and c23 and c24 and c25
c5 = low > Bollingerdown[20](Close) * 0.99
c6 = low < Bollingerdown[20](Close) * 1.003
c7 = Bollingerdown < Average[6] * 0.98
c8 = high > Bollingerdown * 1.01
c9 = open<close
c12 = c5 and c6 and c7 and c8 and c9
c13 = low > Bollingerdown[20](Close) * 0.99
c14 = low < Bollingerdown[20](Close) * 1.003
c15 = Bollingerdown < Average[6] * 0.98
c16 = high > Bollingerdown * 1.01
c17 = close<open
c18 = close>Bollingerdown[20](Close) * 1.01
c19 = c13 and c14 and c15 and c16 and c17 and c18
rge = averagetruerange[10](close)
if c11 or c26 then
DRAWARROWDOWN(barindex[0],high[0]+rge/2)coloured(10,10,255)
downcount=downcount+1
drawtext("#downcount#",barindex[0],high[0]+rge/1.5,dialog,bold,25)
elsif c12 or c19 then
DRAWARROWUP(barindex[0],low[0]-rge/2)coloured(10,10,255)
upcount=upcount+1
drawtext("#upcount#",barindex[0],low[0]-rge/1.5,dialog,bold,25)
endif
RETURN
Gracias, gracias, gracias 😉