Grid MACD Signal EA
- Asesores Expertos
-
AL MOOSAWI ABDULLAH JAFFER BAQER
To trade successfully we need to go through the proven path that others had gone and reached!
Here are 17 quotes from such successful investors:
1- Limit your size in any position so that fear does not become the prevailing instinct guiding your judgment.
Joe Vidich - Versión: 3.15
- Activaciones: 5
Evalúalo basándote en el historial real de precios antes de pagar nada: abre el EA «Grid MACD Signal» en el Probador de estrategias de MetaTrader 5, marca la casilla del modo visual y observa cómo la línea principal del MACD cruza su línea de señal más allá del cero, mientras la rejilla espera a que se cierre ese cruce antes de establecer su primer nivel.
OPERA EN EL MOMENTO EN QUE EL IMPULSO LO CONFIRME.
El EA «Grid MACD Signal» permite que el clásico oscilador de impulso de Gerald Appel indique cuándo un movimiento prolongado ha comenzado a revertirse, y luego traspasa la posición a un completo motor de gestión de rejilla que va reduciendo progresivamente la exposición más antigua, un cierre y una porción cada vez.
La versión resumida, para traders ocupados
• Un ciclo comienza únicamente cuando la línea principal del MACD cruza su línea de señal en una vela cerrada: al alza mientras el MACD sigue por debajo de cero para una COMPRA, a la baja mientras sigue por encima de cero para una VENTA. Solo barras cerradas, por lo que el historial nunca se repinta.
• El nuevo Histogram Momentum Guard rechaza los cruces débiles y planos. El histograma debe oscilar con suficiente intensidad en comparación con su propia media reciente, y la línea principal ya debe estar inclinada en la dirección de la operación.
• Las ganancias se recogen por grupos formados por las órdenes más antiguas y las más recientes, y una orden antigua de gran volumen se retira en tramos parciales en lugar de dejarla a la espera de un retorno completo.
• Sin stop loss ni cierre forzado de todas las posiciones. Cuando se alcanza un límite, se rechazan los nuevos niveles mientras se sigue gestionando el libro de órdenes existente.
• Funciona con cuentas de cobertura y de compensación, y cada límite es un parámetro visible que puedes modificar.
EMPIEZA AQUÍ
Primer gráfico: EURUSD H1 o XAUUSD D1. Primer lote: el valor por defecto de 0,01 con la escalera aditiva. Primer modo: Solo escaneo, de modo que el panel muestra todos los planes que realizaría antes de enviar una orden; pulsa el botón «Armed» cuando te guste lo que ves. Ejecuta el Probador de Estrategias con los datos de tu propio bróker antes de pasar a operaciones reales, ya que los spreads, los swaps y las comisiones varían de un bróker a otro. Con un saldo reducido, mantén el lote por defecto y deja que el probador muestre hasta qué punto puede crecer la cartera con tu par de divisas.
¿Por qué el MACD y por qué es importante la línea cero?
El MACD mide la diferencia entre una media móvil exponencial rápida y otra lenta, y luego suaviza esa diferencia para convertirla en una línea de señal. La diferencia entre ambas es el histograma. Cuando la línea principal vuelve a subir por encima de la línea de señal, el impulso bajista está perdiendo fuerza; cuando vuelve a caer por debajo, el impulso alcista se está desvaneciendo. Por sí sola, una cruz se produce con demasiada frecuencia como para resultar útil. Este EA añade la regla que muchos operadores experimentados aplican a ojo: una cruz de COMPRA solo cuenta mientras el MACD siga por debajo de cero, donde la venta ya se ha prolongado, y una cruz de VENTA solo cuenta mientras el MACD siga por encima de cero, donde la compra ya se ha prolongado. Un cruce en el lado equivocado del cero suele ser una persecución tardía, por lo que se ignora. Eso hace que el inicio de cada ciclo sea un giro desde un extremo, que es exactamente donde un sistema de rejilla prefiere comenzar.
Novedades de esta versión
El «Histogram Momentum Guard» es una mejora propia de este EA. Cualquiera que haya observado el MACD en un mercado tranquilo conoce el problema: las dos líneas se superponen y se cruzan una y otra vez con movimientos minúsculos que no significan nada. El «guard» mide cuánto se ha desplazado el histograma en la barra de cruce y lo compara con el tamaño medio del histograma en una ventana de barras que elijas. Se rechaza un cruce provocado por una oscilación mínima; se acepta un cruce respaldado por un impulso real. También comprueba que la línea principal del MACD se mueva en la dirección de la operación en esa barra. Establece la relación en 0 para desactivar el «guard». El panel muestra una fila «HIST GUARD» con el histograma en tiempo real, la oscilación como múltiplo de su media y si el filtro indica «OPEN» (abrir) o «WEAK» (mantener débil). El MACD también se puede trazar en su propia subventana en el gráfico en tiempo real. Se incluye la seguridad del marco temporal a nivel de margen, que está desactivada por defecto.
Cómo se desarrolla un ciclo
1. La lectura. En cada barra cerrada, el EA lee la línea principal del MACD y la línea de señal del indicador MACD integrado en MetaTrader 5. Nunca se utiliza la vela en formación, por lo que lo que ves en el historial es lo que el EA vio en ese momento.
2. El cruce. Se considera una orden de COMPRA cuando la línea principal cierra por encima de la línea de señal tras haberse situado en ella o por debajo en la barra anterior; una orden de VENTA es lo contrario.
3. La regla de la línea cero. Por defecto, un cruce de COMPRA debe producirse por debajo de cero y un cruce de VENTA por encima de cero. Establece la regla en 0 y se tendrá en cuenta cualquier cruce.
4. La comprobación de la brecha. Si deseas un cruce más sólido, exige una distancia mínima en puntos entre la línea principal y la línea de señal en la barra del cruce.
5. El filtro de impulso del histograma. La oscilación del histograma en la barra de cruce debe alcanzar el múltiplo elegido de su tamaño medio, con la línea principal inclinada en la dirección correcta.
6. El filtro de tendencia opcional. Una media móvil exponencial (EMA) puede confirmar la tendencia: opera solo a favor de ella, opera solo en contra de ella como estrategia de «fade», o desactívala.
7. El ritmo. Un espacio tranquilo de barras entre las señales aceptadas evita que una sesión volátil inicie un ciclo tras otro, y una señal sigue siendo válida durante unas cuantas barras si no se puede establecer un nivel de inmediato.
8. La escalera. Los niveles se espacian por puntos fijos o por el ATR, con un mínimo, un máximo y la opción de congelar la distancia durante todo el ciclo. Las cuadrículas de COMPRA y VENTA pueden funcionar en paralelo o solo en una dirección.
9. La cosecha. El «closer» busca grupos de las órdenes más antiguas y más recientes y cierra un grupo tan pronto como su resultado combinado, tras deducir el swap y la comisión, supere tu objetivo. Cuando la orden más antigua sigue siendo demasiado pesada, solo se cierra una parte de ella, pagada con los beneficios ya obtenidos.
10. Los controles de seguridad. Un filtro de reapertura bloquea cualquier cierre que reabriría el mismo nivel de inmediato. Cada tramo se compara con el historial de operaciones; los tramos fallidos pasan a una cola de reintentos, y el plan se descarta si el libro de órdenes cambia entre el escaneo y el envío.
11. El ciclo de cobertura opcional. Desactivado por defecto. Cuando se activa, mantiene un par equilibrado en un símbolo que elijas y lo retira en partes iguales, financiadas mediante un pequeño recargo sobre los cierres que la rejilla ya está realizando.
El panel
El panel se sitúa a la izquierda del gráfico y mantiene despejados el lado derecho y la escala de precios. Muestra el símbolo y el número mágico, un indicador de estado (ARMADO, SOLO ESCANEO o EN PAUSA), el modo de rejilla, el paso de lotes, el espaciado, las ganancias acumuladas, el libro de órdenes en lotes con su resultado neto, el plan de cierre para cada lado con su propio botón de cierre y la lista de órdenes. La fila MACD PULSE muestra los valores principal y de señal en puntos, si el MACD está por encima o por debajo de cero, y cuántas barras han transcurrido desde el último cruce. La fila «HIST GUARD» muestra el histograma, el ratio de impulso, el estado de protección y el filtro de tendencia. Los botones permiten alternar entre «Armado» y «Solo escaneo», «Pausa» y «Reanudar», así como gestionar las marcas del gráfico y el corte de datos. La tarjeta «Hedge Vault» está acoplada directamente debajo del panel principal y la sigue cuando la arrastras o la minimizas. Las flechas marcan las velas en las que se activó un ciclo. El panel se adapta al tamaño de la pantalla y no dibuja nada en un backtest no visual, por lo que la optimización sigue siendo rápida.
Protección que tú controlas
Sin stop loss ni cierre forzado de todas las posiciones. Al alcanzarse un límite, se detienen los nuevos niveles; nunca se liquida la cartera en un mal momento.
Antes de cada orden, la comprobación de fondos plantea una única pregunta sencilla: ¿hay margen libre suficiente, con un colchón de seguridad, para esta orden?
Los límites en los niveles por cuadrícula, las órdenes por lado y los lotes por orden mantienen la escalera dentro de unos límites, y la escalera de lotes deja de crecer al alcanzar el límite de nivel.
En las cuentas de compensación, el margen de la posición fusionada se limita a un porcentaje del capital.
La seguridad opcional del nivel de margen en el marco temporal traslada la señal y el espaciado a un marco temporal superior cuando el nivel de margen cae a los niveles elegidos, y vuelve a su posición original solo después de que el margen se recupere más allá de un colchón de seguridad. Desactivado por defecto.
Cada copia se aísla por símbolo y números mágicos, por lo que los gráficos nunca interfieren entre sí en cuanto a órdenes o estado guardado.
El modo «solo escaneo» muestra todas las decisiones sin enviar ninguna orden.
Para quién es y para quién no es
Es adecuado para operadores que buscan una razón clara y visible para cada nuevo ciclo, que prefieren muchos cierres pequeños a un único objetivo lejano y que están dispuestos a ajustar el tamaño del lote para su propia cuenta. No es adecuado para quienes necesitan un stop loss en cada orden, una cifra mensual garantizada o un robot del tipo «configurar y olvidar» que ejecute lotes grandes con un saldo muy reducido.
Respuestas rápidas
¿Se repintan las señales? No. Las señales proceden únicamente de barras cerradas.
¿Puedo utilizarlo con el oro o los índices? Sí. Funciona con cualquier símbolo y marco temporal; el espaciado ATR adapta la distancia entre los niveles al símbolo.
¿Puedo ejecutarlo en varios gráficos? Sí. Asigna a cada copia sus propios números mágicos y funcionarán de forma totalmente independiente.
¿Puedo hacer que opere con más o menos frecuencia? Sí. Reduce el valor de «SignalBarsDelay» o el ratio de impulso para obtener más ciclos; auméntalos, o activa el filtro de tendencia, para obtener menos.
Explicación de todos los ajustes
Grid: cómo se abren los niveles
TradeMode: rejilla dual por defecto (COMPRA y VENTA una al lado de la otra) o solo en una dirección.
GridSpacePoints: distancia fija entre niveles en puntos cuando el espaciado ATR está desactivado (25).
GridSpaceMultiplier: 1,0 mantiene los niveles espaciados de manera uniforme; un valor más alto separa más los niveles más profundos.
MaxGridLevels: el número máximo de niveles que puede contener una cuadrícula (1000).
UpDirectionIsBuy: determina a qué lado pertenece un movimiento alcista.
EAMagicNumber: el ID que aparece en las órdenes de rejilla de este EA (9754250).
GridOrderComment: el comentario de cada orden de la rejilla (GMAC).
OneOrderPerBar: no más de un nuevo nivel por barra.
Escalera de lotes
InitialLotSize: volumen del primer nivel (0,01).
LotSizingMode: aditivo por defecto, o multiplicativo.
LotMultiplier: en modo multiplicativo, cada nivel es el lote anterior multiplicado por este valor (1,25).
LotAddStep: en modo aditivo, el volumen añadido en cada nivel (0,01; 0 significa el lote inicial).
MaxOrderVolume: el lote máximo que puede utilizar una sola orden (1,0).
UseAutoLot: ajusta el lote inicial en función del saldo (desactivado).
AutoLotBaseBalance: el saldo que se corresponde con el lote inicial (1000).
AutoLotAllowDecrease: permite que el lote automático sea inferior al lote inicial (desactivado).
Espaciado ATR
GridSpacingMode: ATR por defecto o puntos fijos.
ATRTimeframe: el marco temporal en el que se mide la volatilidad (gráfico actual).
ATRPeriod: duración del ATR (14).
ATRSpacingFactor: el espaciado es igual al ATR multiplicado por este valor (1,0).
ATRBarShift: si se establece en 1, se utiliza la última barra cerrada.
ATRMinSpacingPts: el espaciado mínimo permitido en puntos (50; 0 significa que no hay espaciado).
ATRMaxSpacingPts: el espaciado máximo permitido en puntos (5000; 0 significa que no hay espaciado).
ATRFreezeOnStart: mantiene un único espaciado durante todo el ciclo (desactivado).
Objetivo de beneficio
DesiredProfitPerClosure: el objetivo base en la divisa de la cuenta (2,0).
ProfitMultiplier: escala el objetivo final entre 1,00 y 2,00.
ProfitTargetMode: escalado por defecto, por lo que un libro de órdenes más amplio y profundo debe generar un resultado mayor.
ProfitVolumePower: indica en qué medida el volumen de cierre eleva el objetivo (1,0; 0 lo desactiva).
ProfitDepthBonus: objetivo adicional por cada nivel abierto adicional (0,10).
ProfitMaxMultiple: el límite máximo del objetivo escalado como múltiplo del objetivo base (50).
ProfitMaxReachFraction: mantiene el objetivo dentro de una fracción de un paso de la cuadrícula para que siga siendo alcanzable (0,50).
Escáner de fragmentos
UseMultiLegScan: comprueba combinaciones de varias órdenes antes que el par simple (activado).
MaxOldestLegs: el número máximo de órdenes más antiguas permitidas en un cierre (3).
MaxNewestLegs: el número máximo de órdenes más recientes permitidas en un cierre (6).
ScanPriority: cómo se clasifican los grupos que cumplen los requisitos; por defecto, primero las órdenes más numerosas.
NeverBankLessThanPair: un grupo también debe superar el objetivo del par simple (activado).
RequireCloseVolumeExceedsTarget: el volumen más reciente debe superar al más antiguo (activado).
MinCloseVolumeRatio: ratio mínimo entre el volumen de cierre y el volumen objetivo (1,5).
División del objetivo: cierres parciales
EnableTargetSlicing: cierra una parte de la orden más antigua cuando aún no se puede liquidar todo el lote (activado).
FragProfitWeightPower: cómo se pondera el beneficio por lote de cierre (1,5).
FragMinSlicePercent: la porción más pequeña expresada como porcentaje de la orden objetivo (20).
FragAllowMultiCloser: permite que varias órdenes más recientes sumen sus beneficios para pagar una porción (activado).
FragPreferFullClosure: un cierre completo tiene prioridad sobre una porción siempre que ambos cumplan los requisitos (activado).
Protección contra reapertura
ReopenGuard: bloquea los cierres que reabrirían inmediatamente un nivel (basado en pasos).
ReopenGuardCushion: la distancia de seguridad expresada como fracción de un paso de la cuadrícula (0,90).
Protección de la cuenta
MinMarginLevelPercent: no se abren nuevas posiciones por debajo de este porcentaje de nivel de margen (0 = desactivado).
MaxAccountRiskPercent: no se establecen nuevos niveles por encima de esta pérdida flotante expresada como porcentaje del saldo (0 = desactivado).
NetMaxMarginPercent: en cuentas de compensación, el margen máximo de la posición neta como porcentaje del capital propio (5,0).
MaxTotalOrders: límite máximo absoluto de órdenes en cuadrícula por lado (1000).
Ejecución y verificación
RunMode: «Armed» (Activo) o «Scan only» (Solo escaneo); «Scan only» es el primer paso más prudente.
CloseSequence: el orden en el que se envían las partes de la operación; por defecto, primero las más antiguas.
MaxSlippagePoints: deslizamiento máximo (30 puntos).
MaxSpreadPoints: la negociación se detiene por encima de este spread (7500 puntos).
MinSecondsBetweenClosures: pausa mínima entre dos cierres en el mismo lado (5 segundos).
CloseAttemptsPerLeg: número de intentos de cierre antes de que un tramo pase a la cola de reintentos (3).
VerifyTimeoutSeconds: tiempo durante el que se sigue comprobando un tramo atascado (90 segundos).
DeferWhenMarketClosed: espera a que comience la sesión en lugar de detenerse cuando el mercado está cerrado (activado).
MarketClosedRetrySeconds: intervalo de reintento mientras el bróker rechaza las órdenes (30 segundos).
AutoResumeAfterSeconds: anula la interrupción automáticamente tras este número de segundos (300; 0 espera a que se pulse el botón del panel).
NoPartialRetryMinutes: vuelve a intentar cierres parciales tras este número de minutos tras un rechazo del bróker (15; 0: nunca).
AbortIfBookChanged: descarta un plan si se produce un cambio en una de las partes de la operación entre el escaneo y el envío (activado).
UseFullCommission: calcula la comisión para ambas partes de una operación (activado).
CommissionPerLot: comisión alternativa cuando el historial no contiene ninguna (0: la lee del historial).
CloseOrderComment: el comentario al cerrar operaciones.
Ciclo de cobertura
EnableHedgeCycle: desactivado por defecto.
Símbolos de cobertura: lista de símbolos de cobertura separados por comas; repetir uno le da más turnos (XAGUSD).
Rotación de símbolos de cobertura: cómo se elige el símbolo del siguiente ciclo (por ciclo).
HedgeMaxSymbolsInTester: limita la rotación únicamente en el Probador de estrategias (2; 0 significa que no hay límite).
HedgeCycleLots: lotes en cada lado del par equilibrado (0,01).
HedgeSliceLots: lotes retirados de cada lado por porción (0,01).
HedgeFragmentBonus: cantidad adicional que se suma al coste del segmento (100).
HedgeBonusIsPercent: la bonificación es un porcentaje del coste del segmento; si se establece en «false», se convierte en una cantidad fija (activado).
HedgeMaxSurcharge: límite máximo de dinero que se puede aplicar como recargo a un cierre (0 = sin límite).
HedgeMaxSurchargePercent: el porcentaje máximo en que la cobertura puede elevar cualquier objetivo de cierre (50).
HedgeMagicNumber: el ID de las partes de la cobertura; debe ser diferente del de la cuadrícula (9754251).
HedgeReopenOnFinish: abre un nuevo ciclo al finalizar uno (activado).
HedgeStartRequiresTrade: espera a que la rejilla abra una posición antes del primer ciclo (activado).
HedgeIntegritySeconds: frecuencia con la que se comprueba que ambas posiciones sean iguales (5 segundos).
HedgeAutoRepair: repara automáticamente una posición aislada (activado).
HedgeNakedAction: qué hacer con una posición aislada; por defecto, se vuelve a cubrir.
HedgeMaxSpreadPoints: no se realizan órdenes de cobertura por encima de este spread (0 = desactivado).
HedgeSlippagePoints: deslizamiento máximo en las órdenes de cobertura (30 puntos).
HedgeAttemptsPerLeg: número de intentos por parte de la operación de cobertura (3).
HedgeVerifyTimeout: tiempo durante el que se sigue comprobando una posición de cobertura bloqueada (90 segundos).
HedgeCommissionPerLot: comisión de cobertura por defecto (0: se lee del historial).
HedgeOrderComment: el comentario sobre las operaciones de cobertura.
Día de liquidación semanal
WeeklyCashDay: no hay nuevo ciclo de cobertura ni reparto durante el periodo de retirada (desactivado).
CashDayOfWeek: 0 = domingo, 1 = lunes, y así sucesivamente (1).
CashCutoffHour: hora del servidor a partir de la cual no se activa ninguna nueva distribución (21).
Panel y gráfico
ShowPanel: muestra u oculta el panel.
PanelX y PanelY: desplazamientos del panel respecto a los bordes del gráfico (12 y 15).
PanelFontSize: tamaño de fuente base (9).
ShowArabic: añade una línea en árabe debajo de la línea en inglés del panel (activado).
ShowChartMarks: dibuja planos y niveles en el gráfico (activado).
MaxTableRows: número de filas que se muestran por cuadrícula (13).
PanelCorner: la esquina del gráfico a la que está anclado el panel.
Desencadenante de entrada
EntryTriggerMode: la estrategia MACD activa el primer nivel de forma predeterminada.
SignalBarShift: 1 significa la última barra cerrada.
SignalBarsDelay: barras que deben transcurrir entre señales aceptadas (30; 0 acepta todas las señales).
SignalValidBars: una señal sigue siendo válida durante este número de barras (3).
SignalAllowBuy y SignalAllowSell: activan o desactivan cada dirección por separado.
SignalReverse: invierte la dirección (desactivado).
Señal MACD: la señal
InpMACDFast: la longitud de la EMA rápida (12).
InpMACDSlow: la longitud de la EMA lenta; debe ser mayor que la rápida (26).
InpMACDSignal: la longitud de suavizado de la línea de señal (9).
InpMACDPrice: el precio sobre el que se calcula el MACD (cierre).
InpMACDZeroRule: 1 significa que un cruce de COMPRA debe producirse por debajo de cero y un cruce de VENTA por encima de cero; 0 acepta cualquier cruce (1).
InpMACDMinGapPts: la distancia mínima, en puntos, entre la línea principal y la línea de señal en la barra de cruce (0 = desactivado).
InpMACDMomentumRatio: protección de impulso del histograma: la oscilación del histograma en la barra de cruce debe ser, como mínimo, este múltiplo de su tamaño medio (0,20; 0 = desactivado).
InpMACDMomentumLookback: barras utilizadas para calcular el tamaño medio del histograma (50).
InpMACDTrendFilter: 0 = desactivado; 1 = operar a favor de la EMA; 2 = operar en contra de ella como estrategia de «fade».
InpMACDTrendMAPeriod: la longitud de la EMA de tendencia (200).
InpShowSignalArrows: flechas en las velas donde se ha activado un ciclo (activado).
InpShowMACDOnChart: dibuja el MACD en su propia subventana del gráfico en tiempo real (desactivado, para que el panel conserve toda la altura del gráfico; actívalo en una pantalla grande).
Depuración
DebugMode: registro detallado en el diario (desactivado).
Seguridad del margen en el marco temporal
UseMarginTFSafety: desactivado por defecto.
Level1MarginPct y Level1TF: con un nivel de margen igual o inferior al 6000 por ciento, funcionan en M15.
Level2MarginPct y Level2TF: a un nivel de margen igual o inferior al 5000 por ciento, funcionan en H1.
MarginTFHysteresisPct: distancia a la que debe recuperarse el margen por encima de un nivel antes de retroceder (500).
Expectativas realistas
Una estrategia de rejilla gestiona una posición; no puede predecir el futuro. El EA «Grid MACD Signal» es selectivo a la hora de determinar cuándo comienza un ciclo y trabaja de forma constante para mantener cada ciclo corto y reducir progresivamente cada orden anterior; sin embargo, una tendencia fuerte puede mantener el MACD en un lado del cero durante mucho tiempo y mantener la posición abierta. Elige un lote que tu cuenta pueda soportar durante ese periodo, pruébalo primero con tu propio bróker y deja que el Strategy Tester te muestre cómo se comporta antes de operar con él en vivo. Funciona con cualquier símbolo y marco temporal y no necesita DLL ni archivos adicionales.
Si la utilizas, una reseña sincera sobre cómo ha funcionado en tu cuenta, ya sea positiva o negativa, ayudará a otros operadores a tomar una decisión.
