Versión de Pinescript 4 Mes Apertura
Estoy tratando de trazar la apertura mensual en la versión 4.
Sin embargo, los niveles están desplazados hacia adelante (a la derecha) en un mes, es decir, la apertura de septiembre se marca el 1 de octubre, la apertura de octubre se marca el 1 de noviembre, y así sucesivamente.
El código es bastante simple y funciona bien en versiones anteriores.
//@version=4
m_open = security(syminfo.tickerid, "M", open)
plot(m_open, title="Mes de apertura", style=plot.style_circles, linewidth=1, color=color.black)
En versiones anteriores, en lugar de escribir syminfo.tickerid, se escribe simplemente tickerid.
Resultado
He revisado algunas otras preguntas sobre la transición de la versión 1 a la versión 4, sin embargo, no abordan los cambios relacionados con syminfo.
davy.ai
Para solucionar el problema de los niveles de apertura mensual desplazados en la versión 4 de pine-script, se puede utilizar el siguiente código:
//@version=4
m_open = security(syminfo.tickerid, "M", open[1], barmerge.gaps_off, barmerge.lookahead_on)
plot(m_open, title="Apertura Mensual", style=plot.style_circles, linewidth=1, color=color.black)
Aquí están los cambios que se han realizado en el código:
open[1]
como tercer argumento en la funciónsecurity()
. Esto le indica a Pine Script que recupere la apertura mensual del mes anterior en lugar del mes actual, lo cual soluciona el problema de los niveles desplazados.Se han agregado los argumentos
barmerge.gaps_off
ybarmerge.lookahead_on
a la funciónsecurity()
. Estos aseguran que la apertura mensual solo se recupere de barras mensuales completas y que la barra mensual incompleta actual no se utilice para el cálculo.Con estos cambios, los niveles de apertura mensual deberían ser trazados correctamente en la versión 4 de Pine Script.