Desarrollo de EA para MT5 — Piramidación Positiva, Gestión de Basket y Riesgo

Tarea técnica

Busco un desarrollador con experiencia demostrable en MQL5 para desarrollar desde cero un Expert Advisor (EA) para MetaTrader 5.

El proyecto consiste en un sistema de trading basado en piramidación positiva / anti-martingale, con gestión avanzada de operaciones por Basket, cálculo de riesgo, Global Break Even y control de beneficios.

La lógica del sistema está definida y se entregará una especificación técnica completa al desarrollador seleccionado.

1. Concepto principal

La primera operación será abierta MANUALMENTE por el usuario.

A partir de ese momento, el EA se encargará de gestionar la operación y, si el precio avanza a favor de la posición, podrá añadir nuevas operaciones.

El EA solamente abrirá nuevas operaciones cuando el precio avance a FAVOR de la dirección inicial.

Ejemplo BUY:

  • Se abre manualmente una primera operación BUY.

  • Si el precio avanza la distancia configurada a favor, el EA abre una segunda BUY.

  • Si vuelve a avanzar la distancia configurada desde la última entrada, abre una tercera BUY.

  • Y así sucesivamente, respetando el número máximo de operaciones configurado.

Ejemplo de multiplicador 2.0:

1 → 2 → 4 → 8 lotes

Ejemplo de multiplicador 1.5:

1 → 1.5 → 2.25 → 3.375 lotes

Para SELL, la lógica será exactamente inversa.

IMPORTANTE: si el precio se mueve en contra de la posición, el EA NO debe abrir nuevas operaciones.

2. Gestión del riesgo inicial

El usuario podrá configurar desde el Dashboard un porcentaje de riesgo.

Por ejemplo:

Riesgo = 1% del balance.

El EA calculará automáticamente el Stop Loss inicial de la primera operación para que la pérdida aproximada corresponda al riesgo configurado.

El cálculo debe tener en cuenta las características reales del símbolo y del broker, utilizando los parámetros correspondientes de MQL5.

No se deben utilizar valores de pip fijos.

Debe ser compatible con diferentes instrumentos como:

  • Forex

  • Oro

  • Índices

  • CFDs

  • Criptomonedas

  • Otros símbolos disponibles en MT5

3. Stop Loss manual de la primera operación

Este punto es MUY IMPORTANTE.

El EA calculará inicialmente el Stop Loss de la primera operación según el porcentaje de riesgo configurado.

Sin embargo, el usuario podrá modificar manualmente ese Stop Loss desde el gráfico arrastrándolo.

Ejemplo:

El riesgo configurado calcula una pérdida de aproximadamente 100 USD.

El usuario considera que el mercado necesita un Stop Loss más amplio y lo mueve manualmente para asumir aproximadamente 120 USD de riesgo.

A partir de ese momento, el EA debe respetar ese nuevo Stop Loss.

NO debe volver a colocar el SL calculado originalmente.

El Stop Loss manual de la primera operación será considerado como el SL definitivo de esa operación hasta que se active la siguiente fase de gestión.

4. Global Basket Break Even

Cuando se abre la segunda operación, comienza la gestión mediante Global Basket Break Even.

El Break Even NO será individual por operación.

Todas las operaciones pertenecientes al mismo Basket se gestionarán conjuntamente.

El EA deberá:

  • Calcular el precio de Global Break Even del Basket.

  • Tener en cuenta, cuando corresponda, comisión y swap.

  • Mover los Stop Loss de todas las operaciones del Basket al mismo nivel de Global BE.

  • Recalcular el Global BE cada vez que se añade una nueva operación.

  • Actualizar los Stop Loss de todas las operaciones del Basket después de cada nueva entrada.

El objetivo es que el conjunto de operaciones del Basket quede protegido aproximadamente en break even neto.

5. Baskets independientes

El EA debe permitir trabajar con múltiples Baskets independientes.

Un Basket estará formado por:

  • La primera operación manual.

  • Todas las operaciones añadidas posteriormente por el EA.

  • Mismo símbolo.

  • Misma dirección.

Cada Basket debe tener su propio identificador y mantener independientemente:

  • Basket ID

  • Dirección

  • Número de operaciones

  • Total de lotes

  • Precio medio

  • Global BE

  • Próxima entrada

  • Próximo lote

  • P/L actual

  • Objetivo de beneficio

Un Basket nunca debe afectar a otro Basket.

6. Distancia entre operaciones

La distancia para abrir nuevas operaciones será configurable.

La siguiente operación se calculará SIEMPRE desde la última operación ejecutada, no desde la primera.

Ejemplo BUY:

Entrada 1 = 1.1000
Distancia = 50 puntos

Entrada 2 = 1.1050

Si vuelve a avanzar 50 puntos:

Entrada 3 = 1.1100

Y así sucesivamente.

Para SELL se aplicará la lógica inversa.

7. Multiplicador de lotaje

El multiplicador será configurable desde el Dashboard.

Ejemplos:

1.5x → 1 / 1.5 / 2.25 / 3.375

2.0x → 1 / 2 / 4 / 8

Los lotes deberán normalizarse correctamente según:

  • Volumen mínimo

  • Volumen máximo

  • Volume Step

  • Restricciones del broker

También deberá existir un límite máximo de lotaje como medida de seguridad.

8. Objetivo de beneficio del Basket

El usuario podrá configurar un Profit Target total para cada Basket.

Por ejemplo:

Profit Target = 700 USD.

El EA deberá sumar el resultado neto de todas las operaciones pertenecientes al Basket.

Cuando el Basket alcance el objetivo configurado, el EA deberá cerrar TODAS las operaciones pertenecientes a ese Basket.

El Profit Target será independiente para cada Basket y no será un objetivo global de toda la cuenta.

9. Dashboard

Se requiere un Dashboard visual y funcional en el gráfico.

Debe mostrar información relevante como:

  • Estado del EA

  • Basket ID

  • Dirección

  • Número de operaciones

  • Máximo de operaciones

  • Total de lotes

  • Riesgo %

  • Riesgo inicial en dinero

  • Precio medio

  • Global BE

  • Precio actual

  • P/L actual del Basket

  • Profit Target

  • Próxima entrada

  • Próximo lote

  • Spread

También deberá existir un botón para cerrar el Basket.

10. Parámetros configurables

Entre otros:

  • Risk %

  • Distance

  • Unidad de distancia

  • Lot Multiplier

  • Profit Target

  • Maximum Trades

  • Maximum Lot

  • Maximum Spread

  • Magic Number

  • Slippage / Deviation

Los parámetros deberán estar correctamente organizados y ser fáciles de modificar.

11. Seguridad y ejecución

El EA debe comprobar correctamente:

  • Margin disponible

  • Spread

  • Stop Level

  • Freeze Level

  • Tick Size

  • Tick Value

  • Point

  • Digits

  • Contract Size

  • Volume Step

  • Volumen mínimo y máximo

  • Permisos de trading

  • Mercado abierto

  • Condiciones de ejecución del broker

  • Filling Mode

También debe evitar operaciones duplicadas provocadas por múltiples ticks, latencia o reinicios.

12. Recuperación después de reinicios

El EA debe ser capaz de recuperar correctamente el estado de los Baskets después de:

  • Reiniciar MT5

  • Reiniciar el EA

  • Cambiar de timeframe

  • Reiniciar el PC/VPS

  • Volver a conectar el terminal

No debe duplicar operaciones ni perder el seguimiento de los Baskets existentes.

13. Cierre manual

Si el usuario cierra manualmente una operación o parte de un Basket, el EA deberá detectar la situación y actualizar correctamente:

  • Número de operaciones

  • Total de lotes

  • P/L

  • Global BE

  • Próxima entrada

  • Estado del Basket

Si el Basket queda completamente cerrado, deberá limpiarse correctamente su estado.

14. Tipo de cuenta

El desarrollo está pensado principalmente para cuentas MT5 de tipo HEDGING, ya que necesitamos mantener múltiples posiciones independientes.

El desarrollador deberá tener experiencia trabajando con cuentas Hedging en MQL5.

15. Calidad del código

Busco un desarrollo profesional, estable y modular.

El código debe estar correctamente estructurado y ser fácil de mantener y modificar en el futuro.

El EA deberá probarse en diferentes instrumentos y condiciones de mercado.

IMPORTANTE

No busco un EA básico de apertura y cierre de operaciones.

La parte más importante del proyecto es la correcta implementación de:

  • Gestión de Baskets

  • Piramidación positiva

  • Cálculo de riesgo

  • Global Break Even

  • Gestión de múltiples posiciones

  • Control del lotaje

  • Recuperación después de reinicios

  • Ejecución segura y compatible con diferentes brokers

Dispongo de una especificación técnica completa con todos los detalles, reglas, casos especiales y criterios de prueba.

Esta documentación se facilitará al desarrollador seleccionado o a los candidatos preseleccionados.

Se valorará especialmente:

  • Experiencia demostrable desarrollando EAs profesionales en MQL5.

  • Experiencia con cuentas Hedging.

  • Experiencia con gestión de múltiples posiciones.

  • Experiencia con Basket Management.

  • Experiencia con sistemas de Break Even global.

  • Experiencia con gestión de riesgo y cálculo dinámico de lotaje.

  • Buena comunicación y, preferiblemente, dominio del español.

Por favor, al presentar una propuesta, indicar ejemplos de EAs similares desarrollados anteriormente y explicar brevemente la experiencia con proyectos de este tipo.


Han respondido

1
Desarrollador 1
Evaluación
(395)
Proyectos
556
41%
Arbitraje
30
57% / 3%
Caducado
57
10%
Libre
Ha publicado: 11 ejemplos
2
Desarrollador 2
Evaluación
(13)
Proyectos
21
38%
Arbitraje
0
Caducado
1
5%
Trabaja
3
Desarrollador 3
Evaluación
(515)
Proyectos
554
53%
Arbitraje
13
69% / 15%
Caducado
3
1%
Libre
4
Desarrollador 4
Evaluación
(560)
Proyectos
856
61%
Arbitraje
33
27% / 45%
Caducado
24
3%
Trabaja
Ha publicado: 1 ejemplo
5
Desarrollador 5
Evaluación
(62)
Proyectos
92
16%
Arbitraje
4
0% / 25%
Caducado
2
2%
Libre
6
Desarrollador 6
Evaluación
(215)
Proyectos
280
21%
Arbitraje
27
56% / 15%
Caducado
0
Trabajando
7
Desarrollador 7
Evaluación
(293)
Proyectos
367
30%
Arbitraje
37
27% / 65%
Caducado
10
3%
Trabaja
Ha publicado: 10 ejemplos
8
Desarrollador 8
Evaluación
(134)
Proyectos
174
40%
Arbitraje
10
40% / 10%
Caducado
30
17%
Libre
9
Desarrollador 9
Evaluación
(634)
Proyectos
743
34%
Arbitraje
49
53% / 39%
Caducado
14
2%
Trabaja
10
Desarrollador 10
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
11
Desarrollador 11
Evaluación
(184)
Proyectos
318
24%
Arbitraje
24
38% / 13%
Caducado
23
7%
Libre
Ha publicado: 3 ejemplos
12
Desarrollador 12
Evaluación
(3)
Proyectos
3
0%
Arbitraje
0
Caducado
0
Libre
Ha publicado: 2 ejemplos
13
Desarrollador 13
Evaluación
(15)
Proyectos
15
33%
Arbitraje
1
0% / 100%
Caducado
1
7%
Libre
14
Desarrollador 14
Evaluación
(438)
Proyectos
649
53%
Arbitraje
35
63% / 20%
Caducado
7
1%
Trabaja
15
Desarrollador 15
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
16
Desarrollador 16
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
17
Desarrollador 17
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
18
Desarrollador 18
Evaluación
(10)
Proyectos
12
33%
Arbitraje
0
Caducado
2
17%
Trabaja
Ha publicado: 1 ejemplo
19
Desarrollador 19
Evaluación
(3)
Proyectos
4
0%
Arbitraje
1
100% / 0%
Caducado
0
Libre
20
Desarrollador 20
Evaluación
(1)
Proyectos
1
0%
Arbitraje
1
0% / 0%
Caducado
0
Libre
21
Desarrollador 21
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
22
Desarrollador 22
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
23
Desarrollador 23
Evaluación
(3)
Proyectos
4
0%
Arbitraje
0
Caducado
3
75%
Libre
24
Desarrollador 24
Evaluación
(10)
Proyectos
12
8%
Arbitraje
2
0% / 100%
Caducado
0
Libre
25
Desarrollador 25
Evaluación
(79)
Proyectos
106
56%
Arbitraje
5
80% / 20%
Caducado
5
5%
Trabajando
26
Desarrollador 26
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
27
Desarrollador 27
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
28
Desarrollador 28
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
29
Desarrollador 29
Evaluación
(574)
Proyectos
945
47%
Arbitraje
309
58% / 27%
Caducado
125
13%
Libre
Solicitudes similares
NECESITO UN BOT QUE OPERE EN ORO 24/5 DONDE ANALICE EL MERCADO, CONFORME SU FUERZA TOME OPERACIONES CORTAS TIPO SCALPING CORTO, SEÑALES ABIERAS POR TIEMPO LIMITADO QUE SE ADAPTE AL PRECIO DEL MERCADO Y SU VOLATILIDAD
Señal de compra: la línea principal del indicador MACD cruza la línea de señal de abajo hacia arriba (macd_current>signal_current && macd_previous<signal_previous) Señal de venta: la línea principal del indicador MACD cruza la línea de señal de arriba hacia abajo (macd_current<signal_current && macd_previous>signal_previous) En la figura de abajo se muestra un ejemplo de compra y venta
Vendo soluciones matematicas para creacion de EAs estas soluciones son eficaces para la creacion de robots de EA del mercado como por ejemplo una solución basada en breakout una solución disruptiva de franja que te ara divertirte y disfrutar del treiding

Información sobre el proyecto

Presupuesto
400 - 1000 USD
Plazo límite de ejecución
a 30 día(s)