Las personas que hacen trading cuantitativo con TradingView, tarde o temprano enfrentarán el mismo problema:
La señal de la estrategia ha salido, pero las órdenes aún dependen de lo manual. En el momento en que suena la alarma, estás durmiendo, en una reunión, o mirando otros mercados—cuando te das cuenta, la ventana de oportunidad ya se ha cerrado.
El problema más fundamental es: la acción de hacer órdenes manualmente se contradice con la lógica del trading cuantitativo. Escribes estrategias para eliminar la interferencia emocional y permitir que las reglas se ejecuten, pero mientras haya una "persona" en el medio, las reglas no se pueden ejecutar de manera estricta.
Este artículo resuelve este problema. Al finalizar, entenderás el principio del trabajo del trading automatizado y completarás la configuración completa desde la alarma de TradingView hasta la ejecución automática en Binance.
Primero entiende el principio: cómo funciona este sistema
Antes de empezar a configurar, tómate dos minutos para entender toda la cadena; así tu configuración posterior será más clara y también será más fácil detectar y depurar problemas.
Toda la cadena del trading automatizado se compone de tres partes:
TradingView → FlamoTrade → Binance
(fuente de señales) (centro de ejecución) (exchange)
TradingView se encarga de generar las señales. Cuando se cumplen las condiciones de tu estrategia o indicador, TradingView enviará una alerta. Esta alerta puede incluir contenido y enviarse al URL especificado mediante un Webhook.
FlamoTrade es el motor de ejecución intermedia. Recibe solicitudes de Webhook enviadas por TradingView, analiza las instrucciones de trading en JSON y luego llama a la API de Binance para crear la orden. Su valor central es: conectar de forma fiable “recibir la señal” con “ejecutar la operación”, y al mismo tiempo resolver una serie de problemas de ingeniería como concurrencia en múltiples cuentas, reintentos por fallos en las órdenes, envíos por Telegram, etc.
Binance se encarga de la ejecución real. FlamoTrade realiza las órdenes en tu cuenta usando la API Key que te autorizas.
Después de entender esta cadena, verás que la lógica de la configuración es muy sencilla: decirle a TradingView a dónde enviar las señales, y decirle a FlamoTrade en qué cuenta debe colocar las órdenes.
¿Por qué se necesita esta capa intermedia de FlamoTrade?
Alguien podría preguntar: ¿Puede TradingView llamar directamente a la API de Binance?
Técnicamente, el Webhook de TradingView solo puede enviar solicitudes HTTP. No tiene capacidades como validación de firma, gestión de cuentas, concurrencia asíncrona, etc., por lo que no puede impulsar Binance directamente.
También hay personas que intentan montar por su cuenta 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 timestamps, control de concurrencia para múltiples cuentas, mecanismo de reintentos si falla una orden, protección contra limitaciones del exchange... Todo eso requiere una inversión considerable en ingeniería y mantenimiento a largo plazo.
Lo que hace FlamoTrade es precisamente eso, y ya funciona de forma estable desde hace más de un año. Para los traders, usar herramientas ya preparadas para resolver problemas de ingeniería es la división de trabajo correcta: centrar tu energía en la estrategia.
Empezar a configurar
Paso 1: registra FlamoTrade y obtén la Webhook URL
Abre flamotrade.com, registra una cuenta e inicia sesión.
Después de iniciar sesión, entra a la pantalla de suscripciones, selecciona activar la versión estándar gratuita e ilimitada, y luego ve a la página de gestión de usuarios. Busca el apartado “Webhook URL” y copia esta dirección:
https://api.flamotrade.com/webhook/tu_clave_exclusiva
Este URL es tu dirección exclusiva para recibir señales. TradingView enviará solicitudes aquí; FlamoTrade ejecutará las instrucciones de trading correspondientes. La clave es una identificación única de tu identidad; no se la reveles a otras personas.
Paso 2: vincular la API de Binance
FlamoTrade debe enviar ó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 nivel. Solo necesitas habilitar el permiso de trading de contratos; no necesitas habilitar el permiso de retiro. Esto significa que, incluso si se filtrara la API Key, la otra parte no podría transferir tu dinero; como máximo podría operar en contratos. Este es el uso práctico del principio de mínimo privilegio.
Al crear la API Key, agrega las siguientes direcciones IP a la lista blanca:
192.243.127.172
Este es el IP fijo del servidor de FlamoTrade. Solo las solicitudes provenientes de este IP pueden usar tu API Key; las solicitudes de otros IP serán rechazadas directamente por Binance, reduciendo además la exposición al riesgo.
Después de crear la configuración, añade tu API Key y Secret Key en la lista de cuentas de trading de la página de gestión de APIs en FlamoTrade. FlamoTrade cifra y guarda las claves; no las guarda en texto plano.
Paso 3: configurar el envío por Telegram
Este paso no es obligatorio, pero se recomienda encarecidamente configurarlo.
Un riesgo potencial de la operativa automatizada es el de “perder el control”: la ejecución se realiza, pero no sabes qué está haciendo el sistema. La solución que ofrece Telegram resuelve justo este problema: el disparo, la ejecución y el fallo de cada orden se envían en tiempo real a tu teléfono, para que puedas conocer el estado del sistema en todo momento.
Método de configuración:
En Telegram, busca @BotFather, escribe /newbot y crea un Bot. Guarda el Token. Usa @userinfobot para obtener tu Chat ID. En la página de configuración de TelegramBot en la interfaz de API de FlamoTrade, introduce el Token y el Chat ID, selecciona el idioma para los envíos, guarda y haz clic en “test”. Si recibes el mensaje, significa que la configuración fue exitosa.
Paso 4: crear una alerta en TradingView
Este es el paso más esencial de toda la configuración y también el más fácil de que falle. Entender la estructura de la instrucción JSON hará 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: introduce la dirección de FlamoTrade obtenida en el paso 1.
Mensaje de la alerta: aquí se indica el JSON con las instrucciones de trading. Cuando FlamoTrade recibe la solicitud, analiza ese JSON para decidir cómo hacer la orden.
A continuación se muestran algunas de las plantillas de órdenes más comunes; entiende el significado de cada parámetro:
Comprar al precio de mercado (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": ""
}
Descripción de parámetros:
action: tipo de instrucción. buySell es compra/venta normal; también hay create (órdenes compuestas), closePosition (cierre), etc. side: dirección. BUY abre largo, SELL abre corto. usdt: importe de la orden. Los tres campos amount, usdt y multiple toman el primer valor no nulo según prioridad. Aquí se usa usdt para indicar 100. Umultiple: operar 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 configurado en tu cuenta). orderType: market (precio de mercado) y limit (precio límite; si eliges limit, debes completar price). closeLast: reverse significa cerrar primero la posición en sentido contrario antes de abrir, para evitar mantener posiciones largas y cortas al mismo tiempo. cancelLast: antes de enviar la orden, si se cancelan todas las órdenes pendientes de ese instrumento.
Configura take profit y stop loss al mismo tiempo al abrir la posición (recomendado)
{
"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 marcador de posición de alertas de TradingView, que se sustituirá automáticamente por el precio de cierre en el momento del disparo. *(1-2%) significa bajar un 2%; *(1+4%) significa subir un 4%.
Esto significa que no necesitas calcular los precios tú mismo: en el instante en que se dispara la señal, el sistema calcula dinámicamente el nivel de take profit y stop loss en función del 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": ""
}
En side, coloca X para cerrar posiciones en ambos sentidos (full flat). closeBuy cierra solo posiciones largas y closeSell cierra solo posiciones cortas. ratio es el porcentaje de cierre: 1.0 significa cerrar todo y 0.5 cerrar la mitad.
Paso 5: verificar todo el flujo
Cuando hayas terminado la configuración, haz una prueba completa con una posición pequeña para confirmar tres cosas:
Después de que la alerta de TradingView se dispare, si FlamoTrade recibe la solicitud (en TelegramBot se muestra el json original después de reemplazar los marcadores) Si Telegram recibe la información del estado de la orden enviada Binance: si aparece el registro de la orden correspondiente en la cuenta de contratos
Los tres están bien; eso indica que toda la cadena está conectada.
Algunos detalles que conviene tener en cuenta
Problema de latencia: desde que TradingView envía el Webhook hasta que Binance ejecuta la operación, normalmente es dentro de 1 segundo. Esta latencia proviene de la transmisión por red, no del tiempo de procesamiento de FlamoTrade.
Múltiples cuentas: el campo account con ALL significa abrir órdenes para todas las cuentas al mismo tiempo. Si gestionas varias cuentas, también puedes indicar nombres concretos, por ejemplo “bnc1 bnc2”. FlamoTrade ejecutará en paralelo en lugar de esperar en serie.
Gestión de fallos al hacer la orden: FlamoTrade incluye un mecanismo de reintento. Si la orden falla por fluctuaciones de red o limitación de velocidad por parte del exchange, el sistema reintentará automáticamente y te informará en Telegram del motivo del fallo.
Versión gratuita: versión estándar gratuita e ilimitada, con un cupo de 60 órdenes al mes. Es suficiente para estrategias de baja frecuencia o para la fase de pruebas. Si necesitas exceder la frecuencia, entonces considera actualizar a la versión de pago.
Resumen
La esencia del trading automatizado es: hacer que las reglas se ejecuten estrictamente incluso cuando no estás presente.
Esta configuración hace algo muy sencillo: TradingView se encarga de determinar las señales, FlamoTrade se encarga de ejecutar de forma fiable y Binance se encarga de la ejecución real. En cada etapa solo se hace lo que corresponde; no hay margen para intervención manual en medio.
Configúralo una vez y, cuando la estrategia esté en marcha, ni siquiera necesitarás abrir el ordenador.
Dirección de registro de FlamoTrade: flamotrade.com (versión estándar gratuita e ilimitada, sin necesidad de tarjeta de crédito)