Saltar al contenido

Creando indicadores en TradingView con ChatGPT

Creando indicadores de TradingView con ChatGPT

Tema muy interesante el de esta semana.

En noviembre del 2022, la organización OpenAI, fundada entre otras personas por Elon Musk, lanzó el chat de inteligencia artificial más avanzado del momento.

Un chat textual que hace de todo. Y lo mejor es que lo hace muy bien.

Podemos pedirle, por ejemplo, que cree nuestro currículum vitae, un tweet que genere interacción social, un formulario web de recogida de datos, un cuento infantil y, en definitiva, cualquier cosa que podamos imaginar.

Pero, ¿puede ayudarnos a crear indicadores en TradingView?

¡Veámoslo en este artículo!

Crear una cuenta en ChatGPT

Lo primero que vamos a necesitar es una cuenta en la plataforma ChatGPT de OpenAI.

Nos dirigimos a su sitio web en https://chat.openai.com/auth/login y nos registramos.

Una vez dentro, observamos que el entorno es realmente simple, tan simple como lo fue Google en su momento: Una caja de texto para escribir nuestras órdenes y una pantalla para leer la información.

Página de inicio de ChatGPT

Ahora vamos a crear nuestro primer indicador.

Creando un indicador con 6 medias móviles

Vamos a escribir en el chat la siguiente orden:

Crea un indicador en TradingView que pinte 6 medias móviles simples, de 10, 20, 30, 50, 100 y 200 periodos. Cada media de distinto color. Utiliza los colores del arcoíris.

Esto es lo que el chat nos devuelve:

// Variables

var sma10 = sma(close, 10);
var sma20 = sma(close, 20);
var sma30 = sma(close, 30);
var sma50 = sma(close, 50);
var sma100 = sma(close, 100);
var sma200 = sma(close, 200);

// Colores del arcoiris

var rainbow = [«#FF0000», «#FF7F00», «#FFFF00», «#00FF00», «#0000FF», «#4B0082», «#9400D3»];

// Gráfico

plot(sma10, color = rainbow[0]);
plot(sma20, color = rainbow[1]);
plot(sma30, color = rainbow[2]);
plot(sma50, color = rainbow[3]);
plot(sma100, color = rainbow[4]);
plot(sma200, color = rainbow[5]);

Lo primero que observamos es que el código no contiene las funciones de Pinescript última versión (v5).

Por si no lo sabías, TradingView usa un lenguaje de programación propio llamado Pinescript para permitir la creación de indicadores y estrategias.

Además, contiene algunos errores. Los arrays no se inicializan de esa forma y los códigos de color deben ir sin comillas. Puede ser que no conozca toda la sintaxis de Pinescript y trate deducir código.

Para solucionar esto, vamos a repetirle la orden añadiendo algunas restricciones:

Modifica el código anterior para que no contenga arrays, ni variables para los colores y no entrecomilles los colores.

Este es el resultado:

// Variables

sma10 = sma(close, 10)
sma20 = sma(close, 20)
sma30 = sma(close, 30)
sma50 = sma(close, 50)
sma100 = sma(close, 100)
sma200 = sma(close, 200)

// Gráfico

plot(sma10, color = #FF0000)
plot(sma20, color = #FF7F00)
plot(sma30, color = #FFFF00)
plot(sma50, color = #00FF00)
plot(sma100, color = #0000FF)
plot(sma200, color = #4B0082)

Ahora sí.

Copiamos el código generado y lo pegamos en la pestaña «Pine Editor» que se encuentra justo debajo del gráfico de velas de TradingView.

Pero falta una última cosa. Debemos informar al compilador que lo que hemos puesto ahí es un indicador y que queremos visualizarlo en la ventana del gráfico de velas. Para ello añadimos al principio de todo la siguiente instrucción:

study(«6MA», overlay = true)

Finalmente, clicamos en el botón «Añadir al gráfico» y nuestro nuevo indicador aparecerá en pantalla con esta pinta:

Ejemplo creación indicador TradingView de 6 medias móviles

Como verás hemos tenido que realizar algunos arreglos para obtener el código definitivo, pero digamos que, prácticamente, ChatGPT ha realizado el trabajo por si mismo.

Creando un indicador de cruce de medias

Hagamos algo un poco más complejo.

Pidámosle un indicador para detectar un cruce de medias:

Crea un indicador en Pinescript que dibuje una línea vertical verde totalmente extendida cuando la media móvil simple de 10 cruce de abajo a arriba, la media móvil simple de 50. Y que pinte una línea vertical roja totalmente extendida cuando la media móvil simple de 10 cruce de arriba a abajo, la media móvil simple de 50.

El resultado:

// Variables

sma10 = sma(close, 10)
sma50 = sma(close, 50)

// Gráfico

plot(sma10, color = #0000FF)
plot(sma50, color = #FF0000)

// Líneas

verticalLineGreen = line.new(0, low, 0, high, xloc = xloc.bar_index, extend = extend.both, color = #00FF00)
verticalLineRed = line.new(0, low, 0, high, xloc = xloc.bar_index, extend = extend.both, color = #FF0000)

// Condiciones

if (sma10 > sma50)
verticalLineGreen
else
verticalLineRed

Esta vez la cosa no ha ido bien. No lo ha entendido. Le pedíamos detectar un cruce y lo que nos ofrece es un indicador que pinta líneas verdes cuando la media móvil de 10 está por encima de la de 50, y rojas en el caso contrario.

Además, asigna funciones de línea a variables, dando error de compilación. Aunque esto tiene fácil arreglo. Eliminamos las variables y usamos directamente line.new().

Este es el resultado:

Indicador cruce de medias con ChatGPT

Tras varios intentos no consigo que genere un código válido y me doy por vencido.

Creando un indicador de detección de tendencias

Tercer y último ejemplo. Ahora vamos a ordenarle que nos genere un indicador para detectar fácilmente tendencias alcistas en el gráfico usando el indicador rsi:

Crea un indicador en TradingView que sombree el fondo del gráfico de color gris cuando el rsi de 14 periodos esté por encima de 50.

Este es el código generado:

// Variables

rsi = rsi(close, 14)

// Gráfico

plot(rsi, color = #0000FF)

// Fondo

bgcolor(rsi > 50 ? #909090: na)

Y este el resultado:

Crear indicador de tendencias con ChatGPT

¡Este lo ha hecho bien a la primera! Ya tenemos listo nuestro nuevo indicador que nos marca en gris las tendencias alcistas.

Conclusiones

Mmmm,… estaba pensando, ¿y si le pido a ChatGPT qué escriba las conclusiones de este artículo? ¡Vamos a probar!

Escribe unas conclusiones diciendo que, a día de hoy, ChatGPT todavía tiene que mejorar en la tarea de crear indicadores de TradingView, pero que a modo de guía para crear código Pinescript es de mucha ayuda.

En conclusión, ChatGPT aún tiene un largo camino por recorrer para poder crear indicadores de TradingView de manera eficiente y precisa. Sin embargo, como guía para crear código Pinescript, puede ser de mucha ayuda para aquellos que estén empezando a trabajar con esta herramienta. Aunque no puede reemplazar a un conocimiento profundo y experiencia en el uso de Pinescript, puede proporcionar una buena base y orientación inicial para aquellos que estén empezando a explorar esta área. Es importante recordar siempre hacer una investigación adicional y utilizar múltiples fuentes de información antes de confiar completamente en cualquier código generado por ChatGPT.

Espero que este artículo te haya sido de mucha ayuda y nos leemos en el próximo.

Hasta entonces, ¡que tengas un feliz trading!

2 comentarios en «Creando indicadores en TradingView con ChatGPT»

  1. ERES UN GRANDEEE!!!
    Sinceramente, llevo varias semanas pensando en esta convinación y me has leído la mente!! Ahora sería interesante aplicarlo en IB.
    Saludos
    Alberto

  2. ¡Excelente artículo sobre cómo crear indicadores en TradingView con ChatGPT! Me encantó cómo explicaron paso a paso todo el proceso, desde la instalación hasta la creación de indicadores personalizados. Es realmente útil y fácil de seguir, ¡gracias por compartir este conocimiento! Saludos, GPTOnline.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *