Grid Core Fractal Adaptive Moving Average 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.21
- Activaciones: 5
Míralo primero, decide después: carga el EA «Grid Core Fractal Adaptive Moving Average» en el Probador de Estrategias de MetaTrader 5, activa el modo visual y observa cómo permanece inactivo mientras la línea adaptativa se desplaza lateralmente, para luego activar una rejilla solo cuando el precio y la línea coinciden en un cambio de tendencia.
UNA MEDIA MÓVIL QUE CAMBIA SU PROPIA VELOCIDAD.
Una media móvil convencional reacciona al mismo ritmo tanto si el mercado presenta una tendencia clara como si oscila dentro de un rango. La media móvil adaptativa fractal mide el grado de volatilidad o suavidad de la evolución reciente de los precios y modifica su propio nivel de suavizado en cada barra: se ajusta estrechamente al precio cuando el movimiento es direccional y se vuelve lenta y plana cuando el mercado es volátil. El EA «Grid Core Fractal Adaptive Moving Average» utiliza esa línea como único criterio visible para iniciar cada ciclo de rejilla. Una vez iniciado el ciclo, un completo motor de gestión de rejilla toma el control y trabaja para reducir la exposición más antigua mediante cierres en grupo y recortes parciales.
De un vistazo
Un ciclo de COMPRA puede comenzar cuando el precio vuelve a cruzar por encima de la línea adaptativa, cuando la propia línea gira al alza con suficiente pendiente, o cuando ambas cosas ocurren a la vez, dependiendo del modo de entrada que elijas. Un ciclo de VENTA requiere las condiciones inversas. Solo se tienen en cuenta las barras cerradas, por lo que las señales no se repintan.
La línea adaptativa se calcula dentro del EA. No se necesita ningún archivo de indicador personalizado ni hay que instalar nada adicional.
Un filtro de pendiente mínima ignora los giros demasiado suaves como para tener relevancia, lo que mantiene al EA al margen de la mayoría de los tramos planos y sin dirección.
Un retraso de 30 barras entre las señales aceptadas evita que el EA se active ciclo tras ciclo en un periodo de mercado volátil.
El espaciado de la rejilla sigue el Rango Verdadero Medio (ATR) por defecto, por lo que los niveles se sitúan más separados en mercados activos y más juntos en los tranquilos.
Las ganancias se acumulan en grupos formados por las órdenes más antiguas y las más recientes, y una orden antigua de gran volumen puede liquidarse en tramos parciales en lugar de esperar a obtener un rendimiento completo.
El panel del gráfico muestra el modo en tiempo real, los lotes, el espaciado, los resultados acumulados, la puerta de señales, el estado de la línea adaptativa y su pendiente, el marco temporal activo, los planes de rejilla y las órdenes abiertas, además de botones de control rápido.
NOVEDADES DE LA VERSIÓN 3.21
Todos los nombres de los parámetros, títulos de los grupos y comentarios están ahora en inglés sencillo, por lo que la ventana de parámetros se lee con claridad en cualquier idioma de la terminal.
La comprobación de fondos antes de cada nuevo nivel utiliza únicamente el cálculo de margen del bróker con un margen de seguridad dentro del margen libre; no hay ningún límite máximo oculto y codificado de forma rígida que rechace niveles de forma errónea.
Los «números mágicos» de la red y la cobertura están aislados por símbolo, por lo que dos copias en gráficos diferentes nunca gestionan las órdenes de la otra.
Las marcas de ejecución bloqueadas se borran automáticamente, y un cierre parcial rechazado se vuelve a intentar tras un número determinado de minutos, en lugar de esperar a un reinicio.
Una opción de «Seguridad del marco temporal del margen» puede ampliar el marco temporal de trabajo cuando el nivel de margen desciende. Está desactivada por defecto.
CÓMO UTILIZARLO PASO A PASO
1. Copia el EA en la carpeta «Experts» o instálalo desde el Market; a continuación, reinicia o actualiza el Navegador.
2. Ejecútalo primero en el Probador de estrategias con el símbolo y el marco temporal con los que tengas previsto operar, utilizando los parámetros predeterminados, y estudia cómo comienzan y se cierran los ciclos.
3. Asócialo a un gráfico, comprueba el lote inicial, el modo de cálculo del tamaño del lote y el modo de espaciado, y mantén los valores predeterminados si no estás seguro.
4. Activa el «Algo Trading». El panel muestra «ARMED» cuando el EA tiene permiso para abrir nuevos ciclos; «PAUSE» detiene los nuevos niveles sin cerrar nada.
5. Observa la fila «SIGNAL GATE» para ver cuándo se puede aceptar la siguiente señal, y las filas «FRAMA» para ver qué está haciendo la línea en ese momento.
NOTA SOBRE EL RIESGO
Una rejilla añade posiciones a medida que el precio se mueve en contra de la primera orden. Esto puede generar una gran pérdida flotante en un movimiento prolongado en una sola dirección. Empieza con lotes pequeños, utiliza los parámetros de protección de la cuenta y nunca operes con dinero que no puedas permitirte perder. Los resultados de pruebas anteriores no garantizan resultados futuros.
PRUÉBALO GRATIS EN EL PROBADOR DE ESTRATEGIAS
La versión de demostración se ejecuta en el Probador de estrategias de MetaTrader 5 sin coste alguno. Prueba allí diferentes símbolos, marcos temporales y ajustes de lotes antes de tomar una decisión.
EXPLICACIÓN DE TODOS LOS PARÁMETROS
TradeMode = TRADE_DUAL_GRID: Establece el modo operativo de negociación para la estructura de rejilla.
GridSpacePoints = 25: Define la distancia en puntos base entre órdenes consecutivas de la rejilla.
GridSpaceMultiplier = 1,0: multiplica progresivamente la distancia de separación para cada nuevo nivel.
MaxGridLevels = 1000: Limita el número máximo de niveles activos permitidos dentro de una misma rejilla.
UpDirectionIsBuy = true: Determina si un movimiento alcista del precio activa la dirección de compra.
EAMagicNumber = 9754160: Etiqueta identificativa única asignada a todas las órdenes de rejilla.
GridOrderComment = «GCFR»: Comentario de texto adjunto a cada operación de la rejilla para facilitar su seguimiento.
OneOrderPerBar = true: Impide que el EA abra más de un nuevo nivel de la rejilla por cada barra de precios.
InitialLotSize = 0,01: Define el volumen de negociación inicial para la primera orden de la rejilla.
LotSizingMode = LOT_ADDITIVE: Selecciona cómo se escalan los tamaños de lote a lo largo de los niveles sucesivos de la rejilla.
LotMultiplier = 1,25: multiplica el tamaño del lote por este factor cuando el modo multiplicador está activo.
LotAddStep = 0,01: incremento fijo del lote que se añade en cada nuevo nivel en modo aditivo.
MaxOrderVolume = 1,0: Límite máximo estricto del volumen permitido para cualquier orden individual.
UseAutoLot = false: Activa el cálculo automático del tamaño de los lotes de forma proporcional al crecimiento del saldo de la cuenta.
AutoLotBaseBalance = 1000,0: saldo base de la cuenta utilizado para los cálculos automáticos de lotes.
AutoLotAllowDecrease = false: Permite reducir el tamaño del lote por debajo del valor de referencia inicial cuando el saldo disminuye.
GridSpacingMode = SPACING_ATR: Cambia el cálculo del espaciado de la rejilla entre puntos fijos y métricas basadas en la volatilidad.
ATRTimeframe = PERIOD_CURRENT: Gráfico del marco temporal utilizado para calcular el indicador de rango verdadero medio (ATR).
ATRPeriod = 14: Duración del periodo para el cálculo del Rango Verdadero Medio.
ATRSpacingFactor = 1,0: multiplicador aplicado al valor del ATR para determinar la distancia de espaciado.
ATRBarShift = 1: Desplazamiento del índice de barras utilizado al leer los valores de ATR.
ATRMinSpacingPts = 50: Límite mínimo de espaciado permitido en puntos al utilizar el ATR.
ATRMaxSpacingPts = 5000: Límite máximo de espaciado permitido en puntos al utilizar el ATR.
ATRFreezeOnStart = false: Bloquea el valor de espaciado del ATR al inicio de un ciclo.
DesiredProfitPerClosure = 2,0: Beneficio monetario objetivo esperado al cerrar una cesta de la rejilla.
ProfitMultiplier = 1,00: Multiplicador de escalado aplicado al cálculo del objetivo de beneficio final.
ProfitTargetMode = PROFIT_SCALED: Define el algoritmo matemático utilizado para calcular los objetivos de beneficio de la cesta.
ProfitVolumePower = 1,0: Ponderación exponencial aplicada a los volúmenes de operación en los objetivos de beneficio escalados.
ProfitDepthBonus = 0,10: bonificación de beneficio incremental que se añade por cada nivel adicional abierto de la rejilla.
ProfitMaxMultiple = 50,0: Límite máximo del multiplicador en relación con el objetivo de beneficio base.
ProfitMaxReachFraction = 0,50: Umbral de seguridad que limita los ajustes de los objetivos en función del espaciado de la rejilla.
UseMultiLegScan = true: Habilita el análisis de combinaciones complejas de órdenes múltiples antes que los pares estándar.
MaxOldestLegs = 3: Número máximo de tramos más antiguos incluidos en un único cierre de cesta.
MaxNewestLegs = 6: Número máximo de tramos más recientes incluidos en un único cierre de cesta.
ScanPriority = SCAN_MOST_ORDERS: Regla de clasificación utilizada para ordenar las combinaciones de cierre que cumplen los requisitos.
NeverBankLessThanPair = true: Garantiza que las combinaciones no generen menos beneficio que el cierre de un par básico.
RequireCloseVolumeExceedsTarget = true: Impone reglas de equilibrio de volumen entre las órdenes más recientes y las más antiguas.
MinCloseVolumeRatio = 1,5: Ratio mínimo requerido entre los volúmenes de cierre y los volúmenes objetivo.
EnableTargetSlicing = true: Permite cerrar partes parciales de órdenes más antiguas cuando el cierre total está lejos.
FragProfitWeightPower = 1,5: exponente de ponderación aplicado a los cálculos de beneficios durante el fraccionamiento.
FragMinSlicePercent = 20,0: Tamaño mínimo permitido de una porción, expresado en porcentaje.
FragAllowMultiCloser = true: Permite combinar varias órdenes recientes al comprar una sola porción.
FragPreferFullClosure = true: Da prioridad al cierre completo de la cartera frente al fraccionamiento siempre que sea posible.
ReopenGuard = REOPEN_STEP: Evita los cierres que provocarían instantáneamente una reentrada.
ReopenGuardCushion = 0,90: Fracción de distancia de seguridad necesaria para evitar la reapertura inmediata de la rejilla.
MinMarginLevelPercent = 0,0: umbral mínimo de seguridad del nivel de margen por debajo del cual se bloquean los nuevos niveles de la rejilla.
MaxAccountRiskPercent = 0,0: Límite máximo de porcentaje de pérdidas flotantes por encima del cual se bloquean nuevos niveles.
NetMaxMarginPercent = 5,0: Porcentaje máximo de margen permitido para las posiciones netas en relación con el capital propio.
MaxTotalOrders = 1000: Límite máximo absoluto de órdenes de rejilla simultáneas por lado.
RunMode = RUN_ARMED: Controla si el EA comienza a escanear activamente o si se activa de inmediato.
CloseSequence = SEQ_OLDEST_FIRST: Orden de secuencia de ejecución al cerrar las posiciones de la cesta.
MaxSlippagePoints = 30: Deslizamiento de precio máximo aceptable en puntos durante la ejecución.
MaxSpreadPoints = 7500: Filtro de spread que bloquea las operaciones cuando el spread supera este límite.
MinSecondsBetweenClosures = 5: Intervalo mínimo de tiempo de espera entre cierres sucesivos de la cesta.
CloseAttemptsPerLeg = 3: Número de intentos de envío por posición antes de derivarla a la cola de reintentos.
VerifyTimeoutSeconds = 90: Tiempo de espera para verificar las partes de la orden sin resolver o bloqueadas.
DeferWhenMarketClosed = true: Aplaza las operaciones de forma fluida cuando no hay cotizaciones de mercado disponibles.
MarketClosedRetrySeconds = 30: Intervalo de tiempo entre intentos de reintento cuando el libro de órdenes rechaza las órdenes.
AutoResumeAfterSeconds = 300: Tiempo que transcurre antes de que se resuelva automáticamente una interrupción operativa temporal.
NoPartialRetryMinutes = 15: Minutos de espera antes de volver a intentar un cierre parcial tras el rechazo del bróker.
AbortIfBookChanged = true: Cancela el plan de ejecución si el estado del libro de órdenes cambia durante la operación.
UseFullCommission = true: tiene en cuenta las comisiones del bróker tanto en las ejecuciones de apertura como en las de cierre.
CommissionPerLot = 0,0: Valor de comisión por defecto por lote negociado si falla la consulta del historial.
CloseOrderComment = "Frag": Comentario de texto específico que se añade a las operaciones de cierre.
EnableHedgeCycle = false: Activa o desactiva la función del ciclo de cobertura secundario.
HedgeSymbols = «XAGUSD»: Lista de símbolos auxiliares utilizados para la cobertura entre instrumentos.
HedgeSymbolRotation = HROT_PER_CYCLE: Método para rotar los símbolos durante los ciclos de cobertura.
HedgeMaxSymbolsInTester = 2: Límite específico del simulador para el número de símbolos en rotación.
HedgeCycleLots = 0,01: volumen en lotes aplicado a cada lado de la estructura de cobertura.
HedgeSliceLots = 0,01: volumen retirado de cada lado de la cobertura por porción fraccionaria.
HedgeFragmentBonus = 100,0: Porcentaje de bonificación añadido a los cálculos del coste de cada porción.
HedgeBonusIsPercent = true: Determina si la bonificación de cobertura se basa en un porcentaje o en un importe monetario fijo.
HedgeMaxSurcharge = 0,0: Límite máximo monetario de los ajustes de recargo para cierres individuales.
HedgeMaxSurchargePercent = 50,0: Límite de seguridad porcentual que restringe en qué medida la cobertura puede elevar los niveles objetivo.
HedgeMagicNumber = 9754161: Identificador único reservado para las órdenes de cobertura.
HedgeReopenOnFinish = true: Inicia automáticamente un nuevo ciclo de cobertura al finalizar el anterior.
HedgeStartRequiresTrade = true: Requiere que la red principal abra posiciones antes de iniciar los ciclos de cobertura.
HedgeIntegritySeconds = 5: Intervalo de tiempo para verificar el equilibrio y la integridad de las posiciones de cobertura.
HedgeAutoRepair = true: Activa las rutinas de recuperación automática para las ramas de cobertura desprotegidas.
HedgeNakedAction = HNAKED_REHEDGE: Especifica la acción correctiva que se lleva a cabo al detectar una rama de cobertura sin contrapartida.
HedgeMaxSpreadPoints = 0: Filtro de spread máximo permitido específicamente para la ejecución de operaciones de cobertura.
HedgeSlippagePoints = 30: Tolerancia máxima aceptable de deslizamiento para las órdenes de cobertura.
HedgeAttemptsPerLeg = 3: Número máximo de intentos de envío permitidos para cada parte de la operación de cobertura.
HedgeVerifyTimeout = 90: Tiempo de espera de verificación para las partes de cobertura bloqueadas.
HedgeCommissionPerLot = 0,0: Valor de comisión por defecto por lote para las transacciones de cobertura.
HedgeOrderComment = «HedgeCycle»: Texto de comentario personalizado que se añade a las operaciones de órdenes de cobertura.
WeeklyCashDay = false: Suspende los nuevos ciclos y tramos durante los periodos de retirada designados.
CashDayOfWeek = 1: Día de la semana designado para las operaciones de retirada de efectivo.
CashCutoffHour = 21: Hora límite del servidor a partir de la cual se detiene la división de lotes activa.
ShowPanel = true: Controla la visibilidad del panel de información interactivo en el gráfico.
PanelX = 12: Desplazamiento horizontal en píxeles del panel en el gráfico.
PanelY = 15: Desplazamiento vertical en píxeles del panel en el gráfico.
PanelFontSize = 9: Tamaño de fuente base utilizado para mostrar el texto del panel.
ShowArabic = true: Activa o desactiva el texto descriptivo secundario bilingüe en árabe en el panel.
ShowChartMarks = true: Habilita la representación gráfica de las cuadrículas y los niveles directamente en el gráfico.
MaxTableRows = 13: Número máximo de filas de orden que se muestran simultáneamente dentro de la tabla del panel.
PanelCorner = CORNER_DEFAULT: Esquina de anclaje de la pantalla donde se fija el panel de control.
EntryTriggerMode = TRIGGER_STRATEGY: Especifica el mecanismo de activación de entrada que activa los niveles iniciales de la cuadrícula.
SignalBarShift = 1: Índice de desplazamiento de barras utilizado al evaluar las señales del indicador.
SignalBarsDelay = 30: Separación mínima entre barras requerida entre señales de entrada aceptadas.
SignalValidBars = 3: Número de barras durante las cuales una señal generada sigue siendo válida.
SignalAllowBuy = true: Autoriza a la estrategia a iniciar ciclos de rejilla de compra.
SignalAllowSell = true: Autoriza a la estrategia a iniciar ciclos de rejilla de venta.
SignalReverse = false: Invierte la dirección de negociación de las señales entrantes de la estrategia.
InpFramaPeriod = 16: Período de cálculo utilizado para la media móvil adaptativa fractal.
InpFramaPrice = PRICE_CLOSE: Tipo de precio aplicado para los cálculos de suavizado de FRAMA.
InpFramaSlowAlpha = 0,01: Factor de suavizado mínimo utilizado en condiciones de mercado planas o fractales.
InpFramaEntryMode = FRAMA_BOTH: Define los criterios de entrada basados en el cruce de precios, el cambio de pendiente o ambos.
InpFramaSlopeBars = 3: Número de barras de retrospectiva utilizado al calcular el impulso de la pendiente de FRAMA.
InpFramaMinSlopePts = 5,0: Umbral mínimo del filtro de pendiente en puntos para filtrar los mercados planos.
InpFramaShowOnChart = true: Traza la línea del indicador FRAMA directamente en el gráfico de precios.
InpShowSignalArrows = true: Muestra flechas de señal visuales en las velas en las que se activan las entradas.
DebugMode = false: Activa el registro de diagnóstico detallado en el diario de expertos.
UseMarginTFSafety = false: Ajusta dinámicamente los marcos temporales de trabajo cuando disminuyen los niveles de margen.
Level1MarginPct = 6000,0: Umbral de activación porcentual del nivel de margen del primer nivel.
Level1TF = PERIOD_M15: Marco temporal de trabajo aplicado durante los ajustes de seguridad del margen del primer nivel.
Level2MarginPct = 5000,0: Umbral de activación porcentual del nivel de margen del segundo nivel.
Level2TF = PERIOD_H1: Marco temporal de trabajo aplicado durante los ajustes de seguridad de margen del segundo nivel.
MarginTFHysteresisPct = 500,0: Margen de histeresis porcentual necesario antes de revertir los marcos temporales.
TUS COMENTARIOS AYUDAN
Si pruebas o utilizas este EA, una reseña sincera en la página del producto, ya sea positiva o crítica, ayuda a otros operadores a tomar una decisión y me indica qué aspectos debo mejorar en el futuro. Gracias.
