es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Error de identificador no declarado en Pinescript al actualizar a la versión=4

Estoy intentando convertir el script de estudio de Tendencia Instantánea de Ehlers a v=4, pero obtengo el error “Identificador no declarado” en la versión=4.

El script original se puede encontrar aquí:

https://www.tradingview.com/script/DaHLcICg-Ehlers-Instantaneous-Trend-LazyBear/

study(title="Tendencia Instantánea de Ehlers [LazyBear]", shorttitle="EIT_LB", overlay=true, precision=3)
src=input(hl2, title="Fuente")
a= input(0.07, title="Alfa", step=0.01) 
fr=input(false, title="Rellenar Región de Tendencia")
ebc=input(false, title="Habilitar colores de barra")
hr=input(false, title="Ocultar Cinta")
it=(a-((a<em>a)/4.0))</em>src+0.5<em>a</em>a<em>src[1]-(a-0.75</em>a<em>a)</em>src[2]+2<em>(1-a )</em>nz(it[1], ((src+2<em>src[1]+src[2])/4.0))-(1-a )</em>(1-a )<em>nz(it[2], ((src+2</em>src[1]+src[2])/4.0))
lag=2.0*it-nz(it[2])
dl=plot(fr and (not hr)?(it>lag?lag:it):na, color=gray, style=circles, linewidth=0, title="Dummy")
itl=plot(hr?na:it, color=fr?gray:red, linewidth=1, title="Tendencia")
ll=plot(hr?na:lag, color=fr?gray:blue, linewidth=1, title="Disparador")
fill(dl, ll, green, title="Tendencia Alcista", transp=70)
fill(dl, itl, red, title="Tendencia Bajista", transp=70)
bc=not ebc?na:(it>lag?red:lime)
barcolor(bc)

Errores:

Procesando script...
línea 9: Identificador no declarado <code>it</code>;
línea 10: Identificador no declarado <code>it</code>;
línea 11: Identificador no declarado <code>it</code>;
línea 11: Identificador no declarado <code>lag</code>;
línea 12: Identificador no declarado <code>it</code>;
línea 13: Identificador no declarado <code>lag</code>;
línea 16: Identificador no declarado <code>it</code>;
línea 16: Identificador no declarado <code>lag</code>;
línea 17: Identificador no declarado <code>bc</code>

Cualquier ayuda será muy apreciada.
Estoy intentando basar una estrategia en el script.

Que tengas un buen día.

J

Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que el problema se encuentra con el identificador no declarado it y lag en el script de pine-script v4. Para solucionar este error, necesitas declarar estas variables antes de usarlas en el código. Aquí está el código actualizado con los cambios necesarios:

    //@version=4
    study(title="Ehlers Instantaneous Trend [LazyBear]", shorttitle="EIT_LB", overlay=true, precision=3)
    src=input(hl2, title="Fuente")
    var float it = 0.0
    var float lag = 0.0
    a= input(0.07, title="Alpha", step=0.01) 
    fr=input(false, title="Rellenar Región de Tendencia")
    ebc=input(false, title="Activar colores de barra")
    hr=input(false, title="Ocultar Cinta")
    
    it := (a-((a*a)/4.0))*src+0.5*a*a*src[1]-(a-0.75*a*a)*src[2]+2*(1-a )*nz(it[1], ((src+2*src[1]+src[2])/4.0))-(1-a )*(1-a )*nz(it[2], ((src+2*src[1]+src[2])/4.0))
    lag := 2.0*it-nz(it[2])
    
    dl=plot(fr and (not hr)?(it>lag?lag:it):na, color=color.gray, style=plot.style_circles, linewidth=0, title="Dummy")
    itl=plot(hr?na:it, color=fr?color.gray:color.red, linewidth=1, title="Tendencia")
    ll=plot(hr?na:lag, color=fr?color.gray:color.blue, linewidth=1, title="Disparador")
    fill(dl, ll, color.green, title="Tendencia alcista", transp=70)
    fill(dl, itl, color.red, title="Tendencia bajista", transp=70)
    bc=not ebc?na:(it>lag?color.red:color.lime)
    barcolor(bc)
    
    

    En este script actualizado, hemos declarado las variables it y lag utilizando la palabra clave var en las líneas 9 y 10 respectivamente. Además, hemos actualizado los valores de color a las nuevas constantes de color de pine-script v4.

    Por favor, prueba este script actualizado y déjame saber si esto resuelve el problema.

Comments are closed.