Cómo automatizar las alertas de TradingView con webhooks
Qué es un webhook, alertas de indicador frente a alertas de estrategia, cómo construir un mensaje JSON con placeholders y qué revisar para una automatización fiable y segura.
TradingView es una de las herramientas más populares para analizar gráficos y crear estrategias, pero sus alertas no envían órdenes a un bróker por sí solas. El puente entre una alerta y una ejecución es el webhook: un mensaje automático que se envía a la dirección que elijas en el momento en que salta la alerta. Este artículo explica cómo funciona, qué poner en el mensaje y qué trampas de fiabilidad y seguridad conviene conocer de antemano.
Qué es un webhook
Un webhook es un mecanismo por el que un sistema envía una petición HTTP a otro cuando ocurre algo, en lugar de que el segundo sistema pregunte constantemente "¿hay algo nuevo?". En TradingView, cuando se cumple la condición de una alerta, los servidores de TradingView envían una petición POST a la URL de webhook que configuraste, y el cuerpo de la petición contiene el texto que escribiste en el campo de mensaje.
El lado receptor, por ejemplo una plataforma de automatización, lee el mensaje, determina qué hacer (comprar, vender, cerrar, cantidad) y envía la orden a la cuenta del bróker. Tenlo presente: TradingView solo envía el mensaje. Todas las decisiones sobre ejecución, gestión del riesgo y comprobaciones de seguridad se toman en el lado receptor.
Según el centro de ayuda de TradingView, el envío de webhooks depende de tu plan de suscripción y normalmente requiere tener activada la autenticación en dos pasos en la cuenta. Los requisitos pueden cambiar, así que consulta los detalles actuales en su web oficial.
Alertas de indicador frente a alertas de estrategia
Hay dos tipos principales de alertas que se usan para automatizar:
- Alerta de indicador o de condición: se crea sobre un indicador, sobre el precio o sobre una función de alerta en código Pine. Encaja bien cuando la lógica es sencilla o cuando el propio indicador decide cuándo enviar una señal.
- Alerta de estrategia: se crea sobre un script de tipo estrategia y salta cuando el motor de la estrategia ejecuta una orden simulada (entrada, salida, giro). La ventaja es que el mensaje puede incluir información sobre la propia orden, como la dirección y el tamaño.
La diferencia importa porque cambia el comportamiento. Una alerta de estrategia depende de la configuración de la estrategia, por ejemplo si calcula solo al cierre de la vela o en cada tick. Si tu backtest se hizo al cierre de vela y la alerta en real funciona dentro de la vela, los resultados pueden diferir. Revisa la configuración y asegúrate de que sea coherente.
Cómo construir el mensaje: JSON y placeholders
La mayoría de los sistemas de automatización esperan un mensaje en formato JSON, una estructura de campos y valores. Dicho en palabras, un mensaje típico contiene campos como qué símbolo operar, en qué dirección, cuántos contratos y, a veces, un identificador de estrategia o un token que identifica la conexión. El formato exacto lo define el lado receptor, así que copia siempre la plantilla de la documentación de la plataforma que uses.
TradingView admite placeholders: variables entre dobles llaves que se sustituyen por valores reales en el momento del envío. Hay placeholders para el símbolo, el precio de cierre, la hora y, en las alertas de estrategia, también para la dirección y la cantidad de la orden. Usar bien los placeholders te permite reutilizar la misma plantilla de mensaje en varios gráficos sin reescribirla.
Algunas reglas que conviene respetar:
- Mantén el JSON válido: comillas dobles alrededor de los nombres de campo y del texto, comas entre campos y sin coma sobrante al final.
- No dependas de campos que puedan no rellenarse en todas las situaciones.
- Revisa el mensaje ya sustituido en el registro de alertas de TradingView para ver qué se envió realmente.
El símbolo correcto y el rollover de contratos
Los futuros añaden un problema propio: el gráfico continuo (por ejemplo NQ1!) muestra el contrato más cercano y cambia automáticamente, pero el bróker necesita saber qué contrato concreto operar. Si el mensaje envía el nombre del gráfico continuo, el lado receptor tiene que traducirlo al contrato correcto. Si envía un contrato concreto, la alerta debe actualizarse cuando llegue el momento del rollover. La explicación completa está en el artículo sobre el rollover de contratos de futuros.
Consideraciones de fiabilidad
Una buena automatización es aquella en la que sabes cuándo no ha funcionado. Puntos a tener en cuenta:
- Caducidad de las alertas: en algunos planes las alertas tienen fecha de caducidad. Una alerta caducada simplemente deja de enviar, sin avisar. Ponte un recordatorio.
- Cambios en el script: si editas el indicador o la estrategia, la alerta existente puede seguir funcionando con la versión antigua. Normalmente hay que volver a crearla.
- Alertas duplicadas: dos alertas en el mismo gráfico, o una alerta que salta más de una vez por vela, pueden enviar una orden duplicada. Configura la frecuencia de activación a conciencia y, idealmente, deja que el lado receptor detecte duplicados.
- Retrasos: un webhook viaja por internet y puede retrasarse. En un mercado rápido, un pequeño retraso afecta al precio; consulta el artículo sobre slippage y costes de ejecución.
- Caída del receptor: si el servidor receptor no está disponible, el mensaje puede perderse. Un buen sistema te avisará.
Cómo proteger tu URL de webhook
Tu URL de webhook es, en la práctica, una llave: cualquiera que la conozca, y que conozca el formato del mensaje, puede enviar órdenes a tu cuenta. Por eso:
- No publiques la URL en capturas de pantalla, foros ni grupos de chat.
- Siempre que sea posible, usa un token secreto dentro del mensaje que el lado receptor verifique.
- Si sospechas que la URL se ha filtrado, crea una nueva conexión y revoca la antigua.
- Establece límites de riesgo en el lado receptor, para que ni siquiera un mensaje mal formado pueda abrir una posición enorme.
Checklist antes de ponerla en marcha
- ¿Se probó la estrategia con la misma configuración de cálculo con la que funciona la alerta?
- ¿Es el mensaje un JSON válido según la documentación del receptor?
- ¿Está el símbolo asociado al contrato correcto?
- ¿Conoces la fecha de caducidad de la alerta?
- ¿Has fijado un límite de pérdida diaria y un número máximo de contratos?
- ¿Lo has probado todo primero en simulación?
Puntos clave
- Un webhook es solo un mensajero: TradingView envía un mensaje y el lado receptor ejecuta y gestiona el riesgo.
- Las alertas de estrategia pueden transmitir dirección y cantidad, pero necesitan una configuración de cálculo coherente.
- Un JSON válido y unos placeholders correctos evitan muchos errores.
- La caducidad, los duplicados y las ediciones del script son fuentes de fallo habituales.
- Tu URL de webhook es un secreto; trátala como una contraseña.
Si quieres ver cómo se hace en la práctica, hay una guía sobre cómo conectar las alertas de TradingView a WeCore. WeCore recibe las alertas, las convierte en órdenes en tu cuenta de bróker o de prop firm y aplica límites de riesgo automáticos, y puedes empezar en modo simulación.