Modificacion EA Mt5

MQL5 专家

指定

Tengo un EA ya operativo en MetaTrader 5, y me gustaría que realizaras unas modificaciones específicas. A continuación, te detallo cómo funciona actualmente el EA y luego te explico las instrucciones precisas que deben implementarse para lograr el comportamiento deseado.


1. Funcionamiento actual del EA (base HARD10)

  • El EA abre una operación de compra o venta al iniciarse, dependiendo del parámetro OperarEnVenta (true = venta, false = compra).

  • La operación se abre con un LoteInicial , un SL y TP en pips definidos por parámetros.

  • Si la operación se cierra por Stop Loss (SL):

    • Se multiplica el volumen por el MultiplicadorLotes para la próxima operación.

    • Se incrementa un contador de SLs consecutivos.

    • Si se alcanza el número máximo de SLs consecutivos ( MaximosSLseguidos ), el EA se detiene.

  • Si la operación se cierra por Take Profit (TP):

    • El lote se reinicia al valor inicial.

    • El contador de SLs se reinicia.

    • Si DetenerTrasTP = true , el EA se detiene.

  • Si la operación se cierra de forma manual:

    • El lote se reinicia y se anulan los contadores.

  • El EA usa un MagicNumber para filtrar solo sus operaciones.

  • Todo esto ocurre en cada símbolo donde el EA está conectado, de forma independiente.


2. Modificaciones solicitadas

a) Activación por hora y minuto 

Deseo que el EA permanezca inactivo para abrir nuevas operaciones hasta que llegue una hora y minuto configurables. Sin embargo, sí debe seguir detectando cierres de operaciones previas, incluso antes de esa hora, ya que es necesario para mantener la lógica sincronizada con otros símbolos.

Inputs a añadir:


input bool ActivarHoraDeInicio = true;

input int HoraActivacion = 9;

input int MinutoActivacion = 30;

  • Si ActivarHoraDeInicio = true , el EA debe esperar a la hora indicada para comenzar a abrir operaciones.

  • Durante ese tiempo, debe seguir ejecutando la lógica de detección de cierres, actualización del contador de SLs, y ajuste del lote o SL/TP si corresponde.

  • Si el EA se conecta después de esa hora, debe activarse directamente.

b) Ampliación del SL y TP tras varias pérdidas consecutivas 

Deseo implementar una función que aumente el tamaño del StopLoss y del TakeProfit tras una cadena de operaciones perdedoras consecutivas.

Inputs a añadir:

input bool ActivarSLTPExpandido = true;
input int SLsAntesDeExpandir = 5;
input double FactorSLTPExpandido = 1.5; // Por ejemplo: multiplica SL y TP por 1.5


Lógica esperada:

  • Si ActivarSLTPExpandido = true y se han acumulado SLsAntesDeExpandir pérdidas consecutivas o más, entonces:

    • El próximo trade utilizará un SL y TP multiplicados por FactorSLTPExpandido .

  • Si se alcanza un TP o se cierra manualmente:

    • El lote, SL y TP vuelven a los valores originales.

c) Sincronización de estado entre múltiples gráficos

Actualmente, si el EA está conectado en dos gráficos distintos (por ejemplo, EURUSD y XAUUSD), cada instancia trabaja de forma completamente independiente. Quiero cambiar eso.

Objetivo: que todas las instancias del EA (aunque estén en símbolos distintos) compartan la misma lógica de progresión y multiplicador.

Ejemplo:

  • En el gráfico del EURUSD el EA ha operado y ha tenido 3 SL consecutivos, por lo que el lote se ha multiplicado.

  • En el gráfico del XAUUSD el EA aún no ha sido activado (porque está esperando su hora de inicio).

  • Cuando se active el EA en el XAUUSD, debe heredar esa misma lógica, es decir:

    • Detectar que ya hay una serie de SL anteriores acumulados en otro símbolo.

    • Calcular y aplicar el mismo multiplicador de lotaje y, si corresponde, el SL/TP ampliado.

Requisitos técnicos:

  • Se puede usar un sistema de almacenamiento compartido entre instancias (variables globales, archivos, etc.).

  • Es fundamental que cada instancia del EA pueda saber cuál es el estado de progresión global antes de operar por primera vez.


3. Requisitos generales

  • Código limpio, eficiente, que compile sin errores.

  • Entregar archivo final en formato .mq5 .

  • Si alguna parte no es viable exactamente como la pido, estoy abierto a sugerencias técnicas.


附加的文件:

MQ5
HARD10.mq5
5.8 Kb

反馈

1
开发者 1
等级
(3)
项目
1
100%
仲裁
2
0% / 50%
逾期
0
空闲
2
开发者 2
等级
(619)
项目
722
33%
仲裁
46
48% / 41%
逾期
14
2%
已载入
3
开发者 3
等级
(134)
项目
174
40%
仲裁
10
40% / 10%
逾期
30
17%
空闲
4
开发者 4
等级
(184)
项目
317
24%
仲裁
23
35% / 13%
逾期
23
7%
空闲
发布者: 3 代码
5
开发者 5
等级
(45)
项目
91
13%
仲裁
34
26% / 59%
逾期
37
41%
空闲
6
开发者 6
等级
(515)
项目
554
53%
仲裁
13
69% / 15%
逾期
3
1%
空闲
7
开发者 7
等级
项目
0
0%
仲裁
2
0% / 50%
逾期
0
工作中
8
开发者 8
等级
(1)
项目
2
0%
仲裁
1
0% / 100%
逾期
0
空闲
发布者: 2 代码
相似订单
RSI BOT 30+ USD
Buenas, necesito hacer un bot o algo parecido que realice Compras o Ventas en dependencia del RSI, en temporalidades especificas , debe tener opcion para configurar : Temporalidad del Mercado, Periodo del RSI, cantidad de operciones abrir por cada tip, Cerrar opereciones en dependencia de las ganancias o perdidas.Es importante que el bot no haga Compras y ventas en el mismo mercado solo la que se le indique

项目信息

预算
30 - 100 USD