Especificaciones del mensaje de alerta del bot de señales de trading 2.0
Tabla de contenido
Introducción
Con el lanzamiento de Bots de Señales, los usuarios de TradingView ahora pueden publicar sus señales y crear un Bot de Señales en OKX. En esta guía, veremos las diversas especificaciones de mensajes de alerta que OKX admite para los usuarios.
Para aquellos que conocen bien PineScript™ y dependen exclusivamente de scripts de estrategia para enviar señales, hemos diseñado meticulosamente un formato de especificaciones exclusivo. Este formato integra a la perfección los marcadores de posición de estrategia de PineScript™, lo que te permite transmitir señales de trading con notable facilidad. Si eres un usuario nativo de estrategias de PineScript™, este formato es tu compañero ideal, ya que proporciona un enfoque simplificado para fusionar tus scripts de estrategias con los marcadores de posición de estrategias de TradingView. Si eres un escritor de estrategias y utilizas las funciones strategy.*() para crear tus señales de trading, consulta la Sección A - para usuarios de estrategias de PineScript™ a continuación.
Por otro lado, entendemos que no todo el mundo confía únicamente en los scripts de estrategia de PineScript™. En la Sección B - Universalmente compatible de esta guía, proporcionamos un conjunto versátil de especificaciones que van más allá de los métodos de scripts. Estas especificaciones funcionan para todos los enfoques de generación de señales. Ya sea que utilices indicadores personalizados, diversas técnicas de gráficos o incluso prefieras alertas manuales, este marco de especificaciones tiene lo que necesitas.
Una breve descripción general de Pine Script™: "Estrategia" vs "Indicador"
Las estrategias de Pine Script™ sirven para realizar pruebas retrospectivas de datos históricos, así como pruebas futuras en mercados reales. Además de realizar cálculos de indicadores, las estrategias incluyen llamadas a funciones Strategy.*() que transmiten órdenes de trading al emulador de broker de Pine Script™. Luego, este emulador puede simular la ejecución de estas órdenes. Los resultados de las pruebas retrospectivas se visualizan en la pestaña "Prueba de Estrategia" ubicada en la parte inferior del gráfico, junto a la pestaña "Editor Pine Script™".
Por otro lado, los indicadores de Pine Script™ también implican cálculos, pero no están pensados para su uso en escenarios de backtesting. Debido a su independencia del emulador de broker, los indicadores consumen menos recursos y se ejecutan más rápidamente.
Es importante tener en cuenta que tienes la flexibilidad de utilizar el formato de la Sección A o el de la Sección B; ambos son totalmente compatibles. Según los mensajes que transmitas, el sistema discernirá inteligentemente el formato utilizado y analizará tus mensajes en consecuencia. Este procesamiento inteligente garantiza una experiencia perfecta independientemente del enfoque elegido.
Sección A (Usuarios de estrategia PineScript™)
Las siguientes especificaciones están diseñadas específicamente para usuarios que componen sus algoritmos utilizando estrategias de PineScript™ y principalmente con la función strategy.*. Este formato está dedicado a acomodar los valores de los marcadores de posición de la estrategia, asegurando una adaptabilidad perfecta. Para una comprensión más profunda de los scripts de estrategia y el proceso de envío de alertas utilizando variables de marcador de posición de estrategia, puedes encontrar información adicional en este enlace.
Si este concepto no te resulta familiar, la Sección B proporciona un enfoque alternativo para crear tus alertas, aplicable a una gama más amplia de escenarios.
Descripción general de las especificaciones de AlertMsg
Parámetro
|
Requerido
|
Valores
|
id
|
Requeridos
|
|
acción
|
Requerida
|
|
marketPosition
|
Requerida
|
|
prevMarketPosition
|
Requerida
|
|
instrumento
|
Requerido
|
|
Token de señal
|
Requerida
|
Proporcionado por OKX al crear la señal
|
marcadetiempo
|
Requerida
|
{{timenow}} de TradingView
|
maxLag
|
Opcional
|
Valor entero no negativo entre [1. 3600]. Predeterminado a 60.
|
Tipodeinversión
|
Opcional*
|
|
monto
|
Requerido
|
|
1. Especificación de AlertMsg: id
id - El identificador de la orden
{{strategy.order.id}} - devuelve el ID de la orden ejecutada (la cadena utilizada como primer parámetro en una de las llamadas a funciones que generan órdenes: strategy.entry, strategy.exit o strategy.order).
2. Especificación de AlertMsg: acción
acción: ¿Comprar o vender?
{{strategy.order.action}} - devuelve la cadena "comprar" o "vender" para la orden ejecutada.
3. Especificación de AlertMsg: marketPosition
marketPosition - Estado de la posición prevista (tras la ejecución de la orden)
{{strategy.market_position}} - devuelve la posición actual de la estrategia en forma de cadena: "long", "flat", o "short".
4. Especificación de AlertMsg: prevMarketPosition
prevMarketPosition - Estado de la posición anterior (antes de la ejecución de la orden)
{{strategy.prev_market_position}} - devuelve la posición anterior de la estrategia en forma de cadena: "long", "flat", o "short".
5. Especificación de AlertMsg: instrumento
Formato 1: ticker - Valores de marcador de posición de TradingView
Un 'marcador de posición estándar'* es un fragmento de texto literal rodeado por llaves dobles e incluido dentro de un mensaje de alerta.
"{{ticker}}" devolverá el Ticker del instrumento en el que se generó la alerta.
Por ejemplo: "BTCUSDT.P", "ETHUSDT.P".
* Marcador de posición estándar para acceder a las variables en PineScript™. Más información aquí.
Formato 2: Formato de instrumento OKX
ID del instrument, o "instId" en la API de OKX. Más detalles se pueden encontrar en este enlace
Por ejemplo: "BTC-USDT-SWAP", "ETH-USDT-SWAP"
6. Especificación AlertMsg - signalToken
signalToken -- Autenticación de Señal
El token es una medida de seguridad para garantizar que las solicitudes entrantes sean legítimas y autorizadas. Este signalToken se generará automáticamente cuando el usuario cree con éxito una nueva señal en nuestra plataforma y deberá copiarse en el mensaje de alerta de TradingView.
¿Cómo localizar tu signalToken para una señal ya activa?
- Consulta la sección Detalles de tu señal
- Ubica tu signalToken en la sección de mensajes de alerta recomendados
7. Especificación AlertMsg: marca de tiempo
hora actual: valores de marcador de posición de TradingView
Un 'marcador de posición estándar'* es un fragmento de texto literal rodeado por llaves dobles e incluido dentro de un mensaje de alerta.
"{{timenow}}" devolverá la hora actual y exacta de cuando se generó la alerta, en UTC y en formato aaaa-MM-ddTHH: mm: ssZ.
Por ejemplo: "2023-06-01T17:38:10Z"
* Marcador de posición estándar para acceder a las variables en PineScript. Más información aquí.
8. Especificación de AlertMsg: maxLag
maxLag - Retraso máximo aceptable
El término "maxLag" se refiere al retraso o latencia máximo permitido, medido en segundos, antes de que una señal de trading se considere nula. Este cálculo de maxLag implica determinar la diferencia de tiempo entre el momento en que se envió la señal desde TradingView (usando el campo "marca de tiempo" dentro del mensaje de alerta) y el instante en que se recibió en OKX con el fin de ejecutar una orden.
De forma predeterminada, se establece en 60 segundos. Establecer un valor maxLag ayuda a garantizar que el bot de señales funcione de manera oportuna, evitando actuar sobre señales desactualizadas o potencialmente inexactas que pueden no reflejar las condiciones actuales del mercado.
9. Especificación AlertMsg: investmentType & monto
Nota importante: Para garantizar una compatibilidad óptima con tu estrategia de TradingView, recomendamos configurar el tipo de inversión como "base" y establecer el monto en "{{strategy.order.contracts}}". Si sigues este enfoque, las cantidades de las órdenes en OKX se alinearán con las cantidades de las órdenes especificadas en tu estrategia TradingView.
investmentType y monto
(SÓLO PARA SEÑALES DE ENTRADA)
- base: Importe en moneda base (opción recomendada)
- margen: Margen invertido en moneda cotizada
- contrato: Un número fijo de contratos
- percentage_balance: Basado en el % de Saldo Disponible (es decir, el margen disponible para abrir nuevas órdenes)
- percentage_investment: Con base en el % de inversión activa en tu bot. La inversión activa será típicamente tu margen invertido inicial en el momento de la creación del bot y permanecerá fija hasta que recargues más margen y elijas aumentar este valor. Por ejemplo, si creas un bot con un margen invertido inicial de 1000 USDT, tu inversión activa se establecerá en 1000 USDT. Para cualquier señal entrante, este es el valor que se utilizará para los cálculos del tamaño de tu orden. Supongamos que después de unos días de ejecutar tu bot, decides que está funcionando bien y reinviertes otro margen de 1000 USDT y lo agregas a tu inversión activa. A partir de ese momento, tu inversión activa aumentará a 2000 USDT y este es el nuevo valor que se utilizará para los cálculos del tamaño de tu orden. Si no estás seguro cuál es el valor actual de inversión activa de tu bot, siempre puedes verificarlo en la sección Detalles del Bot.
(SOLO PARA SEÑALES DE SALIDA)
- base: Importe en moneda base (opción recomendada)
- percentage_position: Basado en el % de posiciones abiertas
Sección B (Universalmente compatible)
Las especificaciones que se proporcionan a continuación son versátiles y pueden adaptarse a cualquier escenario. Ya sea que estés utilizando PineScript™ para elaborar scripts de estrategias o indicadores (estudios), o ingresando alertas manualmente en la interfaz de usuario Alerta de TradingView, estas especificaciones siguen siendo adaptables y personalizables.
Descripción de las especificaciones de AlertMsg
Parámetro | Requerido | Valores |
---|---|---|
acción | Requerido |
|
instrumento | Requerido |
|
Token de señal | Requerido | Proporcionado por OKX al crear la señal |
marcadetiempo | Requerido | {{timenow}} de TradingView |
maxLag | Opcional | Valor entero no negativo entre [1. 3600]. Predeterminado a 60. |
orderType | Opcional. El parámetro es obligatorio si el tipo de orden = límite |
|
orderPriceOffset | Opcional. El parámetro es obligatorio si no se configura ninguna configuración al crear un bot se señales de OKX | Valor flotante entre [0, 100] en % |
Tipodeinversión | Opcional. El parámetro es obligatorio si el tipo de orden = límite |
|
monto | Opcional. El parámetro es obligatorio si el tipo de orden = límite |
|
1. Especificación de AlertMsg: acción
Modo de posición:
El Bot de Señales opera en modo unidireccional (es decir, compra/venta), lo que significa que el bot solo mantendrá posiciones en una dirección para un instrumento determinado.
Abrir órdenes
- ENTER_LONG: Abrir una posición larga con la expectativa de que su precio suba.
- ENTER_SHORT: Abrir una posición corta con la expectativa de que su precio baje.
Cerrar órdenes
- EXIT_LONG: Cerrar una posición larga parcial o totalmente mediante la venta de posiciones de holding.
- EXIT_SHORT: Cerrar una posición corta de forma parcial o total mediante la recompra de los contratos.
2. Especificación de AlertMsg: instrumento
Formato 1: ticker - Valores de marcador de posición de TradingView
Un 'marcador de posición estándar'* es un fragmento de texto literal rodeado por llaves dobles e incluido dentro de un mensaje de alerta.
"{{ticker}}" devolverá el Ticker del instrumento en el que se generó la alerta.
Por ejemplo: "BTCUSDT.P", "ETHUSDT.P".
* Marcador de posición estándar para acceder a las variables en PineScript. Más información aquí.
Formato 2: Formato de instrumento OKX
ID del instrument, o "instId" en la API de OKX. Más detalles se pueden encontrar en este enlace
Por ejemplo: "BTC-USDT-SWAP", "ETH-USDT-SWAP"
3. Especificación AlertMsg - signalToken
signalToken- Autenticación de Señal
El token es una medida de seguridad para garantizar que las solicitudes entrantes sean legítimas y autorizadas. Este signalToken se generará automáticamente cuando el usuario cree con éxito una nueva señal en nuestra plataforma y deberá copiarse en el mensaje de alerta de TradingView.
4. Especificación AlertMsg: marca de tiempo
hora actual: valores de marcador de posición de TradingView
Un 'marcador de posición estándar'* es un fragmento de texto literal rodeado por llaves dobles e incluido dentro de un mensaje de alerta.
"{{timenow}}" devolverá la hora actual y exacta de cuando se generó la alerta, en UTC y en formato aaaa-MM-ddTHH: mm: ssZ.
Formato posible (hora UTC, formato ISO 8061)
- yyyy-MM-ddTHH:mm:ssZ por ejemplo: "2023-06-01T17:38:10Z"
- yyyy-MM-ddTHH:mm:ss.SSSZ por ejemplo: "2023-06-01T17:38:10.836Z"
- yyyy-MM-ddTHH:mm:ss+0000 por ejemplo: "2023-06-01T17:38:10+0000"
Por ejemplo: "2023-06-01T17:38:10Z"
* Marcador de posición estándar para acceder a las variables en PineScript. Más información aquí.
5. Especificación de AlertMsg: maxLag
maxLag - Retraso máximo aceptable
El término "maxLag" se refiere al retraso o latencia máximo permitido, medido en segundos, antes de que una señal de trading se considere nula. Este cálculo de maxLag implica determinar la diferencia de tiempo entre el momento en que se envió la señal desde TradingView (usando el campo "marca de tiempo" dentro del mensaje de alerta) y el instante en que se recibió en OKX con el fin de ejecutar una orden.
De forma predeterminada, se establece en 60 segundos. Establecer un valor maxLag ayuda a garantizar que el Bot de Señales funcione de manera oportuna, evitando actuar sobre señales desactualizadas o potencialmente inexactas que pueden no reflejar las condiciones actuales del mercado.
6. Especificación del mensaje de alerta: orden
orderType
- Mercado: Coloca una orden de mercado para abrir (si acción =ENTER_XX) o cerrar (si acción = EXIT_XX) una posición. No es necesario proporcionar orderPriceOffset
- Límite: Coloca una orden límite para abrir (si la acción =ENTER_XX) o cerrar (si la acción = EXIT_XX) una posición.
orderPriceOffset (SOLO aplicable con orden LÍMITE)
- ENTER_LONG: [1-(orderPriceOffset/100)] * Bid-1
- ENTER_SHORT: [1+(orderPriceOffset/100)] * Ask-1
- EXIT_LONG: [1+(orderPriceOffset/100)] * Ask-1
- EXIT_SHORT: [1-(orderPriceOffset/100)] * Bid-1
7. Especificación AlertMsg: investmentType & monto
investmentType y monto
(SÓLO PARA SEÑALES DE ENTRADA)
- Margen: Margen invertido en moneda cotizada
- Contrato: Un número fijo de contratos
- Percentage_balance: Basado en el % de Saldo Disponible (es decir, el margen disponible para abrir nuevas órdenes)
- Percentage_investment: Con base en el % de inversión activa en tu bot. La inversión activa será típicamente tu margen invertido inicial en el momento de la creación del bot y permanecerá fija hasta que recargues más margen y elijas aumentar este valor. Por ejemplo, si creas un bot con un margen invertido inicial de 1000 USDT, tu inversión activa se establecerá en 1000 USDT. Para cualquier señal entrante, este es el valor que se utilizará para los cálculos del tamaño de tu orden. Supongamos que después de unos días de ejecutar tu bot, decides que está funcionando bien y reinviertes otro margen de 1000 USDT y lo agregas a tu inversión activa. A partir de ese momento, tu inversión activa aumentará a 2000 USDT y este es el nuevo valor que se utilizará para los cálculos del tamaño de tu orden. Si no estás seguro cuál es el valor actual de inversión activa de tu bot, siempre puedes verificarlo en la sección Detalles del Bot.
(SOLO PARA SEÑALES DE SALIDA)
- Percentage_position: Basado en el % de posiciones abiertas
Sección B Ejemplos de trabajo
Ejemplo 1: Entrada larga -> Salida larga (cierre completo) sin entrada múltiple
Ejemplo 2: Entrada larga -> Entrada corta (reversión de un paso) sin entrada múltiple
Ejemplo 3: Entrada larga -> Salida larga (parcialmente) -> Salida larga (cierre total)
Ejemplo 4: Usando entrada múltiple
Ingreso Múltiple es una característica del bot de señales que permite la ejecución de puntos de ingreso múltiple para un instrumento determinado. Los Traders pueden optimizar su enfoque de trading diversificando los puntos de ingreso (es decir, costo promedio en dólares), aumentando potencialmente las posibilidades de capturar operaciones de trading rentables en un entorno de mercado dinámico.
Ejemplo 5: Usar solo señal de activación (sin campos relacionados con la orden)
Para los proveedores de señales, pueden excluir ciertos parámetros opcionales dado que el usuario ya los configuró en el bot. Esto es particularmente útil para los proveedores que se enfocan en ofrecer señales de activación de compra/venta SOLAMENTE, y cada suscriptor debe decidir cuánto invertir.
Ejemplo 6: Usar solo señal de activación (sin campos relacionados con la orden)
Si tanto la configuración de la señal como la del bot no especifican los detalles de la orden, se utilizarán los valores predeterminados.
- Para las señales de INGRESO, por defecto abrirá una inversión X %* usando una orden de mercado.
- Para las señales de SALIDA, por defecto cerrará el 100 % de las posiciones abiertas al recibir la señal.
*** X = 100 para un solo par. X = 50 para pares múltiples
Ejemplo 7: Precedencia de orden de campo
Los parámetros del bot tienen prioridad sobre los parámetros de la señal. Hay dos reglas a tener en cuenta:
- Regla 1: Tanto el bot como la señal definen el campo
Para tipo de orden
|
Orden de mercado (Bot) ✅
|
Orden límite (señal) ❌
|
- Regla 2: Uno de los bots/ señales define el campo
Por Tipo de inversión y monto
|
No disponible (Bot) ❌
|
100 % saldo disponible (Señal) ✅
|
Preguntas frecuentes
Si tienes alguna pregunta relacionada con el bot de señales, puedes revisar algunas de las preguntas más frecuentes de nuestros usuarios en este artículo.