Construir una estrategia Pine sin programar (TradingView Basic)

Diseña entradas, filtros y riesgo en Strategy Builder (opcionalmente con Tactix Studio o Guide), exporta strategy() v6 y adjúntalo en Pine Editor. Límites honestos de Basic y evidencia académica sobre reglas.

📖 4 min read

📝 715 words

🏷️ Pine Script and TradingView

Compartir este artículo:

En qué se convierte cada campo

Cuatro pasos del formulario: señal de entrada, filtro de mercado, riesgo y el archivo generado.01020304Señal de entradaFiltro de mercadoRiesgoArchivo generado.mq5 o .pineuna plataforma por formulario
En qué se convierte el formulario. Cada plataforma tiene su propio formulario, así que una estrategia produce el archivo de esa plataforma, no los dos.

Un constructor sin código es un formulario que escribe Pine. Saber en qué se convierte cada campo es lo que te permite leer tu propia exportación y confirmar que coincide con lo que pediste.

Lo que fijas en el formularioLo que aparece en el Pine
el indicador y su periodoun input.int para el periodo, más una llamada ta.* en ámbito global
un umbral («RSI por debajo de 30»)un input.float y una comparación en la condición de entrada
una segunda condiciónlo mismo, unido con and u or
un filtro de sesiónuna comparación de hora que condiciona la entrada
un stop y un objetivostrategy.exit() con stop / limit, o loss / profit
comisión y slippagecommission_type, commission_value, slippage en la declaración
capital inicial y tamañoinitial_capital, default_qty_type, default_qty_value

Por qué la llamada al indicador debe estar en ámbito global

Es la única propiedad estructural que merece comprobar tú mismo, porque es invisible en el comportamiento hasta que está mal.

pine
// correcto — se ejecuta en cada barra, así que su historial es continuo
rsiVal = ta.rsi(close, rsiLen)
if rsiVal < 30 and close > maVal
    strategy.entry("Long", strategy.long)
pine
// incorrecto — v6 hace cortocircuito con and, así que ta.rsi() se omite en las
// barras donde la primera condición es falsa, y su historial se rompe
if close > maVal and ta.rsi(close, rsiLen) < 30
    strategy.entry("Long", strategy.long)

En v6 los operadores and y or evalúan de forma perezosa [6], así que una llamada a la derecha de una condición falsa no se ejecuta en esa barra. Los indicadores mantienen estado interno entre barras, así que uno que no se ejecutó en cada barra ya no tiene el historial que necesita — y nada lo informa.

Así que: busca and y or en tu exportación, y comprueba que no haya un ta. a la derecha de ninguno. Es una comprobación de diez segundos y es lo más valioso que puedes hacerle a un archivo generado.

La anatomía de una exportación generada

Los archivos generados siguen un orden fijo, lo que los hace rápidos de recorrer:

  1. //@version=6 — la línea de versión
  2. strategy(...)la declaración, donde se deciden tus resultados
  3. un bloque de comentarios con la temporalidad prevista
  4. las declaraciones input.* — cada control que mostrará el diálogo de ajustes
  5. la sección de series — llamadas ta.* en ámbito global
  6. longCond / shortCond — las condiciones de entrada
  7. las llamadas strategy.entry()
  8. las salidas — strategy.exit() y los límites de riesgo
  9. las llamadas plot()

El bloque 2 es el primero que hay que leer y el que la gente se salta. Los bloques 4 y 6 juntos son donde verificas que cada control alimenta de verdad una comparación: si un umbral aparece como número suelto en el bloque 6 mientras el bloque 4 declara un input para él, ese control no hace nada.

La comprobación que cierra el círculo

Lleva un input a un extremo en el diálogo de ajustes y confirma que el número de operaciones cambia. Un input declarado en el bloque 4 pero nunca referenciado en el bloque 6 genera un control que se mueve y no tiene efecto, y no hay forma de verlo desde la interfaz. El detalle de qué más verificar está en el editor frente al constructor.



Tactix AI — Studio vs Guide

Tactix AI es la marca del asistente de AlfaTactix (abrir Tactix AI).

  • Tactix Studio convierte una descripción de estrategia en una frase en un borrador de Timeframe, Señales, Filtros y Riesgo en el Strategy Builder visual. Revisas y editas cada campo antes de que Code Generator escriba MQL5 o Pine Script.
  • Tactix Guide explica el paso en el que estás — qué rellenar, qué significa un control o cómo formular una regla — sin volcar código sin probar.

Es automatización form-first: el LLM no sustituye a Code Generator, y conservas límites de plan y validación en tiempo real.

Preguntas frecuentes

Sí. El Strategy Builder exporta un archivo Pine v6 con strategy(). Strategies [1]. Concepto: qué es una estrategia. Adjunto: Pine Editor.

Es estrategia. Tipos de script [2]. No lo conviertas en indicator() si quieres el Probador.

Misma idea visual, otro runtime. MT5: EA sin código. Pine: First steps [3].

No. Park e Irwin (2007) (DOI [4]). Brock et al. (1992) (DOI [5]).

Un timeframe, máximo dos indicadores, cuatro filtros, solo AND/OR. Sin noticias, MTF, SuperTrend, Ichimoku ni ADX en este plan. Features · demo.

Code Generator → TradingView. Hub: Academia Pine.

Referencias

  1. TradingView. Strategies. https://www.tradingview.com/pine-script-docs/concepts/strategies
  2. TradingView. Script structure. https://www.tradingview.com/pine-script-docs/language/script-structure
  3. TradingView. First steps. https://www.tradingview.com/pine-script-docs/primer/first-steps
  4. Park, C.-H., & Irwin, S. H. (2007), Journal of Economic Surveys. What do we know about the profitability of technical analysis?. https://doi.org/10.1111/j.1467-6419.2007.00519.x
  5. Brock, W., Lakonishok, J., & LeBaron, B. (1992), Journal of Finance. Simple technical trading rules and the stochastic properties of stock returns. https://doi.org/10.1111/j.1540-6261.1992.tb04681.x
  6. TradingView. Migration guide — to Pine Script® version 6. https://www.tradingview.com/pine-script-docs/migration-guides/to-pine-version-6