Cree un indicador personalizado en Tradovate (JavaScript)
¿Ningún estudio integrado de Tradovate dibuja exactamente lo que necesita? Le mostramos cómo programar su propio indicador en JavaScript con el Code Explorer, desde un desplazamiento de dos líneas hasta una media móvil real.
On This Page
Ha recorrido los estudios integrados de Tradovate y ninguno dibuja exactamente lo que quiere. Buenas noticias: puede escribir el suyo. Toda la plataforma funciona con JavaScript, gráficos incluidos, y le ofrece un editor abierto llamado Code Explorer donde programa un indicador, lo guarda y lo coloca en un gráfico como cualquier estudio integrado. Esta guía le acompaña en el proceso, desde un desplazamiento de dos líneas hasta una media móvil real.
¿Qué son los indicadores personalizados de Tradovate?
Tradovate Trader ejecuta el mismo JavaScript en web, escritorio y móvil, por lo que el motor de gráficos y todos los estudios integrados son JavaScript en el fondo. Los indicadores personalizados simplemente le exponen esa misma API. Un indicador es un pequeño módulo que exporta dos cosas: un name que lo identifica y una clase calculator con un método map(). map() recibe cada barra de la serie y devuelve un número, y el gráfico lo dibuja. Puede empezar desde cero, copiar uno integrado y ajustarlo, o instalar uno que haya subido otra persona, y los valores pueden ejecutarse en un gráfico o mostrarse en el DOM.
Cree un indicador personalizado: paso a paso
Abra el módulo Code Explorer
El editor vive dentro de la plataforma como su propio panel. Añada el módulo Code Explorer a su espacio de trabajo, igual que añadiría un gráfico o un DOM, arrastrándolo desde la lista de módulos. Una vez acoplado, tendrá a un lado un árbol de archivos con el código fuente de los indicadores de Tradovate y al otro un editor. Ese código fuente integrado es su mejor chuleta: abra un estudio que le guste y lea cómo está construido.
Inicie un nuevo archivo de indicador
Con el Code Explorer enfocado, abra File → New en la barra superior. Obtendrá un editor en blanco donde escribir. Todavía no hay nada conectado: un archivo vacío no aparecerá en ningún sitio hasta que exporte una definición adecuada, que es el siguiente paso.
Escriba el calculator
Este es el indicador más pequeño que realmente hace algo: una línea desplazada una cantidad fija por debajo del precio. Digamos que quiere una referencia aproximada de stop loss situada dos puntos por debajo de cada barra; vea el ejemplo de código más abajo. Hay dos piezas móviles: el bloque module.exports registra el indicador, name es un ID para la máquina (manténgalo sencillo) y calculator apunta a su clase. La clase necesita al menos un método map(). Tradovate lo llama una vez por barra, recorriendo toda la serie; d.value() le da el valor de entrada de esa barra, y lo que devuelva se dibuja. Guarde el archivo y aparecerá en la lista de indicadores del gráfico como EXAMPLEOFFSET, el nombre en mayúsculas, dibujando una línea simple por debajo del precio.
Añada entradas y reutilice las herramientas integradas
Un número fijo es limitante. Los indicadores reales aceptan entradas del usuario y rara vez hace falta escribir las matemáticas a mano. Tradovate incluye una carpeta tools llena de algoritmos ya hechos que se incorporan con require. Aquí tiene una media móvil exponencial completa basada en el asistente EMA incluido, con un periodo ajustable; vea el ejemplo de código más abajo. Hay algunas piezas nuevas: require incorpora predef, los preajustes compartidos de parámetros y estilos de Tradovate, además del algoritmo EMA de la carpeta tools, el mismo código que puede abrir en el Code Explorer. init() se ejecuta una vez antes del bucle para construir el calculador EMA con el periodo elegido; después map() le pasa el valor de cada barra. La línea params añade un campo ajustable period con valor predeterminado 10, schemeStyles pinta la línea de rojo y tags la archiva en el menú bajo "My Indicators".
Guárdelo y añádalo a su gráfico
Guarde el archivo y cambie a un gráfico. Abra la lista Indicators, encuentre su indicador por su nombre en mayúsculas y añádalo como cualquier estudio integrado. Si admitía un period, verá ese campo en sus ajustes, listo para cambiarlo en cada gráfico. ¿Prefiere no programar en absoluto? Tradovate también le permite Explore Community Indicators: explore estudios compartidos por otros traders, consulte los detalles y el número de descargas e instale uno directamente en su menú de indicadores con un par de clics.
class offset {
map(d) {
return d.value() - 2.0;
}
}
module.exports = {
name: "exampleOffset",
calculator: offset
};
const predef = require("./tools/predef");
const EMA = require("./tools/EMA");
class ema {
init() {
this.emaAlgo = EMA(this.props.period);
}
map(d) {
return this.emaAlgo(d.value());
}
}
module.exports = {
name: "exampleEma",
description: "My EMA",
calculator: ema,
params: {
period: predef.paramSpecs.period(10)
},
tags: ["My Indicators"],
schemeStyles: predef.styles.solidLine("red")
};
¿Prefiere señales a sintaxis?
Programar un indicador le da una vista personalizada del mercado, pero un indicador solo dibuja. No puede apretar el gatillo. Si su objetivo es actuar sobre una señal en el momento en que se dispara, es otro trabajo: PickMyTrade envía sus alertas de TradingView directamente a Tradovate como órdenes reales, para que su estrategia opere sola.
Automatice sus entradas en Tradovate
Un indicador solo dibuja, no puede apretar el gatillo. PickMyTrade envía sus alertas de TradingView directamente a Tradovate como órdenes reales, para que su estrategia opere sola.
Comience su prueba gratuita de 7 díasPreguntas frecuentes
Ayuda un poco, pero no tiene que empezar desde cero. El Code Explorer incluye el código fuente de los estudios propios de Tradovate, así que lo más sencillo es abrir uno parecido a lo que quiere, copiarlo y cambiar las partes que entienda. Los dos ejemplos anteriores, una línea desplazada y una media móvil, son de lo más simple que hay.
No. Un indicador personalizado solo calcula valores y los dibuja en el gráfico o en el DOM. No puede enviar órdenes por sí mismo. Para actuar automáticamente ante una señal necesita una capa de automatización aparte que vigile la condición y enrute la orden.
Esta guía tiene fines exclusivamente educativos e informativos y no constituye asesoramiento financiero, de inversión ni de trading. Operar con futuros y otros productos apalancados conlleva un riesgo sustancial de pérdida y no es adecuado para todos los inversores. PickMyTrade es una plataforma de automatización independiente de terceros y no está afiliada, respaldada ni patrocinada por Tradovate, Inc. "Tradovate" y todos los nombres, logotipos y marcas relacionados son propiedad de sus respectivos titulares. Las funciones y los pasos de la plataforma cambian con el tiempo, por lo que debe confirmar siempre el proceso vigente en la plataforma y la documentación oficiales de Tradovate antes de actuar.