Editor de indicadores del usuario: escribir, ejecutar y mostrar tus propios indicadores

El diálogo «Indicadores personalizados» te permite escribir un script de indicador, ejecutarlo sobre las barras reales del gráfico actual y guardarlo. Los scripts guardados se suman al panel de Indicadores, en «Mis scripts», donde se activan y se desactivan como los integrados.

Senzoukria · Documentación · Actualizado en septiembre de 2026


Dónde encontrarlo

Dónde
Gráfico del Replay → chip «Script» (tooltip «Escribe tu propio indicador (se ejecuta aislado)»); página Scripting → interruptor «Mostrar en el gráfico»
Almacenamiento
Clave de localStorage orderflow.userIndicators.v1; visibilidad por gráfico en el store de ajustes de Indicadores
Alcance de la ejecución
Hasta las 600 barras más recientes, datos reales del gráfico, presupuesto de 2 s en el entorno aislado
Cadencia en el gráfico
Como máximo una ejecución en curso por script y al menos 400 ms entre dos ejecuciones

Qué hace

El diálogo se titula «Indicadores personalizados». Una lista a la izquierda muestra cada script guardado con su destino de dibujo; «+ Nuevo indicador» crea uno llamado «Mi indicador» con el script por defecto (una SMA de 20 períodos) y dos parámetros, Período (20, de 1 a 500) y Color (#7ed321). La parte derecha contiene el campo de nombre (48 caracteres como máximo), el selector de destino de dibujo y el mismo editor de código que la página Scripting, con números de línea y sangrado con Tab.

El botón importante es «▶ Ejecutar en el gráfico actual». Ejecuta el script en el entorno aislado sobre las barras reales del gráfico, 600 como máximo, e informa de «✓ N salidas en X ms — sobre N barras» o del error con su número de línea en primer lugar. Un bloque Consola lista lo que el script imprimió con log() / console.log() (JavaScript) o print() (Python); cuando no se imprimió nada, una pista explica qué función usar. Escape cierra el diálogo.

Ajustes

Controles del diálogo Indicadores personalizados
ControlPor defectoQué cambia
Nombre del indicadorMi indicadorEtiqueta mostrada en la lista, en el panel de Indicadores y en tablas y paneles de valores; hasta 48 caracteres
Destino de dibujoEn el gráfico«En el gráfico» dibuja sobre el precio; «Panel propio» reserva un panel dedicado debajo del gráfico
Parámetro Período20 (mín. 1, máx. 500, paso 1)Se pasa al script como params.period; ajustable después desde el panel de Indicadores
Parámetro Color#7ed321Se pasa como params.color
Ejecutar en el gráfico actualEjecuta el script sobre hasta 600 barras reales y muestra las salidas, el tiempo, los registros o la línea del error
GuardarGuarda el script; los cambios sin guardar se pierden al cerrar el diálogo
EliminarQuita el script y selecciona el siguiente

Mostrar un script en el gráfico

Guardar un script no lo dibuja. En la página Scripting, el interruptor «Mostrar en el gráfico» lo explica: «El indicador se dibuja en el gráfico y se suma al panel de Indicadores, en el grupo “Mis scripts”: actívalo y desactívalo desde ahí como cualquier otro.» Guardar un indicador nuevo desde la página Scripting lo activa automáticamente. En el panel de Indicadores, cada script muestra «superpuesto» o «panel propio» junto a su nombre; cuando el script falla, en ese lugar aparece el error.

En el gráfico, los scripts del usuario se ejecutan en un worker con su propio bucle: como máximo una ejecución en curso por script y un suelo de 400 ms entre dos ejecuciones, de modo que un script lento solo retrasa su propio dibujo y nunca congela el gráfico. Los resultados se descartan cuando cambia el instrumento o el marco temporal, nunca cuando las barras simplemente se vuelven a publicar. Los valores de parámetro fijados en el panel de Indicadores tienen prioridad sobre los valores por defecto declarados en el script, y cada clave declarada recibe siempre un valor.

Errores informados por script

Por qué un script no dibuja nada, tal como se informa junto a él
CódigoSignificadoQué hacer
threwcompute lanzó una excepción o el entorno aislado la interrumpió (presupuesto de 2 s); se muestran el mensaje y la líneaCorrige la línea citada; el dibujo anterior se retira para que una curva obsoleta no pase por una que funciona
shapeUna salida tiene una forma que el renderizador no conoceDevuelve una de line, histogram, bands, markers, levels, table, panel
emptyEl script se ejecutó sin error y no dibujó nadaLegítimo en un script de marcadores sin nada que marcar; si no, revisa el calentamiento y el orden invertido de las barras

Límites y trampas

  • Los scripts reciben las barras de la más reciente a la más antigua: bars[0] es la más reciente. Invierte el orden antes de aplicar cualquier fórmula.
  • El lenguaje viaja con el script (JavaScript por defecto, Python o C++ cuando se eligen en la página Scripting). Un script Python lo ejecuta el motor Python, no se interpreta como JavaScript.
  • Los puntos cuyo tiempo no coincide con una barra se descartan; los valores no finitos se convierten en huecos. Un script no puede dibujar fuera del gráfico.
  • El editor no tiene resaltado de sintaxis por decisión de diseño; el botón Ejecutar y su error exacto lo sustituyen.

Esta página en otros idiomas

Preguntas frecuentes

He guardado un script pero no aparece nada en el gráfico. ¿Por qué?
Guardar y mostrar son dos acciones distintas. Activa «Mostrar en el gráfico» en la página Scripting o marca el script en el grupo «Mis scripts» del panel de Indicadores.
¿Cuántas barras recibe el script?
Como máximo las 600 barras más recientes del gráfico, tanto en el botón Ejecutar del editor como en el gráfico en directo. Serializar un día entero de barras con sus niveles costaría más que el propio cálculo.
¿Puede mi script acceder a la red o a mi bróker?
No. El script se ejecuta en un worker donde fetch, XMLHttpRequest, WebSocket, importScripts y el eval global se sobrescriben antes de que se ejecute tu código, la API de Tauri nunca se importa y el protocolo del entorno aislado añade una política default-src 'none'. Sin acceso a archivos y sin API del bróker.