Arbitraje de cobertura
La estrategia comercial Estrategia de arbitraje de cobertura se basa en la diferencia de latencia y la diferencia de cotizaciones entre los proveedores de liquidez en dos corredores o intercambios de criptomonedas diferentes.
Cómo funciona:
Compara precios entre dos bolsas/corredores y, tras detectar una diferencia de arbitraje (diferencia de apertura), la estrategia abre dos órdenes opuestas, de compra y de venta (orden de compra en la bolsa/corredor con el precio más bajo, orden de venta en la bolsa/corredor con el precio más alto), simultáneamente. Después, espera la diferencia de precio opuesta (diferencia de cierre) cuando el precio en la bolsa/corredor con la orden de venta es ahora inferior al del corredor/corredor con la orden de compra y cierra ambas posiciones. A continuación, busca una nueva diferencia de apertura y reinicia el ciclo.
Esquema de funcionamiento simplificado del arbitraje de cobertura:

Pestaña de instrumentos y órdenes de estrategia de cobertura:

Descripción de parámetros:
Habilitado – habilita o deshabilita la negociación en un instrumento seleccionado.
Cálculo de desplazamiento – permite habilitar el cálculo de desplazamiento automático.
Etiqueta – permite asignar una etiqueta a la estrategia.
Símbolo 1 – nombre del símbolo en el lado 1.
Símbolo 2 – nombre del símbolo en el lado 2.
Lotes 1 – tamaño del lote a negociar en el lado 1.
Lotes 2 – tamaño del lote a negociar en el lado 2.
Diferencia para abrir – diferencia de precio (puede expresarse en puntos, moneda o porcentajes) entre 2 corredores/bolsas para abrir una operación de arbitraje
Diferencia para cerrar – diferencia de precio (puede expresarse en puntos, moneda o porcentajes) entre 2 corredores/bolsas para cerrar un acuerdo de arbitraje
Deslizamiento 1: la orden se envía con la desviación máxima permitida del precio para el lado 1. Si el precio supera la desviación permitida, la orden se rechaza o se recotiza. Funciona solo con cuentas de ejecución instantánea y órdenes limitadas en cuentas FIX API. No tiene efecto en cuentas de ejecución de mercado.
Deslizamiento 2 – desviación máxima permitida del precio al que se envía la orden para el lado 2.
Max Spread 1– spread máximo permitido para el lado 1. Si el spread real es mayor que el valor de Max Spread 1, se ignoran las señales de arbitraje.
Max Spread 2 – spread máximo permitido para el lado 2. Si el spread real es mayor que el valor de Max Spread 2, se ignoran las señales de arbitraje.
Min Spread 1 – spread mínimo permitido para el lado 1. Si el spread real es menor que el valor de Min Spread 1, las señales de arbitraje se ignoran.
Min Spread 2 – spread mínimo permitido para el lado 2. Si el spread real es menor que el valor de Min Spread 1, las señales de arbitraje se ignoran.
Offset – desplazamiento constante entre los precios de ambos lados (en puntos).
Curr Diff 1 – muestra la diferencia actual entre corredores/bolsas para el lado 1.
Curr Diff 2 – muestra la diferencia actual entre corredores/bolsas para el lado 2.
Max Diff 1 – muestra la diferencia máxima detectada (después del reinicio del software o el restablecimiento de parámetros) entre corredores/bolsas para el lado 1.
Max Diff 2 – muestra la diferencia máxima detectada (después del reinicio del software o el restablecimiento de parámetros) entre corredores/bolsas para el lado 2.
Curr Spread 1– spread actual en el lado 1 (en puntos).
Curr Spread 2– spread actual en el lado 2 (en puntos).
Al hacer clic derecho en un par en la sección de pares de cobertura, puede abrir el menú de administración de pares de arbitraje:

Par de cobertura:
Editar – abre la ventana de propiedades del par de cobertura para editar.
Clonar – clonar el par de cobertura seleccionado.
Agregar – agrega nuevo par de cobertura.
Eliminar – elimina el par de cobertura seleccionado.
Desbloquear – desbloquea el par de cobertura seleccionado si fue bloqueado debido a errores.
Cerrar trato por mercado – cierra manualmente el trato en el par seleccionado por precio de mercado.
Abrir trato manualmente – permite abrir trato manualmente.
Editar niveles de apertura y cierre (cripto)– permite establecer varias diferencias en los niveles de apertura/cierre para el par de cobertura.
La diferencia de niveles múltiples para abrir permite no perder la situación de arbitraje si la diferencia de precios entre los intercambios aumenta después de abrir la primera operación de arbitraje.
Restablecer diferencia máxima – restablece los valores de diferencia máxima para el par seleccionado
Restablecer contador de transacciones (no) rentables – restablece el indicador de ganancias para el par seleccionado.
El indicador de ganancias utiliza una gama de tonos de color que van desde el verde brillante (rendimiento positivo) hasta el rojo brillante (rendimiento negativo) para indicar visualmente cuán rentable es el par de cobertura.
Registrar estadísticas – abre la ventana de opciones del registrador de estadísticas.
Ventana de propiedades del par de cobertura:

Lista de parámetros:
Símbolo – permite seleccionar un símbolo de la lista de símbolos de la sesión (solo los símbolos que están activados en la pestaña Símbolos de la sesión se muestran en la lista desplegable).
Lotes – tamaño de la orden que se utilizará para operar.
Existen algunas diferencias en el tamaño del lote según el tipo de cuenta:
FIX cuentas API:
Para todas las cuentas FIX API excepto Lmax, los tamaños de lote completos para monedas se utilizan sin multiplicador, es decir, 1000 (= 0,01 en mt4), 10000, 100000, etc.; para índices/materias primas, los tamaños de lote dependen del tamaño del contrato; recomendamos verificar las especificaciones del contrato del corredor antes de establecer los tamaños de lote.
Cuentas API Lmax FIX:
Para las cuentas Lmax FIX API, los tamaños de lote se utilizan con un multiplicador de 10, es decir, 0,1 (=0,01 en mt4), 1, 10, etc.; para índices/materias primas, los tamaños de lote son 1, 2...10, etc.
Intercambios de criptomonedas:
En la mayoría de los exchanges de criptomonedas, el tamaño del lote representa una unidad de la moneda base. Para los pares BTC, la moneda base es BTC, para los pares ETH, ETH, etc. Por lo tanto, 1 lote equivale a 1 BTC, 1 ETH o 1 LTC, según el par. En algunos casos, representa contratos.
Deslizamiento abierto – deslizamiento máximo permitido para órdenes de apertura (funciona para órdenes limitadas), si el deslizamiento real es mayor que el permitido, la orden se rechaza.
Deslizamiento de cierre – deslizamiento máximo permitido para órdenes de cierre (funciona para órdenes limitadas), si el deslizamiento real es mayor que el permitido, la orden se rechaza.
Control de propagación – permite establecer el número de ticks anteriores para el control de propagación.
Permitir compra – permitir órdenes de compra para el lado seleccionado
Permitir venta – permitir órdenes de venta para el lado seleccionado
Verificar cantidad – verifica si hay suficiente liquidez en TOB Top of the book para completar una orden con el tamaño de lote especificado, si no, se ignora la situación de arbitraje.
Virtual – Abre una orden virtual en lugar de una real en el lado seleccionado. Permite usar el software en modo de una sola pierna. ¡Importante! Los métodos de apertura y cierre deben configurarse como abrir ambos/cerrar ambos para que esta opción funcione correctamente.
Gestión de pedidos - llama a la ventana de gestión de parámetros finales para el lado seleccionado.
La ventana de opciones de seguimiento aparecerá solo cuando se edite un par de cobertura existente; no puede ajustar estos parámetros al agregar un nuevo par de cobertura.
Apalancamiento abierto – permite establecer el apalancamiento para abrir transacciones, utilizado únicamente para intercambios de criptomonedas.
Apalancamiento cercano – permite establecer el apalancamiento para cerrar el trato, se utiliza solo para intercambios de criptomonedas.
0 – comercio con apalancamiento deshabilitado
1 – Comercio con apalancamiento habilitado
En algunos intercambios se puede establecer el valor real del apalancamiento
Comentario – permite poner comentarios para el intercambio
Parámetros comunes :
Diferencia para abrir – diferencia de precio (puede expresarse en puntos, moneda o porcentajes) entre 2 corredores/bolsas para abrir una operación de arbitraje
Diferencia para cerrar – diferencia de precio (puede expresarse en puntos, moneda o porcentajes) entre 2 corredores/bolsas para cerrar una operación de arbitraje
Diferencia máxima para abrir: diferencia máxima permitida para abrir una operación de arbitraje. Si la diferencia real es mayor que la permitida, se ignorará el arbitraje.
Diferencia máxima para cerrar – diferencia máxima permitida para cerrar un acuerdo de arbitraje
Beneficio mínimo – distancia mínima en pips que debe cubrir el precio del punto de entrada para que los parámetros de diferencia de cierre entren en vigencia (para arbitraje de criptomonedas, se puede establecer en 0)
Beneficio máximo – si una de las partes alcanza el valor de beneficio máximo, el acuerdo de arbitraje se cerrará automáticamente para evitar llamadas de margen.
Offset - cambio constante entre precios en ambos lados
Desviación máxima de – Estos parámetros se refieren al cálculo del desplazamiento. Permiten establecer la desviación máxima permitida del desplazamiento respecto al valor de 'Diff to open' para la operación de apertura. Si el cambio de desplazamiento es mayor que el permitido por los parámetros, la cobertura multitramo/DAAS ignorará las señales de arbitraje.
Max dev c – lo mismo que lo anterior para cerrar el trato.
Apertura inversa – órdenes abiertas en dirección opuesta al disparador de arbitraje en la apertura, es decir, vender barato y comprar caro.
Cierre inverso – abrir órdenes en dirección opuesta al disparador de arbitraje al cierre, es decir, vender barato y comprar caro.
Verificar dirección – si se permite más de 1 trato por par, se verifica la dirección del primer trato y se abre uno subsiguiente en la misma dirección.
Número máximo acumulado de lotes – número máximo de lotes para 1 o varias transacciones simultáneas permitidas para el par de cobertura.
Número máximo acumulado de operaciones: número máximo de operaciones simultáneas permitidas para el par de cobertura. Por defecto, es una operación por par.
Modo emulador: permite emular operaciones en tiempo real. El software abrirá operaciones virtuales basándose en los precios reales de los brókeres/bolsas.
Habilitado – ejecutar par de cobertura en modo de emulación.
Slip.open 1: se agregará un deslizamiento al abrir una operación virtual en el lado 1
Slip.open 2: se agregará un deslizamiento al abrir una operación virtual en el lado 2
Slip.close 1: se agregará un deslizamiento al cerrar un trato virtual en el lado 1
Slip.close 2: se agregará un deslizamiento al cerrar un trato virtual en el lado 2
Modo de cálculo de ganancias (diff) – permite configurar la visualización de las ganancias y el modo de cálculo
Comisión 1(%) – comisión por transacción cobrada por el corredor/bolsa del lado 1 que se incluirá en el cálculo del resultado de la transacción de arbitraje.
Comisión 2(%) – comisión por transacción cobrada por el corredor/bolsa del lado 2 que se incluirá en el cálculo del resultado de la transacción de arbitraje.
Las comisiones se pueden establecer en puntos o porcentajes, dependiendo del modo de ganancia seleccionado.
¡Importante! Las comisiones se cobran dos veces por ronda de arbitraje (por apertura y por cierre) por cada parte (4 comisiones en total).
Modo de beneficio:
Puntos – las ganancias se mostrarán en puntos
Moneda: las ganancias se mostrarán en moneda
Campo Moneda: permite establecer la moneda base en la que se mostrará la ganancia para el par de cobertura
Entrada de diferencia – modo de cálculo de diferencias de precio (aplicado a la diferencia de apertura/cierre, diferencia actual 1,2 y diferencia máxima 1,2)
Puntos – la diferencia se calculará en puntos
Moneda – la diferencia se calculará en moneda
Porcentajes – la diferencia se calculará en porcentajes
Entrada de deslizamiento – permite seleccionar el modo de cálculo de deslizamiento.
Puntos – el deslizamiento se mostrará en puntos
Porcentajes: el deslizamiento se mostrará en porcentajes
Las fórmulas de cálculo de diferencia actual dependen del modo de entrada de diferencia seleccionado:
Entrada diferencial en puntos:
hedgingPair.CurrDiff1 = (Oferta1 - Demanda2 - desplazamiento_en_pips) / Math.Min(Símbolo1.ValorPunto, Símbolo2.ValorPunto);
hedgingPair.CurrDiff2 = (Oferta2 - Demanda1 + desplazamiento_en_pips) / Math.Min(Símbolo1.ValorPunto, Símbolo2.ValorPunto);
Entrada diferencial en moneda:
hedgingPair.CurrDiff1 = (Oferta1 hedgingPair.Lotes1 - 0,01 Oferta1 hedgingPair.Lotes1*hedgingPair.ComisiónComercial1 - Demanda2*hedgingPair.Lotes2 - 0,01 Demanda2 * hedgingPair.Lotes2*hedgingPair.ComisiónComercial2);
hedgingPair.CurrDiff2 = (Oferta2 hedgingPair.Lotes2 - 0,01 Oferta2 hedgingPair.Lotes2 hedgingPair.ComisiónComercial1 - Demanda1 hedgingPair.Lotes1 - 0,01 Demanda1 hedgingPair.Lotes1 hedgingPair.ComisiónComercial1);
Entrada diferencial en porcentajes:
hedgingPair.CurrDiff1 = 100 * (Oferta1 - Demanda2 - desplazamiento_en_pips) / Math.Max(Oferta1, Demanda2);
hedgingPair.CurrDiff2 = 100 * (Oferta2 - Demanda1 + desplazamiento_en_pips) / Math.Max(Oferta2, Demanda1);
Tabla de diferencias de apertura/cierre – permite aplicar diferentes diferencias de apertura/cierre para períodos de tiempo específicos durante el día
Agregar – agregar nueva regla
Editar – editar la regla seleccionada
Eliminar – eliminar regla
Hora de inicio – hora de inicio para que se aplique la regla (se utiliza la hora local del servidor/máquina)
Hora de finalización – hora de finalización para que se aplique la regla (se utiliza la hora local del servidor/máquina)
Diff para abrir – diferencia para abrir que se aplicará durante el período especificado
Diff para cerrar – diferencia para cerrar que se aplicará durante el período especificado
Cierre dinámico – la idea de la función de cierre dinámico, pero calcula la diferencia de cierre dinámicamente dependiendo de la ganancia que quieras obtener por el trato en lugar de usar la diferencia fija para cerrar especificada en las propiedades del par.
Habilitado – aplicar la función de cierre dinámico para este par
Objetivo de beneficio en moneda: beneficio que desea obtener del acuerdo de arbitraje (se puede mostrar en puntos o moneda según el modo de beneficio seleccionado).
Diferencia de apertura (aprox.) – diferencia aproximada para abrir que se debe ingresar para obtener la ganancia objetivo
Cerrar diferencia (aprox.) – diferencia aproximada para cerrar que se debe ingresar para obtener la ganancia objetivo
Solo cantidad disponible para operar – Comprueba el TOB en ambos brókeres/bolsas y, si no hay suficiente liquidez para abrir operaciones con los lotes especificados, el software abre operaciones con el máximo disponible en ambos lados. Por ejemplo, si configura la operación con el lote 1, pero uno de los brókeres/bolsas no tiene suficiente liquidez en el TOB (por ejemplo, 0,5 lotes), el software abrirá operaciones con un tamaño de lote de 0,5 en ambos mercados.
Permitir cerrar si está deshabilitado – permite cerrar operaciones de cobertura si el par está deshabilitado pero aún quedan operaciones de cobertura.
Cerrar múltiples tratos – cierra todos los tratos en diferencia para cerrar el disparador (si se permite más de 1 trato de arbitraje por par), si está deshabilitado, solo se cerrará el último trato.
Mostrar indicador de ganancias – habilita/deshabilita el indicador de ganancias para este par de cobertura.
Recálculo de desplazamiento – habilita el cálculo de desplazamiento automático.
Grupo de desplazamiento: asigna el grupo de desplazamiento al que pertenece el par (se puede seleccionar en el menú desplegable). Para eliminar la asociación del grupo, simplemente borre el valor.
Etiqueta – permite asignar una etiqueta a la estrategia. Se utiliza para ordenar los pares de cobertura en la sección correspondiente. Al iniciar el software, los pares se ordenan alfabéticamente por nombre de etiqueta.