Latency Arbitrage Pro
- Asesores Expertos
- Thomas Bradley Butler
- Versión: 2.30
- Actualizado: 15 noviembre 2023
- Activaciones: 5
ESTO FUNCIONARA EN MERCADOS VOLITALILES, NO EN CALMAS. DEBE ENCONTRAR LOS VALORES USTED MISMO; NO PROPORCIONO ESTO COMO SU IMPOSSBLE. ARB ES TIEMPO REAL
Pruebe la versión completa aquí: https://www.mql5.com/en/market/product/103005
No funciona en backtest ya que está pensado para 2 pares. Latency Arb Pro tiene como objetivo encontrar y capitalizar oportunidades de arbitraje entre dos pares de divisas especificados, "EURUSD" y "GBPUSD". La idea detrás de las operaciones de arbitraje es aprovechar las diferencias temporales de precios entre estos dos pares de divisas correlacionadas para obtener un beneficio. Utilice bajo su propio riesgo.
Así es como funciona el EA:
-
Parámetros de entrada:
- Antes de ejecutar el EA, puede personalizar algunos parámetros para adaptarlos a sus preferencias:
- CurrencyPair1 y CurrencyPair2: Estos son los dos pares de divisas que el EA monitorizará en busca de oportunidades de arbitraje. Por defecto, mira "EURUSD" y "GBPUSD", pero puede cambiarlos según sus necesidades.
- Umbral de arbitraje: Es la diferencia mínima de precio necesaria para activar una operación de arbitraje. Si la diferencia de precio entre "EURUSD" bid y "GBPUSD" ask es mayor que este umbral, el EA detecta una oportunidad de arbitraje.
- Antes de ejecutar el EA, puede personalizar algunos parámetros para adaptarlos a sus preferencias:
-
Inicialización (función OnInit):
- Durante la fase de inicialización, el EA se suscribe a los feeds de precios de los pares de divisas especificados utilizando la función SymbolSelect. Esto le permite recibir precios de compra y venta en tiempo real para "EURUSD" y "GBPUSD".
- La función OnInit se ejecuta al cargar el EA en un gráfico.
-
Comprobación de Oportunidad de Arbitraje (función OnTick):
- La función OnTick es el núcleo del EA, y se ejecuta cada vez que hay un nuevo tick (actualización de precio) recibido del broker para cualquier símbolo en el gráfico.
- Dentro de esta función, los precios actuales de compra y venta para "EURUSD" y "GBPUSD" se obtienen utilizando la función SymbolInfoDouble.
- Se calcula la diferencia de precio entre el bid de "EURUSD" y el ask de "GBPUSD", y el EA comprueba si esta diferencia supera el ArbitrageThreshold especificado para determinar si existe una oportunidad de arbitraje.
-
Cálculo del tamaño del lote:
- Para ejecutar la operación de arbitraje, el EA calcula el tamaño del lote basándose en el margen disponible o en reglas específicas de gestión de riesgos que usted puede definir.
- La función NormalizeLotSize calcula el tamaño de lote óptimo considerando el margen libre, el valor del tick y el tamaño del tick de "EURUSD".
- El tamaño de lote calculado es entonces normalizado para asegurar que se alinea con el paso de lote, lote mínimo y lote máximo permitido por el broker.
-
Ejecución de operaciones de arbitraje (función OrderSend):
- Cuando se detecta una oportunidad de arbitraje (diferencia de precio > ArbitrageThreshold), el EA inicia dos operaciones simultáneamente:
- Vende "EURUSD" utilizando la función OrderSend con la operación OP_SELL.
- Compra "GBPUSD" utilizando la función OrderSend con la operación OP_BUY.
- El EA comprueba si las órdenes de operación se ejecutan correctamente y gestiona cualquier posible error o situación de recotización.
- Cuando se detecta una oportunidad de arbitraje (diferencia de precio > ArbitrageThreshold), el EA inicia dos operaciones simultáneamente:
-
Manejo de recotizaciones:
- Si la función OrderSend encuentra un error de recotización (Error 138), el EA toma la acción apropiada para evitar perder la oportunidad de arbitraje.
- El manejo de la recotización se consigue obteniendo el precio de compra o venta actualizado utilizando SymbolInfoDouble y reenviando la orden con el nuevo precio.
