Con la llegada de los bloques Webhooks en Kryll, los usuarios ahora pueden impulsar sus estrategias para permitir una plataforma externa o personalizada. En este artículo, le mostramos cómo ejecutar un algoritmo de estrategia Kryll a través de PineScript (un lenguaje de programación desarrollado por TradingView para la creación de estrategias e indicadores).
Prerequisito: Debes tener al menos una cuenta Pro en TradingView para poder generar alertas de Webhook.
Creando una estrategia de TradingView
Utilizaremos una estrategia de ejemplo de TradingView desarrollada en Pinescript v5.
En este ejemplo, la estrategia utilizará dos indicadores técnicos que no están disponibles en Kryll: la intersección de dos medias móviles de RSI y el indicador Vortex. Dependiendo de la configuración de estos indicadores, la estrategia colocará órdenes en largo (LONG), cortos (SHORT) o cerradas (CLOSE).
//@version=5
// KRYLL Webhook - Tradingview strategy Exemple
strategy("Demo Strat", overlay=true)
// inputs zone
rsi_length = input.int(7, title="RSI Length", minval=2)
rsi_fma_length = input.int(7, title="Fast RSI MA Length", minval=2)
rsi_sma_length = input.int(14, title="Slow RSI MA Length", minval=4)
rsi_neutral = input.int(20, title="RSI neutral zone", minval=2)
vortex_period = input.int(14, title="Vortex Length", minval=2)
// Vortex indicator computation
VMP = math.sum( math.abs( high - low[1]), vortex_period )
VMM = math.sum( math.abs( low - high[1]), vortex_period )
STR = math.sum( ta.atr(1), vortex_period )
VIP = VMP / STR
VIM = VMM / STR
// Fast and Slow RSI Moving Average computation
rsi = ta.rsi(close, rsi_length)
rsiFMA = ta.sma(rsi, rsi_fma_length)
rsiSMA = ta.sma(rsi, rsi_sma_length)
// Fast and Slow RSI cross detection
co = ta.crossover(rsiFMA, rsiSMA)
cu = ta.crossunder(rsiFMA, rsiSMA)
if (not na(rsiSMA))
if (VIP < VIM)
if( cu )
strategy.entry("trade", strategy.short, comment="Short")
else
strategy.close(id="trade", comment="Close")
if (VIP > VIM)
if( co )
strategy.entry("trade", strategy.long, comment="Long")
else
strategy.close(id="trade", comment="Close")
Estudio de una estrategia de Tradingview
Esta estrategia genera 3 tipos de órdenes dependiendo de la configuración de los indicadores utilizados.
Tendremos que crear una estrategia de Kryllque esperara por una de estas 3 señales para ejecutar la correspondiente operación. En esta estrategia de TradingView, podemos ver que una posición en largo (long) o en corto (short) puede ser seguida por su opuesto sin pasar primero por un cierre. La estrategia deberá ser diseñada correctamente.
Implementación de la estrategia en Kryll
La implementación de esta estrategia en Kryll que será dirigida via Webhooks podría verse así.
Cada bloque webhook proveerá una URL genérica a la estrategia a Mensaje de carga útil específico para cada bloque. Esta información debe ser provista a TradingView a través del código pinescript.
En este punto nuestra estrategia está completa, podemos incluso lanzarla.
Adaptación de la estrategia de TradingView
Ahora pasaremos a modificar tu estrategia de TradingView para permitirle enviar señales a la estrategia de Kryll.
En primer lugar, modifiquemos el comienzo de la estrategia para añadir algunas declaraciones útiles para lo siguiente:
Agreguemos las variables que nos permitirán almacenar y usar el "action_id" de nuestros diferentes bloques de Webhook:
Finalmente, modifiquemos algunas llamadas de entrada/salida/cierre de posición (strategy.entry y strategy.close) para que la estrategia de TradingView pueda construir y enviar el mensaje correcto a Kryll.
Resultado Final
Así es como se ve el script finalizado.
//@version=5
// KRYLL Webhook - Tradingview strategy Exemple
strategy("Demo Strat", overlay=true)
// Kryll Webhook declarations
payload_start="{\"action_id\" : \""
payload_end="\",\"pair\":\""+syminfo.ticker+"\"}"
kryll_action=""
payload=""
id_block_long = "8f94aaf9-0f37-4730-8565-a40c8f151921"
id_block_short = "8f94aaf9-2f30-7430-2364-519a40c8f121"
id_block_close = "8f94aaf9-1a37-3540-5431-c8f121519a40"
// inputs zone
rsi_length = input.int(7, title="RSI Length", minval=2)
rsi_fma_length = input.int(7, title="Fast RSI MA Length", minval=2)
rsi_sma_length = input.int(14, title="Slow RSI MA Length", minval=4)
rsi_neutral = input.int(20, title="RSI neutral zone", minval=2)
vortex_period = input.int(14, title="Vortex Length", minval=2)
// Vortex indicator computation
VMP = math.sum( math.abs( high - low[1]), vortex_period )
VMM = math.sum( math.abs( low - high[1]), vortex_period )
STR = math.sum( ta.atr(1), vortex_period )
VIP = VMP / STR
VIM = VMM / STR
// Fast and Slow RSI Moving Average computation
rsi = ta.rsi(close, rsi_length)
rsiFMA = ta.sma(rsi, rsi_fma_length)
rsiSMA = ta.sma(rsi, rsi_sma_length)
// Fast and Slow RSI cross detection
co = ta.crossover(rsiFMA, rsiSMA)
cu = ta.crossunder(rsiFMA, rsiSMA)
if (not na(rsiSMA))
if (VIP < VIM)
if( cu )
payload := payload_start + id_block_short + payload_end
strategy.entry("trade", strategy.short, comment="Short", alert_message=payload)
else
payload := payload_start + id_block_close + payload_end
strategy.close(id="trade", comment="Close", alert_message=payload)
if (VIP > VIM)
if( co )
payload := payload_start + id_block_long + payload_end
strategy.entry("trade", strategy.long, comment="Long", alert_message=payload)
else
payload := payload_start + id_block_close + payload_end
strategy.close(id="trade", comment="Close", alert_message=payload)
Creando una alerta en Tradingview
Creando una alerta en Tradingview
Una vez que hayas finalizado tu script, establece el par y la unidad de tiempo en la que deseas ejecutar tu estrategia de TradingView. En nuestro caso, estableceremos el par en ETH/USDT y una unidad de tiempo de 2 horas.
Luego ve al "Editor de Pine" para pegar nuestra estrategia y guardarla.
Agreguemos nuestra estrategia a través del botón "Indicadores" para que aparezca en el gráfico.
Con nuestro TradingView configurado, ahora creemos la alerta que nos permitirá enviar mensajes a nuestra estrategia a través de llamadas de webhook.
Para ello, hagamos click en el botón "Crear alerta" y configurémoslo: selecciona nuestra estrategia como condición, nombra nuestra alerta y configura el mensaje:
Siguiente, vamos a establecer la dirección URL del webhook. Encontrarás esta dirección URL en uno de los bloques webhook de tu estrategia de Kryll.
Finalmente, haz click en Crear para validar la creación de tu alerta y podrás encontrar tu alerta en la lista de alertas de TradingView.
Permite que Kryll y TradingView operen por ti
En este punto, si tu alerta está activa en TradingView y tu estrategia se lanza en Kryll, las dos plataformas deben comunicarse.
Para ir más alla ...
Enriquece tus creaciones
El ejemplo descrito en este tutorial sigue siendo simple y podría enriquecerse añadiendo un Take Profit o un Stop Loss, que luego serían nuevos bloques de Webhook que conducirían a otro flujo.
Crea tus propios indicadores
La interfaz de TradingView y Kryll abre un número infinito de posibilidades para los usuarios de Kryll. ¡Ahora puedes crear tus propios indicadores técnicos, mezclarlos, clonar indicadores o estrategias de la comunidad de TradingView y usar todo esto para crear tus propias estrategias de trading automatizado!
Para ayudarte con esta tarea, aquí hay dos plantillas de estrategia que pueden servir como punto de partida para tus próximas operaciones de Spot y Futures.
Aprende más
Hay varios tutoriales disponibles si quieres obtener más información. El equipo de Kryll ha escrito varios otros artículos sobre este tema:
- La guía para el bloque Webhooks
- Controla tus estrategias de Kryll con TradingView
- Webhooks: El cambio de paradigma para los algoritmos de trading de Kryll
¡Gracias por seguir este tutorial! ¡A tus Webhooks!
Sitio Web:https://kryll.io
Twitter:@kryll_es
Twitch:https://www.twitch.tv/kryll_es
Telegram EN:https://t.me/kryll_io
Telegram FR:https://t.me/kryll_fr
Telegram ES:https://t.me/kryll_es
Discord:https://discord.gg/PDcHd8K
Facebook:https://www.facebook.com/kryll.io
Youtube:https://www.youtube.com/c/KryllESLatam
TikTok:https://www.tiktok.com/@kryll.io
Soporte: support@kryll.io