Primer script
1Primer script
Paso a paso: cómo abrir el editor de LootScript, escribir un indicador de dos líneas, añadirlo al gráfico, leer errores y encontrar el archivo del script. Segundo ejemplo: un canal con ajustes.
En esta página recorrerá el camino desde un editor vacío hasta su propio indicador en el gráfico: escribirá un script de dos líneas, verá cómo el editor detecta errores, sabrá dónde está el archivo y añadirá la ventana de ajustes. Necesitará un gráfico abierto y scripts activados; si no están en la ventana de indicadores, lea la sección Cómo activar los scripts.
Abra el editor
Abra la ventana de indicadores
En el panel del gráfico, haga clic en el botón ƒ — su tooltip es «Indicadores».
Inicie el editor
Haga clic en Editor… junto al campo de búsqueda o en Nuevo script en la parte inferior de la ventana. Para abrir un script existente, búsquelo en la sección Mis scripts y haga clic en el lápiz Editar script de su fila (o seleccione la fila y pulse Ctrl+E).
Localice los botones necesarios
El editor se abre en una ventana separada con su propio botón en la barra de tareas; puede moverla a un segundo monitor. En la parte superior está la lista desplegable de scripts y los botones Nuevo, Guardar y Añadir al gráfico; abajo, las pestañas Problemas, Registro y Salida.
El editor recuerda el panel del gráfico desde cuya ventana de indicadores se abrió; añadirá el script en ese panel. Si el editor se abre de otra manera, el script irá al panel de gráfico activo.
Escriba el indicador
El botón Nuevo (Ctrl+N) crea un script a partir de una plantilla: una media móvil con un ajuste:
indicator("Без названия", overlay = true)
length = input.int(20, "Length", minval = 1)
plot(ta.ema(close, length), "EMA", color = color.orange)Sustituya el texto por el indicador funcional más corto: una media simple de 20 velas:
indicator("Мой первый индикатор", overlay = true)
plot(ta.sma(close, 20), "Средняя 20", color = color.orange)Qué está escrito aquí:
indicator(...)es la declaración, primera línea obligatoria de cualquier script. El nombre aparecerá en la lista Mis scripts y en la leyenda del gráfico.overlay = truedibuja sobre las velas; conoverlay = falseel indicador tendrá un panel separado bajo el gráfico.ta.sma(close, 20)es la media de los precios de cierre de las últimas 20 velas.plot(...)dibuja una línea: un valor por cada vela. El segundo argumento es el nombre de la línea en los ajustes,colores el color.
El script se ejecuta para cada vela, en orden desde la más antigua hasta la actual. Las primeras 19 velas no tienen suficiente historial para la media, por lo que la línea no comienza desde el borde izquierdo; es normal. El editor indica cuántas velas tarda este «calentamiento» en la barra de estado inferior.
Mientras escribe, el editor sugiere nombres de funciones y constantes; tras el paréntesis de apertura muestra los parámetros de la función y, al pasar el cursor sobre un nombre, su descripción. La lista de sugerencias se puede invocar manualmente con Ctrl+Space.
Guarde y añada al gráfico
- Guardar (Ctrl+S) escribe el script en la carpeta de scripts. Mientras haya cambios sin guardar, aparece un punto
•antes del nombre del archivo en el título de la ventana. - Añadir al gráfico (Ctrl+Enter) comprueba el script, lo guarda y lo coloca en el panel del gráfico. En el panel del editor aparecerá el mensaje: «Mi primer indicador» añadido al gráfico.
Listo: la línea está en el gráfico y el nombre del indicador en la leyenda. El indicador se guarda en la vista y volverá tras reiniciar el terminal.
Cómo muestra el editor los errores
El script se comprueba solo, un instante después de que deje de escribir. El resultado se ve en la cabecera del editor: compilando…, luego ok · 12 ms o, si algo va mal, errores: 1 o advertencias: 1.
Pruebe a equivocarse: escriba ta.smaa en lugar de ta.sma. El lugar del error se subraya con una línea ondulada, el contador de la cabecera muestra errores: 1 y en la pestaña Problemas aparece una fila con el código de error, la explicación y la posición:
LS2002 Неизвестное имя «ta.smaa» — проверьте написание или объявите его выше Стр 3:6Un doble clic en la fila lleva el cursor al lugar del error. Cada error tiene un código permanente del tipo LS####, y el texto sugiere de inmediato cómo corregirlo. El análisis de errores frecuentes está en la página Errores de compilación y ejecución.
Un script con errores no se añadirá al gráfico: Añadir al gráfico responderá «Un script con errores no se coloca en el gráfico; véase «Problemas»» y moverá el cursor al primer error. En la ventana de indicadores, dicho script se marca con una etiqueta roja con el número de errores en lugar de la etiqueta Script.
También hay errores en tiempo de ejecución; por ejemplo, un bucle que no cabe en el tiempo asignado. Entonces el script se detiene y la causa se ve en la pestaña Salida: «Script detenido: …». Los demás indicadores y el terminal siguen funcionando.
Edición de un script que ya está en el gráfico
Mientras edita, el gráfico sigue mostrando la versión que añadió. En cuanto el editor tiene una versión correcta distinta de la del gráfico, ocurren dos cosas:
- en el panel del editor aparece el botón Actualizar indicador;
- en la leyenda del indicador en el gráfico aparece un icono de actualización.
Cualquiera de ellos guarda el script y lo sustituye en todos los gráficos donde esté. Añadir al gráfico para un script que ya está añadido en algún lugar hace lo mismo: actualiza todas las copias, no coloca una segunda. Cuántos paneles recibirán la nueva versión lo muestra la etiqueta en gráficos: N en la cabecera del editor.
Dónde están los archivos
En Windows, los scripts se guardan en la carpeta %APPDATA%\TradingTerminal\scripts\, un archivo .loot por script. Es texto plano; puede abrirlo con cualquier editor, copiarlo o guardarlo en una copia de seguridad. La carpeta está fuera de la carpeta de instalación, por lo que las actualizaciones del terminal no la tocan.
El nombre del archivo se genera a partir del título en el primer guardado: los espacios se sustituyen por guiones bajos y la cirílica se conserva. «Mi primer indicador» se convertirá en el archivo Мой_первый_индикатор.loot.
Cuando la carpeta se crea por primera vez, se incluyen seis scripts iniciales: Dos medias móviles, RSI con zonas, Impulso de volumen, Delta acumulada, Interés frente a precio y Tasa de financiación anualizada. Están en la sección Mis scripts; conviene abrirlos y analizarlos.
Segundo ejemplo: canal con ajustes
Hagamos un script más útil: un canal de una media y dos bordes a una distancia de varias desviaciones estándar. El periodo, la anchura y la fuente de precio se llevarán a los ajustes, y los bordes superior e inferior se resaltarán en rojo cuando el precio los supere.
indicator("Канал вокруг средней", overlay = true)
length = input.int(20, "Период", minval = 2)
mult = input.float(2.0, "Ширина в сигмах", minval = 0.1, step = 0.1)
src = input.source(close, "Источник")
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
plot(basis, "Середина", color = color.gray)
plot(upper, "Верх", color = close > upper ? color.red : color.teal)
plot(lower, "Низ", color = close < lower ? color.red : color.teal)Novedades:
- Cada llamada
input.*se convierte en una fila en la ventana de ajustes del indicador, en el orden en que está escrita.minvalimpide introducir un periodo menor que dos, ystep = 0.1significa que el campo de anchura muestra un decimal. input.sourcese convierte en una lista desplegable de series:close,open,hl2,volumey otras.- El color de los bordes es una expresión, por lo que se calcula para cada vela por separado.
Añada el script al gráfico y haga doble clic en su fila de la leyenda (o haga clic en el icono de ajustes que hay en ella). En la pestaña Entradas están sus tres ajustes: cambie el periodo y las líneas se recalcularán al instante. Los valores se recuerdan para este indicador en este gráfico; el botón Por defecto devuelve los escritos en el código. En la pestaña Estilo están el color de la media y el grosor de cada línea; en la pestaña Visibilidad, las casillas para ocultar cualquiera de las tres líneas. El color de los bordes no está en los ajustes: lo elige el propio script en cada vela.
Siguientes pasos
https://docs.lootx.trade/es/loot/first-script