LootX

Importar desde Pine Script

nuevo Actualizado 30 de septiembre de 2026 Esta página en PDF

Cómo trasladar un indicador de Pine Script a LootScript: dónde está el botón de importación, qué convierte el conversor automáticamente, qué marca para revisar y cómo pulir el resultado.

Si un indicador ya está escrito en Pine Script, no hace falta reescribirlo a mano. El terminal convierte el archivo .pine a LootScript: cambia la sintaxis y los nombres, añade lo que falta y escribe notas al principio del archivo indicando qué se modificó y dónde el conversor tuvo que adivinar.

El conversor es un traductor, no una capa de compatibilidad. No garantiza los mismos números que en el entorno original, y no añade al terminal funciones que allí no existen. Por eso, después de importar debes abrir el script, leer las notas y comprobarlo en el Gráfico. LootScript se desarrolló de forma independiente y no está ligado a TradingView: la sintaxis es similar a propósito, pero los lenguajes no son compatibles.

Cómo importar

Abra la ventana Indicadores

Presione ƒ en el panel del Gráfico — se abrirá la ventana Indicadores.

Haga clic en «Importar…»

El botón está junto a la barra de búsqueda. Seleccione un archivo .pine, .loot o .txt. El archivo .loot irá a la biblioteca tal cual. El archivo .pine —o un archivo de texto similar a Pine Script— pasará por el conversor.

Lea el resultado

Debajo de la barra de búsqueda aparecerá una de estas líneas:

  • «Importado «…»» — no hay notas, el script está listo;
  • «Importado «…»: notas del conversor — N, ver encabezado del script»;
  • «Importado «…», pero el script no compila (errores: N)…» — junto al texto se mostrará el primer error.

La ventana cambiará a la sección Mis scripts, y en la búsqueda se pondrá el nombre del nuevo script.

Abra el script en el Editor

Lea el encabezado con las notas y corrija lo que indique. Cómo — más abajo.

La importación no sobrescribe un script con el mismo nombre: el nuevo recibirá un sufijo, por ejemplo -2. El archivo original no se modifica.

A través de la carpeta de scripts

También puedes simplemente colocar el archivo nombre.pine en la carpeta de scripts — en Windows es %APPDATA%\TradingTerminal\scripts. Al siguiente inicio, el terminal creará junto a él nombre.loot. Si nombre.loot ya existe, no se tocará — no perderás tus cambios. Para convertir de nuevo, por ejemplo después de actualizar el terminal, elimina el .loot.

Qué hace el conversor

  • Indentación → llaves. Los bloques if, else if, else, bucles y funciones reciben llaves. Las líneas de continuación se unen en una sola.
  • Funciones. f(x) => se convierte en func f(x), y la última expresión de la función se convierte en un return explícito.
  • Bucles. El inclusivo for i = 0 to 9 pasa a semi-abierto for i in 0 .. 10. La dirección se toma del paso o de literales de los límites; si no se ve, el conversor asume que el bucle es ascendente y lo indica.
  • Condicionales como valores. Un if con una sola expresión en las ramas se convierte en operador ternario; switch recibe llaves.
  • Transparencia → alfa. En Pine Script la transparencia va de 0 a 100, donde 0 es opaco. En LootScript alfa va de 0 a 255, donde 255 es opaco. color.new(c, 50) se convertirá en color.new(c, 128), y el argumento transp= se transformará en un color.new(…) alrededor del color.
  • Nombres. Los nombres antiguos sin espacio de nombres reciben uno: sma → ta.sma. study → indicator, security → request.security, tostring → str.tostring, syminfo.* → sym.*, timeframe.* → tf.*. La forma corta input(…) recibe tipo: input.int, input.source, etc.
  • Nombres reservados. Una variable cuyo nombre en LootScript sea palabra clave o espacio de nombres (delta, oi, tf, sym, func …) recibe un guion bajo al final en todas sus apariciones: delta → delta_.
  • Argumentos extra — aquellos que no existen en la función en LootScript — se eliminan.
  • Declaración. Si el archivo no contenía indicator(…) o strategy(…), el conversor añadirá un indicator con el nombre del archivo.
  • Comentarios y líneas vacías permanecen en su sitio.

El conversor no rechaza ningún archivo. La línea que no entienda no la elimina, la deja como comentario // [не разобрано] … en la misma posición.

Encabezado con notas

La primera línea del encabezado indica de dónde viene el archivo — «Importado desde un script en Pine Script (versión 5). Notas del conversor:». Luego, una línea por cada modificación, en orden de las líneas del origen: «Línea N: tipo: qué — detalles». Las notas se escriben en el idioma de la interfaz.

Tipo de nota Qué significa ¿Revisar?
renombrado Nombre reemplazado por el análogo en LootScript no
recalculado Transparencia convertida a alfa no
reescrito Cambió la forma: bucle, return, tipo de input corto echar un vistazo
el nombre «…» está reservado en LootScript A la variable se le añadió un guion bajo no
no había declaración indicator(…) Se añadió la declaración usando el nombre del archivo no
argumento eliminado La función en LootScript no tiene ese parámetro sí
suposición El conversor adivinó: dirección del bucle, tipo de entrada que no pudo deducir sí
no está en esta build Esa función no existe en el terminal — el script no compilará por “nombre desconocido” sí
no analizado La línea no se pudo parsear; se conserva como comentario sí

Cuando lo hayas comprobado, puedes eliminar el encabezado — son comentarios ordinarios.

Ejemplo

Pequeño indicador en Pine Script: columnas del rango de la vela, resaltadas cuando el rango es el doble del promedio.

PINE
//@version=5
indicator("Range spike", overlay=false)
len = input.int(20, "Length")
avgRange(n) =>
    r = high - low
    ta.sma(r, n)
base = avgRange(len)
spike = high - low > base * 2
plot(high - low, style=plot.style_columns, color=spike ? color.orange : color.new(color.gray, 60))
plot(base, color=color.blue, trackprice=true)

Así lo escribe el conversor:

Loot
// Импортировано из скрипта на Pine Script (версия 5). Заметки конвертера:
//
// Строка 6: переписано: avgRange — неявный возврат последнего оператора записан как return
// Строка 9: пересчитано: transp → alpha — прозрачность 0…100 пересчитана в альфу 0…255
// Строка 10: аргумент снят: plot: trackprice — такого параметра в LootScript нет

indicator("Range spike", overlay = false)
len = input.int(20, "Length")
func avgRange(n) {
    r = high - low
    return ta.sma(r, n)
}
base = avgRange(len)
spike = high - low > base * 2
plot(high - low, color = spike ? color.orange : color.new(color.gray, 102), style = plot.style_columns)
plot(base, color = color.blue)

La función recibió llaves y return, la transparencia 60 pasó a alfa 102, y trackprice se eliminó — ese parámetro no existe. La nota «argumento eliminado» pide que verifiques si ese parámetro era necesario en sentido lógico. Aquí solo dibujaba la línea del último valor, y el script funciona sin él.

Cómo comprobar y pulir

  1. Lee el encabezado. Empieza por las líneas con tipos «argumento eliminado», «suposición», «no está en esta build» y «no analizado».
  2. Mira la pestaña Problemas en la consola del Editor. Un script con errores no se añadirá al Gráfico.
  3. Usa ‘Añadir al gráfico’ y compáralo con lo que mostraba el original en varios tramos del histórico.
  4. Pide ayuda al asistente. Abre el Asistente de IA y escribe /fix — él compilará el script, lo ejecutará sobre velas y corregirá errores. Puedes añadir una aclaración: /fix analiza las notas del conversor en el encabezado. /explain explicará qué hace el script.

Qué no se transfiere

  • Funciones que no existen en el terminal. El nombre queda en el código, la nota «no está en esta build» y el error del compilador señalan la misma ubicación. Sustituye la llamada a mano o pide al asistente que sugiera un análogo.
  • Cadenas multilínea, importación de librerías ajenas, exportación de funciones. El conversor traslada lo que puede serializar y marca lo demás.
  • Más de tres líneas. El panel de Gráfico dibuja solo las primeras tres plot del script. Distribuye filas adicionales en scripts separados.
  • Trading real. La declaración strategy(…) se traslada, pero una estrategia en LootScript solo opera en el Probador de estrategias — en cuenta simulada.

Siguientes pasos

FAQ

¿El indicador importado calculará igual que el original?
No necesariamente. El conversor cambia la sintaxis y los nombres, pero las funciones homónimas en LootScript a veces se calculan de forma distinta, y la omisión de datos — siempre na. Compárelo con el original en el gráfico.
¿Qué hacer si el script no compila después de importarlo?
Ábrelo en el Editor y lee la cabecera: las notas «no en esta compilación», «argumento eliminado», «suposición» y «no analizado» señalan las filas problemáticas. El comando /fix en el Asistente de IA corregirá los errores.
¿Se pueden importar varios archivos a la vez?
El botón «Importar…» acepta un solo archivo. Varios archivos .pine se pueden colocar en la carpeta de scripts — el terminal los convertirá en el siguiente inicio.