Se necesita modificar órdenes de entrada en EA de reversion a la media

Trabalho concluído

Tempo de execução 3 dias
Comentário do cliente
Respuesta rápida, ejecución perfecta y ofrece alternativas aunque no se las hayas planteado, no se limita a hacer, sino a mejorar. Excelente profesional y trato inmejorable
Comentário do desenvolvedor
Excelente cliente, un placer trabajar con él.

Termos de Referência

Necesito un desarrollador que ajuste una EA actual desarrollada para que realice operaciones de compra y de venta. El código es sencillo, es una reversión a la media con desviaciones típicas y EMA, algo básico. La lógica para comprar y vender es abrir una operación cuando el precio haya cerrado en niveles extremos y cerrar cuando alcance el punto promedio, básicamente como cualquier estrategia de reversión a la media.

La estrategia emplea dos desviaciones típicas de una EMA central, de forma que cuando el precio cierre por encima de una y debajo de la otra al mismo tiempo se ejecuten operaciones de compra o venta, según corresponda, y se cierre automáticamente una vez el precio haya alcanzado la EMA central. El sistema no tiene Take Profits ni Stop Loss específicos como tal, sino órdenes de salida, las cuales pueden producir o ganancias o pérdidas. Igualmente es un sistema que solo permite una única dirección al mismo tiempo. Está pensado para trabajar en velas de 1 minuto.

El lote es una variable indicada como una cantidad fija que puede ser modificada arbitrariamente, así como el periodo de la EMA y las desviaciones de la misma. Por la lógica de la estrategia, nunca se va a dar que en una posición abierta se ejecuten señales para una posición contraria, pueden darse ejecuciones en la misma dirección que la entrada inicial que NO serán ejecutadas, de forma que se mantendrá una única posición en una única dirección cada vez que se den las condiciones para una señal de compra.

La lógica es la siguiente:

1) Detecta que el precio cierra por encima de una desviación típica del precio y debajo de la otra.

2) Ejecuta la orden de compra o de venta, dependiendo de cuáles sean las desviaciones que sobrepasa y cuales no (está todo muy claramente escrito en el código)

3) Una vez el precio cierre por debajo o por encima de la EMA, la operación se cerrará automáticamente

Listo, necesito alguien que desarrolle las órdenes de entrada y salida del mercado únicamente. Pongo una parte del código para que puedan hacerse a la idea:

#include <Trade/Trade.mqh>

//--- input parameters
input double   Dev1=2.0;
input double   Dev2=2.25;
input int      emaPeriod=12;
input double   DefaultQuantity=1;

int ema_handle, bollinger_handle1, bollinger_handle2;
double Close[];

CTrade trade;

----------------
void OnTick()
  {  
   //--- Calculation of stdevs and EMA
   double mid = iMA(_Symbol, PERIOD_CURRENT, emaPeriod, 0, MODE_EMA, PRICE_CLOSE);
   double dev = iStdDev(_Symbol, PERIOD_CURRENT, emaPeriod, 0, MODE_EMA, PRICE_CLOSE);
   double up1 = mid + Dev1 * dev;
   double low1 = mid - Dev1 * dev;
   double up2 = mid + Dev2 * dev;
   double low2 = mid - Dev2 * dev;
   
   CopyClose(_Symbol,PERIOD_CURRENT,0,1,Close);
    
   if (PositionSelect(_Symbol) == false) {
      if (up1 <= Close[0] && up2 >= Close[0]) {
        trade.Sell(DefaultQuantity,_Symbol,0.0,0.0,0.0,"");
      }
      else if (low1 >= Close[0] && Close[0] >= low2) {
         trade.Buy(DefaultQuantity,_Symbol,0.0,0.0,0.0,"");               
      }

   else {
      if (PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL && mid >= Close[0]) {
         trade.PositionClose(_Symbol);
      }
      else if (PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY && mid <= Close[0]) {
         trade.PositionClose(_Symbol);
      }
   }
}


Respondido

1
Desenvolvedor 1
Classificação
(91)
Projetos
129
35%
Arbitragem
13
38% / 31%
Expirado
31
24%
Trabalhando
2
Desenvolvedor 2
Classificação
(154)
Projetos
258
24%
Arbitragem
12
25% / 8%
Expirado
15
6%
Carregado
3
Desenvolvedor 3
Classificação
(251)
Projetos
402
38%
Arbitragem
82
41% / 20%
Expirado
70
17%
Trabalhando
4
Desenvolvedor 4
Classificação
(50)
Projetos
72
19%
Arbitragem
3
0% / 0%
Expirado
1
1%
Livre
Pedidos semelhantes
Obtener las noticias de Forex Factory : Necesitarás una forma de obtener las noticias automáticamente. Puedes usar un servicio web o una API para obtener estos datos. Analizar los datos de las noticias : El EA debe comparar el valor 'Actual' con el 'Forecast' y decidir si es bueno o malo para la moneda. Ejecutar órdenes de compra o venta : Dependiendo del resultado del análisis, el EA debe ejecutar las órdenes
Lógica del Bot de Trading en MQL5 Indicador Principal Utiliza la EMA de 100 periodos para determinar las señales de compra y venta. Condiciones de Entrada Compra: Abrir una posición de compra si el precio de cierre de la vela de 10 minutos está por encima de la EMA de 100 periodos. Venta: Abrir una posición de venta si el precio de cierre de la vela de 10 minutos está por debajo de la EMA de 100 periodos. Condiciones
Descripción del Trabajo: Bot de Trading Basado en EMA para MetaTrader 5 (MQL5) Objetivo : Crear un bot de trading en MQL5 para MetaTrader 5 que opere basado en el cruce de la EMA de 100 periodos. Lógica del Bot : Indicador Principal : EMA de 100 periodos. Condiciones de Entrada : Compra : Abrir una posición de compra si el precio de cierre de la vela de 10 minutos está por encima de la EMA de 100 periodos. Venta
Necesito un robot para aprobar cuentas de fondeo para la empresa topten y para befunding y Avanty. no me importa que par se use siempre que sea de indices sinteticos y que se pueda usar en Mt5
Me Gustaría la creación de Bots que funcione en forex , con la estrategia de smart money . orden block , FGV. y complementarla con medias móviles y Fibonacci. en 15 min

Informações sobre o projeto

Orçamento
40+ USD
IVA (21%): 8.4 USD
Total: 48.4 USD
Desenvolvedor
36 USD
Prazo
para 10 dias