Multi Account Trade Desk MT5
- Utilidades
- Versión: 1.77
- Activaciones: 10
Plataforma de negociación multicuenta MT5
## Breve descripción
Copiador de operaciones de tipo «MASTER a SLAVE» para todas las cuentas en MetaTrader 5, con
, coincidencia automática de símbolos de bróker, supervisión en tiempo real del estado de disponibilidad y
ejecución en paralelo.
## Descripción del producto
Multi Account Trade Desk MT5 está diseñado para operadores que gestionan varias cuentas de MT5
y desean disponer de un único punto central desde el que controlar el riesgo, el estado de las cuentas y la
operaciones.
Instala el mismo EA como MASTER en el terminal de origen y como SLAVE en cada
. Una instancia «SLAVE» supervisa toda la cuenta, por lo que no es necesario
asociar el copiador a cada gráfico de símbolo.
Cuando aparece una nueva posición o una orden pendiente en la cuenta MAESTRA, el sistema crea un
plan de operaciones lógico y envía órdenes a todas las cuentas READY en paralelo. Cada
SLAVE utiliza su propio precio en tiempo real del bróker y las especificaciones del contrato para calcular
el volumen y validar el spread, el margen, los niveles de stop y los permisos de negociación.
### Características principales
- Un único archivo EX5 con modos «MASTER» y «SLAVE» seleccionables
- Supervisión de todos los símbolos en toda la cuenta
- Copia operaciones manuales, entradas del Trade Assistant y operaciones de los EA
- Órdenes de mercado, órdenes pendientes, modificaciones de SL/TP, cierres parciales y cierres
- Tamaño de posición por cuenta: lote fijo, porcentaje, importe fijo y proporcional
- Coincidencia automática de símbolos entre brókers para divisas, metales, energía y los principales
como USTEC / US100 / NAS100 y DE40 / GER40 / DAX40
- Gestión de prefijos y sufijos, incluidos `.idx`, `.cash`, `.sml`, `.pro`, `.r`,
`_SB`, `+` y convenciones de nomenclatura similares de los brókers
- Comprobación previa continua en segundo plano con lotes, riesgo, margen, spread y motivo
- Lotes de comandos en paralelo con confirmaciones asíncronas de los brókers
- TTL corto de los comandos de mercado para rechazar ejecuciones retrasadas
- Límites por cuenta en cuanto a spread, lotes, pérdidas diarias, drawdown, riesgo abierto, posición, sesión,
dirección y tipo de orden
- Informe de conciliación de solo lectura
- Configuración persistente y recuperación tras reinicio
- Protección contra órdenes duplicadas y ausencia de reintentos automáticos tras una ejecución incierta
- Registro de eventos en CSV
### Modelo operativo importante
El producto sincroniza los terminales MT5 que se ejecutan en el mismo
o en un entorno VPS a través del directorio «MetaTrader Common Files». Cada
cuenta de trading requiere su propio terminal MT5 con sesión iniciada. No se requiere ninguna configuración de DLL ni de WebRequest
.
### Ajustes predeterminados de seguridad
La ejecución en vivo de SLAVE está desactivada por defecto. La ejecución en cuentas reales cuenta con un
segundo bloqueo de seguridad independiente. Las posiciones existentes en MASTER no se importan al
el inicio, a menos que se habilite explícitamente. La conciliación es solo a efectos informativos y nunca
repara ni reabre una posición automáticamente.
### Primera prueba recomendada
Utiliza primero cuentas de demostración. Configura un MASTER y un SLAVE, activa la
, compruebe la página de verificación previa y, a continuación, abra una operación pequeña con un Stop
Loss real. Añade más terminales ESCLAVAS solo después de confirmar que el proceso completo de apertura,
modificación y cierre de la operación.
### Aviso sobre riesgos
La negociación y la copia de operaciones conllevan riesgos financieros. Los precios del bróker, las
, las políticas de ejecución, el deslizamiento y la conectividad pueden variar entre
cuentas. Prueba siempre la configuración completa en cuentas de demostración antes de utilizar
fondos reales.
Multi Account Trade Desk MT5 — Guía de configuración
Se instala el mismo archivo EX5 único en todos los terminales de MetaTrader 5. El
parámetro `InpOperatingMode` determina si esa copia funciona como MASTER o como un
ESCLAVO.
## Modo de funcionamiento
| Entrada | Valores | Finalidad |
|---|---|---|
| `InpOperatingMode` | `MASTER` / `SLAVE` | `MASTER` supervisa las operaciones de origen y gestiona las cuentas conectadas. `SLAVE` valida y ejecuta los comandos en un terminal de destino. |
## Configuración de MASTER
| Entrada | Valor predeterminado | Función |
|---|---:|---|
| `InpHeartbeatWarningSeconds` | `3` | Muestra una advertencia cuando el pulso de un ESCLAVO no se ha actualizado durante este número de segundos. |
| `InpHeartbeatOfflineSeconds` | `10` | Marca al SLAVE como desconectado tras este tiempo de espera. Debe ser mayor que el valor de advertencia. |
| `InpRegistryRefreshMs` | `500` | Frecuencia con la que el MAESTRO actualiza el registro de cuentas compartidas y los acuses de recibo. |
| `InpMaximumDisplayedAccounts` | `20` | Número máximo de cuentas detectadas que se mantienen en la lista del panel de control. |
| `InpMaximumBatchAccounts` | `50` | Límite máximo de seguridad para el número de cuentas en un lote de comandos en paralelo. |
## Monitor de disponibilidad de MASTER
Estos parámetros conforman el plan de operaciones informativo que se muestra en el
pestaña «Preflight». Por sí solos, no realizan ninguna orden.
| Campo | Valor predeterminado | Función |
|---|---:|---|
| `InpPreflightDirection` | `BUY` | Dirección utilizada por el ejemplo de preparación en segundo plano. |
| `InpPreflightStopDistancePoints` | `500` | Distancia de stop loss de ejemplo, en puntos del bróker, utilizada para la validación continua del riesgo y el margen. |
| `InpPreflightRiskReward` | `2,0` | Distancia de ejemplo del «Take Profit» expresada como un múltiplo de la distancia del «Stop Loss». |
| `InpDefaultRiskPercent` | `1,0` | Valor porcentual de riesgo por defecto utilizado para el plan de preparación antes de que se apliquen los ajustes específicos de la cuenta. |
| `InpControllerReferenceLot` | `0,01` | Lote de referencia utilizado por los modos de dimensionamiento de lotes del controlador. No se aplica de forma obligatoria a las cuentas SLAVE. |
| `InpPreflightTTLSeconds` | `10` | Las solicitudes de comprobación previa más antiguas que este valor se rechazan por estar caducadas. |
| `InpIncludeMasterAccount` | `true` | Añade la cuenta MAESTRA al mismo flujo de trabajo de riesgo, preparación y supervisión. |
| `InpBackgroundPreflightMs` | `1000` | Intervalo entre los recálculos automáticos de la preparación. |
| `InpMarketCommandTTLms` | `1500` | Duración máxima de un comando de mercado. Un comando caducado se rechaza en lugar de ejecutarse con retraso. |
| `InpAllOrNothingBatch` | `false` | Cuando es `false`, se omiten las cuentas bloqueadas o fuera de línea y las cuentas READY continúan. Cuando es `true`, cualquier cuenta bloqueada impide que se ejecute todo el lote. |
## Copiador de operaciones MASTER
| Entrada | Valor por defecto | Qué hace |
|---|---:|---|
| `InpCopyMasterTrades` | `true` | Permite copiar en todas las cuentas las nuevas posiciones, órdenes pendientes, modificaciones y cierres de la cuenta MAESTRA. |
| `InpSourceMagicFilter` | `-1` | `-1` acepta cualquier número mágico. Establezca un número mágico específico para copiar solo un EA de origen. |
| `InpCopyManualTrades` | `true` | Incluye operaciones con el número mágico `0`, como las órdenes manuales y las operaciones abiertas mediante un asistente de gráficos. |
| `InpSourceCommentContains` | vacío | Filtro opcional de comentarios de origen que distingue entre mayúsculas y minúsculas. Si se deja vacío, no hay restricción de comentarios. |
| `InpTargetGroup` | vacío | Si se deja vacío, se incluyen todas las cuentas activadas. Introduzca un nombre de grupo para seleccionar únicamente las cuentas SLAVE que coincidan con la configuración indicada. |
| `InpCopyExistingPositionsOnStart` | `false` | Si se habilita, importa las posiciones que ya existían cuando se inició el MASTER. Mantén esta opción deshabilitada, salvo que sea intencionado, para evitar duplicaciones inesperadas. |
## Configuración de SLAVE
| Parámetro | Valor por defecto | Función |
|---|---:|---|
| `InpHeartbeatIntervalMs` | `1000` | Frecuencia con la que el SLAVE publica el estado de la cuenta, el saldo, el capital, el símbolo y el estado de seguridad. El valor mínimo aceptado es de 250 ms. |
| `InpAllowLiveExecution` | `false` | Bloqueo de ejecución principal. Ninguna orden de mercado o pendiente puede ejecutarse mientras esté desactivado. |
| `InpAllowRealAccountExecution` | `false` | Segundo bloqueo independiente para cuentas con dinero real. Las cuentas de demostración no requieren este segundo permiso. |
## Ajustes de la cuenta controlados desde el panel de control MASTER
Se guardan automáticamente para cada cuenta detectada y se restauran tras un
reinicio del terminal.
| Control | Finalidad |
|---|---|
| `Habilitado` | Incluye o excluye esta cuenta de todos los lotes de comandos. |
| `Bloqueo de emergencia` | Bloquea inmediatamente la ejecución de nuevas tareas para esta cuenta sin eliminar el resto de su configuración. |
| `Grupo` | Grupo lógico de cuentas utilizado por `InpTargetGroup`. |
| `Modo de cálculo del tamaño` | Selecciona «Lote fijo», «% del saldo», «% del capital», «Importe fijo», «Relación de lotes del controlador» u otro método compatible para calcular el tamaño del riesgo. |
| `Valor de dimensionamiento` | Valor numérico interpretado por el modo de dimensionamiento seleccionado. |
| `Spread máximo` | Bloquea la ejecución cuando el spread local de SLAVE supera este número de puntos del bróker. El valor `0` desactiva este límite. |
| `Lote máximo` | Limita el volumen calculado. El valor «0» desactiva este límite. Un valor inferior al mínimo del bróker bloquea la orden en lugar de modificar el riesgo de forma silenciosa. |
| `Coincidencia automática de símbolos` | Asigna alias de bróker como `USTEC`, `US100`, `NAS100`, `DE40`, `GER40`, `XAUUSD` y `GOLD`, incluidos los prefijos y sufijos habituales. |
| `Pérdida diaria` | Bloquea nuevas entradas una vez alcanzada la pérdida diaria realizada configurada. «0» desactiva este límite. |
| `% de caída del capital` | Bloquea nuevas entradas una vez alcanzado el porcentaje de caída diaria del capital configurado. «0» desactiva este límite. |
| `Riesgo máximo abierto` | Limita el riesgo monetario estimado en todas las posiciones gestionadas actualmente abiertas. «0» desactiva el límite. |
| `Número máximo de posiciones` | Número máximo de posiciones simultáneas para esta cuenta. «0» desactiva el límite. |
| `Por símbolo` | Número máximo de posiciones simultáneas en un símbolo concreto. «0» desactiva el límite. |
| «Restablecimiento diario (min)» | Minuto del día, según el servidor del bróker, en el que se restablecen los contadores diarios: «0» corresponde a las 00:00 y «1439» a las 23:59. |
| `Desviación máxima` | Desviación permitida en las órdenes de mercado, expresada en puntos del bróker. |
| `Inicio/fin de sesión` | Intervalo de negociación permitido en el servidor del bróker, expresado en minutos desde la medianoche. |
| `Mercado activado/desactivado` | Permite o bloquea las órdenes de mercado. |
| `Órdenes pendientes activadas/desactivadas` | Permite o bloquea las órdenes pendientes. |
| `Posición larga activada/desactivada` | Permite o bloquea la exposición a la COMPRA. |
| `Venta en corto: activado/desactivado` | Permite o bloquea la exposición a la VENTA. |
## Permisos importantes de MT5
- El botón de la barra de herramientas «Algo Trading» de MT5 debe estar activado en cada terminal de negociación.
- La opción «Permitir trading algorítmico» debe estar activada en las propiedades del EA.
- Basta con una instancia de SLAVE por terminal de destino, ya que funciona para toda la cuenta
y supervisa todos los símbolos.
- Cada cuenta de negociación sigue requiriendo su propia instancia de terminal MT5 con sesión iniciada.
- Las órdenes de mercado nunca se vuelven a intentar automáticamente tras una ejecución fallida;
lo que evita la apertura accidental de posiciones duplicadas.

