MySystem: Asesor Experto para MetaTrader 5

Mike 2018.10.26 00:46 13 0 0
Archivos adjuntos

Autor de la idea: Collector

Autor del código MQL5: barabashkakvn

Este Asesor Experto (EA) solo opera cuando aparece una nueva barra. La señal de trading se genera a partir de los indicadores iBullsPower (Bulls Power) y iBearsPower (Bears Power) siempre que el mercado no tenga posiciones abiertas por parte del EA (la búsqueda se realiza según el símbolo actual y el identificador único del EA - número mágico).

Ambos indicadores tienen una única configuración: Bulls y Bears: periodo de promedio. El algoritmo para formar la señal de trading utiliza datos de dos barras: Barra actual y Barra actual +1, y los valores se dividen por 2.

   double prev = ((bears[1]+bulls[1])/2.0);
   double curr = ((bears[0]+bulls[0])/2.0);

Si el valor promedio de la barra anterior es menor que el de la actual, se abre una posición de COMPRA:

      if(prev<curr && curr<0)
        {
         //ClosePositions(POSITION_TYPE_SELL);
         double sl=(InpStopLoss==0)?0.0:m_symbol.Ask()-ExtStopLoss;
         if(sl>=m_symbol.Bid()) // incidente: la posición no está abierta y debe ser cerrada
         {
          PrevBars=0;
          return;
        }
         double tp=(InpTakeProfit==0)?0.0:m_symbol.Ask()+ExtTakeProfit;
         OpenBuy(sl,tp);
         return;
        }

Si el valor promedio de la barra anterior es mayor que el de la actual, se abre una posición de VENTA:

      if(prev>curr && curr>0)
        {
         //ClosePositions(POSITION_TYPE_BUY);
         double sl=(InpStopLoss==0)?0.0:m_symbol.Bid()+ExtStopLoss;
         if(sl<=m_symbol.Ask()) // incidente: la posición no está abierta y debe ser cerrada
         {
          PrevBars=0;
          return;
        }
         double tp=(InpTakeProfit==0)?0.0:m_symbol.Bid()-ExtTakeProfit;
         OpenSell(sl,tp);
         return;
        }

Para el par EURUSD en el gráfico M15:

MySystem

    Lista
    Comentarios 0