Exp_Fractal_WeightOscillator: Asesor Experto para MetaTrader 5

Mike 2017.03.02 20:51 33 0 0
Archivos adjuntos

Autor Real: Vladimir Khlystov

El Exp_Fractal_WeightOscillator es un Asesor Experto (EA) sencillo basado en el oscilador ponderado Fractal_WeightOscillator. Este EA vende cuando el oscilador cruza hacia abajo el nivel de sobrecompra y compra cuando cruza hacia arriba el nivel de sobreventa. La señal se genera al cierre de una barra, siempre que se haya cruzado el nivel.

El indicador Fractal_WeightOscillator_HTF incluido en el EA está diseñado únicamente para una visualización más cómoda de las tendencias en el probador de estrategias; en otros modos de operación, permanece inactivo.

Para instalarlo, coloca los archivos compilados Fractal_WeightOscillator.ex5 y Fractal_WeightOscillator_HTF.ex5 en la carpeta <terminal_data_folder>\MQL5\Indicators.

Después de compilar, el archivo del experto Exp_Fractal_WeightOscillator.ex5 ya incluye los indicadores Fractal_WeightOscillator.ex5 y Fractal_WeightOscillator_HTF.ex5 como recursos, por lo que no es necesario tenerlos en la carpeta del terminal para que el EA funcione. Para esto, se ha añadido el código correspondiente en el EA para incluir estos indicadores en el archivo ejecutable del experto.

Los archivos ejecutables de los indicadores se han añadido como recursos a nivel global.

//---- Incluir los indicadores en el código del EA como recursos
#resource "\Indicators\Fractal_WeightOscillator.ex5"
#resource "\Indicators\Fractal_WeightOscillator_HTF.ex5"

Se cambiaron las rutas de los indicadores utilizados como recursos en el bloque de la función OnInit().

//---- obteniendo el handle del Fractal_WeightOscillator
   InpInd_Handle=iCustom(Symbol(),InpInd_Timeframe,"::Indicators\Fractal_WeightOscillator",
                         e_period,normal_speed,RSIWeight,RSIPrice,MFIWeight,MFIPrice,MFIVolumeType,
                         WPRWeight,DeMarkerWeight,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
   if(InpInd_Handle==INVALID_HANDLE)
     {
      Print(" Error al obtener el handle del indicador Fractal_WeightOscillator");
      return(INIT_FAILED);
     }

//---- Obtener el handle del indicador Fractal_WeightOscillator_HTF para visualización en el probador de estrategias
   if(MQLInfoInteger(MQL_VISUAL_MODE))
     {
      //---- obteniendo el handle del indicador Fractal_WeightOscillator_HTF
      int Ind_Handle=iCustom(Symbol(),Period(),"::Indicators\Fractal_WeightOscillator_HTF",InpInd_Timeframe,
                             e_period,normal_speed,RSIWeight,RSIPrice,MFIWeight,MFIPrice,MFIVolumeType,
                             WPRWeight,DeMarkerWeight,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
      if(Ind_Handle==INVALID_HANDLE)
        {
         Print(" Error al obtener el handle del indicador Fractal_WeightOscillator_HTF");
         return(INIT_FAILED);
        }
     }

De este modo, el archivo ejecutable compilado del experto puede ser utilizado en otros terminales de trading por sí mismo, sin necesidad de los indicadores.

Cabe destacar que la biblioteca TradeAlgorithms.mqh permite utilizar Asesores Expertos con brókers que ofrecen spread no cero y la opción de establecer Stop Loss y Take Profit junto con la apertura de la posición. Puedes descargar más variantes de la biblioteca en el siguiente enlace: Trade Algorithms.

En las pruebas realizadas a continuación se han utilizado los parámetros de entrada predeterminados del Asesor Experto. No se han empleado Stop Loss ni Take Profit durante las pruebas.

Fig. 1. Ejemplos de operaciones en el gráfico

Fig. 1. Ejemplos de operaciones en el gráfico

Resultados de las pruebas para 2015 en GBPUSD H6:

Fig. 2. Gráfico de resultados de las pruebas

Fig. 2. Gráfico de resultados de las pruebas

Lista
Comentarios 0