Order Watchdog Pro
- Utilidades
-
Manit Chin
MQL5 Developer | Overfit-proof testing and account protection for EAs
I help traders answer two questions before real money is at risk:
1) Is this strategy real, or just fitted to the past?
2) Will the account survive when something goes wrong?
Protection against overfitting - Versión: 1.3
- Activaciones: 5
Protege tu cuenta de MT5 frente a operaciones que no son tuyas: posiciones y órdenes pendientes con un número mágico desconocido, así como operaciones manuales realizadas desde lugares desde los que no sueles operar. En modo «Act», las cierra. Tus propios EA nunca se ven afectados. Nunca abre ninguna operación.
De qué te protege
- Que otra persona opere en tu cuenta: alguien que tenga tu contraseña y opere desde la aplicación móvil o el terminal web, cuando tú le indicas que no operas desde allí (InpManualTrades).
- Un EA que no tenías intención de ejecutar: un EA olvidado en otro gráfico, un EA copiado o de prueba con un número mágico diferente.
- Que alguien cierre tus operaciones: una alerta cuando una de tus posiciones sea cerrada por alguien o por un EA que no sea tuyo.
- Cambios realizados por el bróker: movimientos de fondos sin operación, operaciones abiertas o cerradas por el bróker, cambios en el apalancamiento, el stop-out, el swap o los permisos (solo alertas).
Lo que NO hace
- No gestiona tus propios EA. Las posiciones con un número mágico que hayas introducido nunca se cierran ni se modifican, ni siquiera cuando un EA abre muchas posiciones, utiliza la estrategia «grid» o «martingala», o opera sin stop loss. Estos casos pueden notificarse como alertas.
- No es un gestor de riesgos para pérdidas diarias ni para empresas de inversión propia.
- No puede impedir que un bróker haga nada. Solo informa y mantiene un registro.
- No opera ni abre posiciones.
Lo que debes introducir
- 1. InpMagics: los números mágicos de tus EA, por ejemplo, «12345, 500000-500063». También los números mágicos de las operaciones copiadas por una señal de MQL5 o un copiador de operaciones, si utilizas alguno (la simulación los muestra).
- 2. InpMode: Solo alerta / Simulación (por defecto) / Activo.
- 3. InpTgToken e InpTgChatId: tu token y tu ID de chat del bot de Telegram (opcional). Telegram se activa cuando se rellenan ambos campos.
- 4. InpManualTrades: dónde operas manualmente: en cualquier lugar (por defecto), solo en el ordenador, solo en el móvil, en el ordenador o en el móvil, o nunca. Las operaciones manuales realizadas desde otros lugares no se consideran tuyas.
El resto de parámetros se encuentran en el grupo AVANZADO y pueden dejarse tal y como están.
Modos
- Solo alertas: solo alertas. No envía ninguna solicitud de operación.
- Simulación (por defecto): alertas, más una línea «cerraría / eliminaría» para cada operación que no sea tuya. No envía ninguna solicitud de operación.
- Actuar: cierra posiciones y elimina órdenes pendientes que no son tuyas.
¿Qué ocurre con una operación que no es tuya (modo «Act»)?
- Una posición u orden pendiente «no es tuya» cuando su número mágico no figura en InpMagics, o cuando se trata de una operación manual (número mágico 0) abierta desde un lugar que InpManualTrades no permite (por defecto: las operaciones manuales desde cualquier lugar son tuyas). Un EA que utilice el número mágico 0 se considera tuyo.
- Las posiciones y órdenes que ya estaban abiertas cuando el watchdog se ejecutó por primera vez en la cuenta solo se notifican, nunca se cierran. Un error en InpMagics o un cambio de cuenta no pueden cerrar operaciones anteriores.
- La posición se cierra; la orden pendiente se elimina.
- Si la posición no se puede cerrar tras el número de intentos solicitado en InpMaxTries (por defecto, 3) y no tiene stop loss, se establece un stop loss a una distancia del % de InpUnknownSLPct (por defecto, 1) del precio de apertura, y se te envía una alerta. Un stop loss ya existente nunca se modifica. Se vuelve a intentar el cierre cada 5 minutos.
- En las cuentas de compensación, estas posiciones se notifican, pero no se cierran, ya que una posición también puede contener el volumen de su propio EA. Las órdenes pendientes se siguen eliminando.
- Los números mágicos de InpNeverTouch solo se notifican.
Solo alertas (no se cierra ni se modifica nada)
- Operación manual de gran volumen (InpManualMarginPct, por defecto 20): una posición manual abierta desde el terminal de PC, la aplicación móvil o el terminal web requiere más margen que este porcentaje del capital. No se comprueban las operaciones del EA.
- Muchas posiciones por EA (InpMaxPerMagic, valor por defecto 0 = desactivado): uno de tus EA mantiene más posiciones por símbolo y dirección que este número.
- Sin stop loss (InpRequireSL, predeterminado: desactivado): una posición de tus EA no tiene stop loss InpNoSLGraceSec segundos después de su apertura.
- Vigilancia del bróker (InpBrokerWatch, valor por defecto: activado):
- - cambios en el saldo sin operación: ingresos o retiradas, abonos, cargos, correcciones, bonificaciones, operaciones canceladas;
- - operaciones abiertas o cerradas por el bróker o el servidor, no por un terminal de cliente, un EA, un SL, un TP o un stop out;
- - stop out;
- - cambios en el apalancamiento, el nivel de stop out, el nivel de margin call, el permiso de negociación de la cuenta, el permiso de EA de la cuenta y el modo de negociación del símbolo;
- - swap: un swap que se le ha abonado o que era cero pasa a ser un cargo, o un cargo se incrementa en más de 1,5 veces (el resto de cambios en el swap solo se registran en el historial);
- - Posiciones cerradas y reabiertas en el rollover o por margen de variación: una alerta al día; cada operación se registra en el registro.
- InpBrokerSLTP (activado por defecto): el stop loss o el take profit de una posición manual se ha modificado mediante una solicitud que no procedía de este terminal, confirmada en dos escaneos. Desactivado en un VPS de MQL5.
- InpSlipAlertPts (por defecto 0 = desactivado): el stop loss se ha ejecutado tantos puntos por debajo del nivel de stop loss.
- Cerradas por terceros: una posición cerrada o reducida mediante un cierre manual desde un lugar que no has autorizado, o por un EA con un número mágico que no es el tuyo.
- Al inicio: operaciones que no eran tuyas, stop outs y cambios en el saldo mientras estaba desactivado, hasta InpOfflineMaxDays días atrás (por defecto 7).
Cómo funciona
- Una copia en un gráfico supervisa todos los símbolos de la cuenta (o solo los de InpSymbols). El símbolo y el marco temporal del gráfico no importan.
- La cuenta se analiza cada InpScanSec segundos (por defecto, 10); las nuevas operaciones se comprueban en cuanto se producen.
- Funciona en un VPS de MQL5 o en tu propio ordenador.
- En modo «Act», cada solicitud se comprueba con la cuenta justo antes de enviarla. Si no hay respuesta o la respuesta no es clara, espera 15 segundos; cuando el mercado está cerrado, 5 minutos; tras una recotización, entre 10 segundos y 5 minutos.
- Como máximo, se permiten InpMaxActionsPerMin solicitudes por minuto (por defecto, 20); a partir de ahí, las solicitudes se pausan durante 5 minutos con una alerta.
- Se rechaza el modo «Act» con un campo «InpMagics» vacío, ya que cerraría todas las operaciones del EA. «InpMagics» no puede contener un 0 (escribe 7000, no 7,000).
- Las entradas no válidas impiden que se inicie, con un mensaje en el que se indica la entrada en cuestión.
Alertas
- Notificaciones push a la aplicación móvil de MetaTrader (InpPush). Debes configurar tu ID de MetaQuotes en Herramientas, Opciones, Notificaciones.
- Telegram: se debe añadir api.telegram.org (con https) en Herramientas, Opciones, Asesores expertos, Permitir WebRequest. Los mensajes que no se envían correctamente se reenvían más tarde.
- Una alerta por cada resultado, incluso tras un reinicio.
- Cada alerta indica qué se ha hecho, por ejemplo, «Simulación: se cerraría» o «Never-touch magic: no se ha cerrado».
- Cada alerta y acción se registra en MQL5\Files\WatchdogPro_log.csv con la hora del servidor, el saldo y el capital.
- Panel de gráficos: modo, tus números mágicos, recuento de hallazgos y acciones, último escaneo y última alerta. El color del marco indica el modo: azul «Solo alerta», amarillo «Simulación» y rojo «Act».
Limitaciones
- No puede desactivar el botón «AutoTrading» de la terminal.
- No puede distinguir entre tus propias operaciones manuales y las realizadas por otra persona en la misma terminal de PC. Ambas se registran como «PC».
- No puede distinguir una operación externa que reutilice el número mágico de tu EA de una operación realizada por el propio EA.
- Utiliza una copia por cuenta. Tras trasladarlo a un VPS de MQL5, elimínalo del gráfico de tu PC.
- Solo en el Probador de estrategias, abre pequeñas operaciones de ejemplo para que se puedan ver sus alertas y acciones.
- Una posición puede seguir moviéndose antes de que se ejecute una solicitud de cierre.
