AutoTrendLineAssistant
- Indicadores
-
Semih Erten
TRMentorFx — Otomatikleştirilmiş Forex Çözümleri
2021 yılından bu yana forex piyasalarında aktif olarak çalışmaktayım. Bu süreçte edindiğim bilgi ve deneyimi, tamamen kendi geliştirdiğim strateji modellerine dönüştürdüm. - Versión: 2.0
- Activaciones: 5
# AUTO TREND LINE ASSISTANT v2.0
### MQL5 Market - Descripción del producto / Lógica de funcionamiento / Instrucciones de uso
---
## 🔷 DESCRIPCIÓN DEL PRODUCTO (MQL5 Market Listing)
**Auto Trend Line Assistant v2.0** es un indicador inteligente de MetaTrader 5 que analiza automáticamente la dirección inmediata del mercado y dibuja sólo la línea de tendencia correcta de una manera basada en reglas.
> En una frase:** Sólo soporte oblicuo en un mercado alcista, sólo resistencia oblicua en un mercado bajista - ni más, ni menos.
A diferencia de las herramientas clásicas de líneas de tendencia, este indicador no **llena la pantalla con líneas innecesarias**. Lee la estructura del mercado, decide su dirección y coloca la línea uniforme adecuada para esa dirección con precisión algorítmica.
---
#### ✅ ¿QUÉ HACE?
| Problema | Solución |
|---|---|
| El trazado manual de la línea de tendencia lleva tiempo | Totalmente automático, recalcula en cada actualización de barra.
| El mercado detecta la dirección y dibuja una línea sólo de acuerdo con la regla.
| El algoritmo matemático de pivote confirma la comparación entre las barras izquierda y derecha.
| Las líneas de tendencia débiles se mezclan con las fuertes | Clasifica por puntuación de fuerza (número de contactos + longitud + puntualidad) | Es difícil seguir los contactos
| Difícil seguimiento de contactos y rupturas | Alerta instantánea, notificación push y sistema de alerta por e-mail |
---
### 🎯 CARACTERÍSTICAS BÁSICAS
- **Detección Inteligente de la Dirección del Mercado** - La dirección de la tendencia se determina con la estructura de Mayor Máximo/Mayor Mínimo y Menor Máximo/Menor Mínimo.
- **Selección de línea basada en reglas** - SÓLO soporte oblicuo en una tendencia alcista, SÓLO resistencia oblicua en una tendencia bajista
- **Tolerancia basada en ATR** - Los umbrales de contacto y ruptura se ajustan automáticamente en función de la volatilidad del mercado
- Algoritmo de puntuación de fuerza** - Cada línea se puntúa según el número de contactos, la longitud y la puntuación de puntualidad, destacando las líneas más fuertes.
- **Soporte multilínea** - Se muestran hasta N líneas de tendencia al mismo tiempo (establecidas por parámetro)
- **Alertas en tiempo real** - Notificación instantánea cuando el precio toca y rompe la línea
- Marcas visuales de pivote** - Los pivotes de máximos y mínimos se marcan en el gráfico.
- Panel informativo** - Dirección del mercado, recuento de líneas activas, recuento de pivotes y valor ATR se muestran en directo
- Compatible con todos los símbolos y marcos temporales** - Divisas, criptomonedas, acciones, materias primas, índices
---
### PLATAFORMAS COMPATIBLES
- MetaTrader 5 (Build 2000+)
- Todos los brokers y símbolos
- Todas las zonas horarias (M1 a MN)
---
---
## ⚙️ LÓGICA DE TRABAJO
### Paso 1 - Identificación de Puntos de Pivote
El indicador ejecuta un algoritmo de pivote similar a la lógica clásica del **Fractal de Williams** en cada ciclo de cálculo.
**Pivote Alto: **Pivote Alto
Una barra se marca como **pivote alto** si es mayor que el valor más alto de la barra a la izquierda de `InpLeftBars` y mayor que el valor más alto de la barra a la derecha de `InpRightBars`.
**Pivote Bajo (Pivot Low):**
Con la misma lógica, si una barra es menor que el valor más bajo de todas las barras a su izquierda y derecha, se marca como **pivot low**.
> Ejemplo: `InpLeftBars = 5`, `InpRightBars = 3` → Para que se produzca un pivote máximo, la barra debe ser mayor que las 5 barras a su izquierda y las 3 barras a su derecha.
---
### PASO 2 - Determinar la Dirección del Mercado
La estructura del mercado se lee comparando los últimos puntos pivote encontrados:
```
Mayor Máximo + Mayor Mínimo → TENDENCIA_ALTA
Máximo más bajo + Mínimo más bajo → TREND_DOWN
Estructura mixta → HORIZONTAL (TREND_SIDEWAYS)
```
Además del análisis basado en pivotes, también se utilizan como criterios auxiliares la variación del precio de cierre en el periodo `InpTrendLookback` y el rango medio de barras.
---
### PASO 3 - Selección de Líneas de Tendencia por Regla
Este es el corazón del indicador. La siguiente regla **nunca cambia:**
| Dirección del Mercado | Tipo de Línea Trazada | Pivotes Utilizados
|---|---|---|
| Sólo soporte inclinado. Pivotes inferiores (bajos).
| Sólo resistencia inclinada. Pivotes máximos (altos).
| HORIZONTAL Ambos tipos Ambos grupos de pivotes
** Algoritmo de soporte inclinado en un mercado alcista:**
1. Se analizan todas las combinaciones de pares de pivotes inferiores
2. La pendiente debe ser positiva (estructura Higher Lows)
3. Se comprueba la distancia mínima entre dos pivotes
4. Se escanean todas las barras a lo largo de la línea - el precio no debe ir por debajo de la línea fuera de tolerancia
5. Se debe asegurar un número mínimo de toques (`InpMinTouches`)
6. Se calcula y clasifica la puntuación de potencia
**Algoritmo de Resistencia Pendiente en un Mercado Decreciente
1. Se analizan todas las combinaciones de pares de pivotes máximos
2. La pendiente debe ser negativa (estructura de máximos inferiores)
3. El precio a lo largo de la línea no debe superar la tolerancia
4. Se aplican los criterios de contacto mínimo y puntuación de potencia
---
### PASO 4 - Cálculo de la puntuación de potencia
A cada línea de tendencia candidata se le asigna una **puntuación de potencia** entre 0-100:
```
Potencia = Puntuación de contacto (40%) + Puntuación de longitud (30%) + Puntuación de puntualidad (30%)
Puntuación de contacto = min(número_contacto / 5, 1.0) × 40
Puntuación de Longitud = min(longitud_línea / 100 bar, 1,0) × 30
Recency = max(0, (50 - distancia desde last_pivot) / 50) × 30
```
Las líneas con mayor puntuación se dibujan en el gráfico. El parámetro `InpMaxTrendLines` determina cuántas líneas se mostrarán.
---
### PASO 5 - Sistema de Tolerancia Basado en ATR
Usando **ATR (Average True Range)** en vez de un valor fijo de pip asegura que el indicador trabaja consistentemente a través de diferentes instrumentos y en diferentes ambientes de volatilidad.
```
Tolerancia de toque = ATR(14) × InpTouchTolerance
Tolerancia de ruptura = ATR(14) × InpBreakTolerance
```
- La tolerancia se reduce durante los periodos de baja volatilidad → más sensible
- La tolerancia se amplía durante los periodos de alta volatilidad → filtra las rupturas espurias
---
### PASO 6 - Sistema de Alerta
**Alerta de contacto:**
Se activa cuando el precio (Máximo o Mínimo) de la barra actual entra en la línea de tendencia dentro de la tolerancia de contacto.
**Alerta de ruptura
Se activa si la barra actual cierra en el lado equivocado de la línea excediendo la tolerancia de ruptura mientras que la barra anterior cerró en el lado derecho de la línea. La línea de ruptura se desactiva automáticamente.
Canales de alerta: Ventana `Alert()` - Notificación Push - Email
---
---
## 📋 INSTRUCCIONES DE USO
### Instalación
1. Descargar el archivo `.ex5
2. Abra MetaTrader 5
3. **Archivo → Abrir carpeta de datos** → Copiar el archivo en la carpeta `MQL5/Indicators/`
4. Reinicie MetaTrader 5 o haga clic derecho → **Refrescar** en el panel **Navegador**.
5. Arrastrar y soltar en el gráfico deseado
---
### Configuración de parámetros
#### 🔧 Configuración de la detección de tendencias
| Parámetro | Predeterminado | Descripción | Parámetro | Predeterminado | Descripción | Parámetro | Predeterminado | Descripción
|---|---|---|
| `InpLeftBars` | 5 | Cuántas barras mirar a la izquierda para la detección de pivotes. Si disminuye encontrará más pivotes, si aumenta encontrará menos pivotes pero más fuertes.
| `InpRightBars` | 3 | Cuántas barras a la derecha para la detección de pivotes. Un valor bajo da una señal más rápida
| `InpTrendLookback` | 50 | Número de barras utilizadas en el cálculo de la dirección del mercado.
| `InpMinTouches` | 2 | Número mínimo de toques para que una línea de tendencia se considere válida. Aumente a 3 y sólo se mostrarán las líneas muy fuertes.
| `InpTouchTolerance` | 0.3 | Distancia aceptada para el contacto (multiplicador ATR). Si lo aumentas, se aceptarán más contactos "anchos" | `InpBreakTolerance` | 0.3
| `InpBreakTolerance` | 0.5 | Distancia necesaria para la rotura (multiplicador ATR). Si lo amplía, obtendrá menos avisos de rotura |
| `InpMaxTrendLines` | 3 | Número máximo de líneas de tendencia a mostrar a la vez |
#### 🎨 Ajustes visuales
| Parámetro por defecto Descripción
|---|---|---|
| Color de la línea de soporte oblicua Azul Dodger
| Color de la línea de resistencia oblicua.
| Grosor de la línea (1-5)
| Mostrar/Ocultar puntos pivote en el gráfico
| `InpShowInfo` | true | Mostrar/ocultar el panel de información en la esquina superior izquierda | | `InpShowPivots` | true | Mostrar/ocultar los puntos de pivote en el gráfico
#### 🔔 Configuración de alertas
| Parámetro por defecto Descripción
|---|---|---|
| Alerta cuando el precio toca la línea de tendencia.
| `InpAlertBreak` | true | Alerta cuando la línea de tendencia se rompe
| `InpPushNotify` | false | Enviar notificación push a la aplicación móvil de MetaTrader
| `InpEmailNotify` | false | Enviar notificación a la dirección de correo electrónico en la configuración de MT5
---
### Configuración recomendada (según el escenario de uso)
#### 📈 Scalping (M1-M5)
```
InpLeftBars = 3
InpRightBars = 2
InpTrendLookback = 30
InpMinTouch = 2
InpTouchTolerance = 0.4
InpMaxTrendLines = 2
```
#### 📊 Swing Trading (H1-H4)
```
InpLeftBars = 5
InpRightBars = 3
InpTrendLookback = 50
InpMinTouches = 2
InpTouchTolerance = 0.3
InpMaxTrendLines = 3
```
#### 📉 Negociación de posiciones (D1-W1)
```
InpLeftBars = 8
InpRightBars = 5
InpTrendLookback = 100
InpMinTouches = 3
InpTouchTolerance = 0.25
InpMaxTrendLines = 2
```
---
### Indicadores en el Gráfico
| Elemento Visual Significado
|---|---|
| Flecha azul hacia arriba: punto de pivote inferior detectado.
| Flecha roja hacia abajo Detectado punto de pivote máximo
| Barra azul Soporte activo (en tendencia alcista)
| Barra roja | Resistencia de barra activa (en tendencia bajista)
| Etiqueta de línea Tipo de línea + número de contactos
| Panel superior derecho Dirección del mercado, número de líneas activas, ATR
---
### Cómo funcionan las alertas
**Ejemplo de Alerta de Contacto:**
```
Soporte oblicuo ¡CONTACTO! | Precio: 1.08542 | Line: 1.08510 | Contacto #3
```
Este aviso indica que el precio se está acercando a la línea de soporte.
→ En una tendencia alcista, esto puede ser una señal de **oportunidad de compra**.
**Ejemplo de advertencia de ruptura
```
Soporte Oblicuo ¡Rompido! | Precio: 1.08201 | Línea: 1.08490
```
Este aviso indica que se ha roto la línea de soporte.
→ **Señal de cambio de tendencia** u **oportunidad de venta**.
---
### Errores comunes y soluciones
| Error Causa Solución
|---|---|---|
| Línea no visible | Pivote no encontrado | Valores inferiores de `InpLeftBars` e `InpRightBars` | Demasiadas líneas | Pivote no encontrado
| Demasiadas líneas | `InpMinTouches` bajo | Incrementar a 3 |
| Muestra una dirección de tendencia errónea | `InpTrendLookback` es demasiado corto | Aumentar el valor | Demasiados avisos | Demasiadas líneas
| Demasiados avisos | Las tolerancias son bajas | Aumentar valor de `InpTouchTolerance` |
| El aviso de rotura se dispara demasiado pronto | `InpBreakTolerance` es bajo | Aumentar a entre 0.7-1.0 |
---
### ⚠️ Notas importantes
- Este indicador es una **herramienta de análisis**, no toma una decisión de compra/venta por sí mismo. Utilícelo en combinación con la acción del precio, el volumen y otros análisis.
- Las alertas pueden activarse **con retraso**; la evaluación se realiza al cierre de la barra.
- MetaQuotes ID debe ser definido en su cuenta de MetaTrader 5 para la notificación push.
- Para la notificación por correo electrónico, la configuración SMTP debe establecerse en **Herramientas → Opciones → Correo electrónico**.
- El indicador puede ser probado utilizando datos históricos de barras; sin embargo, obsérvelo en el mercado en vivo para un rendimiento en tiempo real.
---
*Auto Trend Line Assistant v2.0 - Análisis Algorítmico de Tendencia, Regla Simple, Resultado Potente.

