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

Trabajo finalizado

Plazo de ejecución 3 días
Comentario del 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
Comentario del Ejecutor
Excelente cliente, un placer trabajar con él.

Tarea técnica

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);
      }
   }
}


Han respondido

1
Desarrollador 1
Evaluación
(88)
Proyectos
126
34%
Arbitraje
13
38% / 31%
Caducado
31
25%
Trabaja
2
Desarrollador 2
Evaluación
(154)
Proyectos
257
24%
Arbitraje
12
25% / 8%
Caducado
15
6%
Trabaja
3
Desarrollador 3
Evaluación
(250)
Proyectos
400
38%
Arbitraje
82
41% / 20%
Caducado
69
17%
Trabajando
4
Desarrollador 4
Evaluación
(50)
Proyectos
72
19%
Arbitraje
3
0% / 0%
Caducado
1
1%
Libre
Solicitudes similares
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
Necesito un bot de alta frecuencia que funcione en indices sinteticos en la Prueba demo Be funding y TopTen Funding, actualmente se que ya existe y que varios lo usan así como en forex para pasar las pruebas en un día
En ingles: I need a BOT for Forex, especially I trade in EURUSD, to work on MT5 in MQL5, open trades only in 30 minute and one hour trend. That the condition for placing an order is that in 5-minute or 3-minute charts (customizable), a maximum or minimum has been exceeded (as applicable) and an FVG has been generated, on the way to exceeding that maximum or minimum, in its retracement now in trend, the price breaks
Hi guys, I need to develop a local copy trading bot that: - Copy all trades from master account to client account - Allow to change magic number and comments on client account - Allow to add a custom delay un execution on cliente account - Allow to modify TP and SL from master account to cleinte account a custom pips/ticks value - Allow to hide SL and TP - Make Imitation manual trading on client account - Allow to
He programado una representación del precio personalizada. Es un tipo de vela parecida al estilo heikin ashi. Necesito integrar este indicador en un asesor experto q incluye alarmas, aperturas y cierre de operaciones, reapertura en ciertzs condiciones, stop y trailing stop junto con una estabilidad de las posiciones. Ademas de poder configurar la temporalidad con la que trabajar y el tamano de posicion inicial etc

Información sobre el proyecto

Presupuesto
40+ USD
IVA (21%): 8.4 USD
Total: 48.4 USD
Para el ejecutor
36 USD
Plazo límite de ejecución
a 10 día(s)