Quien usa TradingView para hacer trading cuantitativo tarde o temprano se encontrará con el mismo problema:
El indicador de la estrategia aparece, pero la orden sigue dependiendo de hacerlo manualmente. En el momento en que suena la alarma, tú estás durmiendo, en una reunión o mirando otra pantalla—cuando te das cuenta, la ventana de oportunidad ya se cerró.
El problema es más fundamental: el mero hecho de tener que hacer una orden manualmente contradice la lógica del trading cuantitativo. Escribes una estrategia para eliminar la interferencia emocional y hacer que las reglas se ejecuten, pero mientras haya un "humano" en medio, las reglas no pueden ejecutarse de manera estricta.
Este artículo resuelve este problema. Al terminar de leerlo, entenderás cómo funciona todo el sistema de automatización del trading y completarás la configuración completa desde las alertas de TradingView hasta el cierre automático de operaciones en Binance.
Primero entiende el principio: cómo funciona este sistema
Antes de empezar a configurarlo, dedica dos minutos a entender todo el flujo; esto hará que la configuración posterior sea más clara y que, si algo falla, sea más fácil diagnosticarlo.
Todo el flujo de trading automatizado consta de tres partes:
TradingView → FlamoTrade → Binance
(fuente de señales) (centro de ejecución) (exchange)
TradingView se encarga de generar señales. Tras que se cumplan las condiciones de tu estrategia o indicador, TradingView enviará una alerta. Esta alerta puede incluir contenido y enviarlo al URL especificado mediante Webhook.
FlamoTrade es el motor de ejecución intermedio. Recibe solicitudes de Webhook enviadas por TradingView, analiza el comando de trading en JSON y luego llama a la API de Binance para colocar órdenes. Su valor central es: conectar de forma fiable "recibir la señal" con "ejecutar la operación", y al mismo tiempo gestionar una serie de problemas de ingeniería como concurrencia entre múltiples cuentas, reintentos cuando falla el envío de órdenes, notificaciones por Telegram, etc.
Binance se encarga de la ejecución real. FlamoTrade envía órdenes en tu cuenta mediante la API Key que autorizaste.
Después de entender este flujo, descubrirás que la lógica de la configuración es muy simple: hacer que TradingView sepa a dónde enviar señales, y que FlamoTrade sepa en qué cuenta colocar órdenes.
Por qué se necesita esta capa intermedia de FlamoTrade
¿Alguien preguntará: se puede llamar directamente la API de Binance desde TradingView?
Técnicamente, el Webhook de TradingView solo puede enviar solicitudes HTTP; no tiene capacidades como verificación de firmas, gestión de cuentas, concurrencia asíncrona, etc., por lo que no puede impulsar Binance directamente.
También hay quien intenta montar un servidor intermedio para hacer esto, pero en realidad hay muchos más problemas que los que se imaginan: reglas de firma de la API de Binance, validación de timestamp, control de concurrencia para múltiples cuentas, mecanismos de reintento cuando falla el envío de órdenes, protecciones de limitación de tasa del exchange… todo esto requiere una inversión de ingeniería considerable y mantenimiento a largo plazo.
FlamoTrade hace exactamente esto y ya ha estado funcionando de forma estable durante más de un año. Para los traders, usar herramientas listas para resolver problemas de ingeniería y enfocarse en la estrategia es la división correcta del trabajo.
Empezar a configurar
Paso 1: registrar FlamoTrade y obtener la Webhook URL
Abre flamotrade.com, registra una cuenta e inicia sesión.
Inicia sesión y entra en la pantalla de suscripción; elige activar el plan estándar gratuito de por vida y luego ve a la página de gestión de usuarios; busca el campo "Webhook URL" y copia esta dirección:
https://api.flamotrade.com/webhook/tu clave secreta exclusiva
Este URL es tu dirección exclusiva de recepción de señales. TradingView envía una solicitud aquí y FlamoTrade ejecutará el comando de trading correspondiente. La clave es el identificador único de tu identidad; no se la reveles a otros.
Paso 2: vincular la API de Binance
FlamoTrade necesita colocar órdenes en tu cuenta mediante la API de Binance. Aquí hay un diseño de seguridad que vale la pena entender:
La API Key de Binance tiene permisos por separado. Solo necesitas habilitar el permiso de trading de contratos; no necesitas habilitar el permiso de retiro. Esto significa que incluso si se filtra la API Key, la otra parte no podrá transferir tu dinero; como máximo podrá operar en contratos. Esta es la aplicación práctica del principio de mínimo privilegio.
Al crear la API Key, agrega las siguientes IP a la lista blanca:
192.243.127.172
Esta es la IP fija del servidor de FlamoTrade. Solo las solicitudes que provengan de esta IP pueden usar tu API Key; las solicitudes desde otras IP serán rechazadas directamente por Binance, reduciendo aún más la exposición al riesgo.
Después de crear, en la página de gestión de API de FlamoTrade, agrega tu API Key y Secret Key en la lista de cuentas de trading. FlamoTrade cifra el almacenamiento de las claves y no las guarda en texto plano.
Paso 3: configurar la notificación por Telegram
Este paso no es obligatorio, pero se recomienda encarecidamente configurarlo.
Un riesgo potencial del trading automatizado es el de "descontrol": el sistema ejecuta, pero tú no sabes qué está haciendo. La notificación por Telegram resuelve ese problema: cada orden (disparada, ejecutada o fallida) se envía en tiempo real a tu teléfono, para que siempre conozcas el estado del sistema.
Método de configuración:
En Telegram, busca @BotFather, introduce /newbot, crea un bot y guarda el Token
Usa @userinfobot para obtener tu Chat ID
En la página de configuración de TelegramBot en la interfaz de FlamoTrade, introduce el Token y el Chat ID; selecciona el idioma de envío de mensajes y guarda.
Haz clic en Probar; si recibes el mensaje, significa que la configuración fue exitosa.
Paso 4: crear una alerta en TradingView
Este es el paso más central de toda la configuración y también el más fácil de que salga mal. Entender la estructura del comando JSON hace que ajustar parámetros después sea mucho más sencillo.
Abre TradingView y crea una alerta en tu estrategia o indicador; presta atención a dos puntos clave:
Webhook URL: completa la dirección de FlamoTrade obtenida en el paso 1.
Mensaje de alerta: aquí se completa un comando de trading en formato JSON. FlamoTrade, al recibir la solicitud, analizará este JSON para decidir cómo enviar la orden.
A continuación se muestran varias plantillas de comandos de uso más común; entiende el significado de cada parámetro:
Tomar en precio de mercado para largos (la forma más básica)
{
"action": "buySell",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "BUY",
"amount": "0",
"usdt": "100",
"multiple": "0",
"price": "0",
"orderType": "market",
"cancelLast": "false",
"closeLast": "reverse",
"reduceOnly": "false",
"delay": "0",
"memo": ""
}
Explicación de parámetros:
action: tipo de instrucción. buySell es compra/venta normal, también hay create (orden compuesta), closePosition (cierre), etc.
side: dirección. BUY para abrir largos, SELL para abrir cortos
USDT:importe de la orden. Los tres campos amount、usdt、multiple se toman en orden de prioridad: el primer valor no nulo. Aquí, usa usdt para especificar 100U.
multiple:coloca la orden según el porcentaje del saldo de la cuenta; por ejemplo, "0.3*5" significa usar 30% del saldo de la cuenta × 5 de apalancamiento (el apalancamiento que ya tienes configurado en tu cuenta)
orderType:market = precio de mercado; limit = precio límite (si es limit, hay que completar price)
closeLast:reverse indica que antes de abrir la orden se cierren primero las posiciones en sentido contrario, para evitar mantener simultáneamente posiciones largas y cortas
cancelLast:antes de colocar la orden, si se cancelan todas las órdenes pendientes de ese instrumento
Al abrir la posición, configura simultáneamente take profit y stop loss (recomendado usar este)
{
"action": "create",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "BUY",
"amount": "0",
"usdt": "100",
"multiple": "0",
"price": "0",
"stopPrice": "{{close}}*(1-2%)",
"profitPrice": "{{close}}*(1+4%)",
"orderType": "market",
"cancelLast": "true",
"closeLast": "reverse",
"reduceOnly": "false",
"delay": "0",
"memo": ""
}
stopPrice y profitPrice admiten expresiones matemáticas; {{close}} es el placeholder de la alerta de TradingView, que se sustituirá automáticamente por el precio de cierre en el momento del disparo. *(1-2%) significa bajar 2%, *(1+4%) significa subir 4%.
Esto significa que no necesitas calcular el precio tú mismo: el sistema, en el instante en que se dispara la señal, calcula dinámicamente los niveles de take profit y stop loss con base en el precio en tiempo real.
Cerrar posición
{
"action": "closePosition",
"account": "ALL",
"symbol": "ETHUSDT",
"side": "X",
"amount": "0",
"ratio": "1.0",
"price": "0",
"orderType": "market",
"cancelLast": "true",
"delay": "0",
"memo": ""
}
side con X cierra en ambos sentidos por completo. closeBuy solo cierra largos; closeSell solo cierra cortos. ratio es el porcentaje de cierre: 1.0 significa cerrar todo; 0.5 significa cerrar la mitad.
Paso 5: verificar el flujo completo
Después de completar la configuración, realiza una prueba completa con una cantidad pequeña para confirmar tres cosas:
Cuando se dispara la alerta de TradingView, ¿FlamoTrade recibe la solicitud? (En TelegramBot se mostrará el JSON original después de sustituir los placeholders)
¿Telegram recibe la notificación con el estado de la orden?
¿Aparece en la cuenta de contratos de Binance el registro de la orden correspondiente?
Si los tres están bien, entonces la cadena completa está conectada.
Algunos detalles a tener en cuenta
Problema de latencia: desde que TradingView envía el Webhook hasta que Binance completa el trade, normalmente es dentro de 1 segundo. Esta latencia proviene de la transmisión de red y no del tiempo de procesamiento de FlamoTrade.
Múltiples cuentas: en el campo account, poner ALL significa colocar órdenes simultáneamente para todas las cuentas. Si administras varias cuentas, también puedes especificar nombres concretos, por ejemplo, "bnc1 bnc2". FlamoTrade las ejecutará de forma concurrente, no en serie esperando.
Gestión de fallos al enviar órdenes: FlamoTrade incorpora un mecanismo de reintentos. Si el envío falla por variaciones de red o por la limitación de tasa del exchange, el sistema volverá a intentar automáticamente y avisará por Telegram la causa del fallo.
Versión gratuita: plan estándar gratis de por vida, con 60 órdenes por mes. Es suficiente para estrategias de baja frecuencia o etapas de prueba. Si necesitas más frecuencia, considera actualizar al plan de pago.
Resumen
La esencia del trading automatizado es: hacer que las reglas se ejecuten estrictamente cuando no estás presente.
Esta configuración hace algo muy sencillo: TradingView se encarga de determinar la señal, FlamoTrade se encarga de ejecutar de forma fiable y Binance se encarga de la ejecución real. Cada etapa hace solo lo que le corresponde, sin espacio para intervención manual en medio.
Configuras una vez y, después, cuando la estrategia se ejecute, ni siquiera necesitas abrir el ordenador.
Dirección de registro de FlamoTrade: flamotrade.com (plan estándar gratis de por vida, no requiere tarjeta de crédito)