¡Hola, traders! Hoy vamos a hablar sobre el Promediador Móvil, un sistema de trading que utiliza una sola media móvil para generar señales de compra y venta. Este Asesor Experto está diseñado para operar en MetaTrader 4, y su funcionamiento es bastante sencillo y efectivo.
La apertura y cierre de posiciones se lleva a cabo cuando la media móvil se encuentra con el precio en la barra recientemente formada (índice de barra igual a 1). Además, el tamaño del lote se optimiza mediante un algoritmo especial.
El asesor analiza la convergencia de la media móvil y el gráfico de precios del mercado. Este análisis se realiza mediante la función CheckForOpen(). Si la media móvil está por encima del precio de apertura pero por debajo del precio de cierre, se abrirá una posición de compra (BUY). Por otro lado, si la media móvil está por debajo del precio de apertura pero por encima del precio de cierre, se abrirá una posición de venta (SELL).
En cuanto a la gestión del dinero, el enfoque utilizado por este experto es muy simple, pero efectivo. El control del volumen de cada posición se realiza en función de los resultados de transacciones anteriores. Este algoritmo se implementa mediante la función LotsOptimized(). El tamaño básico del lote se calcula en base al riesgo máximo permitido:
lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,1);
El parámetro MaximumRisk indica el porcentaje de riesgo básico para cada transacción, normalmente oscilando entre 0.01 (1%) y 1 (100%). Por ejemplo, si el margen libre (AccountFreeMargin) es de $20,500 y las reglas de gestión del capital establecen un riesgo del 2%, el tamaño básico del lote será 20500 * 0.02 / 1000 = 0.41. Es fundamental controlar la precisión del tamaño del lote y normalizar el resultado a los valores permitidos. Normalmente, se permiten lotes fraccionarios con un paso de 0.1. Si se calcula un volumen de 0.41, no se ejecutará la transacción. Para normalizar, se utiliza la función NormalizeDouble() con una precisión de 1 carácter después del punto, lo que resulta en un lote básico de 0.4. Este cálculo basado en el margen libre permite incrementar los volúmenes de operación dependiendo del éxito en el trading, es decir, operar con reinversión. Esta es la base de un mecanismo de gestión de capital para aumentar la efectividad del trading.
El DecreaseFactor es el factor que se utiliza para reducir el tamaño del lote después de operaciones no rentables. Los valores normales son 2, 3, 4, 5. Si las transacciones anteriores no fueron rentables, los volúmenes subsiguientes disminuirán por un factor de DecreaseFactor mientras se espera que la racha negativa termine. Este es el principal elemento del algoritmo de gestión de capital. La idea es clara: si el trading está aumentando con éxito, el experto trabaja con el lote básico generando la máxima ganancia. Después de la primera transacción no rentable, el experto “reduce la velocidad” hasta que se realiza una nueva transacción positiva. El algoritmo permite desactivar esta reducción de velocidad si se especifica DecreaseFactor = 0. La cantidad de las últimas transacciones no rentables se calcula en el historial de trading. El lote básico se recalculará en función de esto:
if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
Así, el algoritmo permite reducir efectivamente el riesgo derivado de una serie de operaciones no rentables. Al final de la función, se verifica obligatoriamente el tamaño del lote para asegurarse de que no sea inferior al tamaño mínimo permitido, ya que los cálculos previos pueden resultar en un lote = 0:
if(lot<0.1) lot=0.1;
Este experto está principalmente diseñado para trabajar con períodos diarios y, en modo de prueba, se ejecuta utilizando precios de cierre. Solo realizará operaciones al abrir una nueva barra, por lo que los modos de modelado de cada tick no son necesarios.
Los resultados de las pruebas se presentan en el informe:
Informe del Probador de Estrategias
Promediador Móvil
Símbolo EURUSD (Euro vs Dólar Estadounidense) Período 1 Hora (H1) 2003.01.08 00:00 - 2003.11.25 00:00 Modelo Cada tick (basado en todos los marcos de tiempo disponibles con interpolación fractal de cada tick) Parámetros Lots=0.1; MaximumRisk=0.01; DecreaseFactor=1; MovingPeriod=16; MovingShift=11; Barra en prueba 19371 Ticks modelados 656918 Calidad de modelado 25.00% Depósito inicial 10000.00 Ganancia neta total 1695.20 Ganancia bruta 4293.20 Pérdida bruta -2598.00 Factor de ganancia 1.65 Pago esperado 10.80 Dibujo absoluto 40.35 Dibujo máximo (%) 318.50 (3.0%) Transacciones totales 157 Posiciones cortas (ganadas %) 73 (26.03%) Posiciones largas (ganadas %) 84 (32.14%) Transacciones rentables (% del total) 46 (29.30%) Transacciones con pérdidas (% del total) 111 (70.70%) Mayor transacción rentable 262.55 transacción con pérdida -91.00 Promedio transacción rentable 93.33 transacción con pérdida -23.41 Máximo ganancias consecutivas (ganancia en dinero) 2 (387.15) pérdidas consecutivas (pérdida en dinero) 7 (-287.25) Máximo ganancia consecutiva (número de ganancias) 387.15 (2) pérdida consecutiva (número de pérdidas) -287.25 (7) Promedio ganancias consecutivas 1 pérdidas consecutivas 3
Publicaciones relacionadas
- Señales de Trading con Patrón Hammer/Hanging Man y Estocástico en MetaTrader 5
- Procesamiento Visual de Órdenes: Mejora tu Trading en MetaTrader 4
- Gestión Automática de Órdenes Pendientes con RSI en MetaTrader 4
- My Line Order 2.1: Mejora tu Trading en MetaTrader 4
- Exp5-VirtualTradePad para MT5: Tu Panel de Control Ideal