BreakEvenTrailingMarket
- Utilidades
- Versión: 1.0
BreakEven Trailing es una utilidad para MetaTrader 5 que gestiona el stop loss de las posiciones que ya tiene abiertas. Mueve el stop loss al punto de equilibrio y lo desplaza detrás del precio, de modo que no necesita vigilar el gráfico para proteger un beneficio abierto.
El asesor no abre posiciones y no las cierra con órdenes de mercado. Solo modifica el stop loss de las posiciones existentes. La salida se produce cuando el precio alcanza el stop loss que el asesor ha colocado.
QUÉ HACE
- Mueve el stop loss al precio de apertura, o al precio de apertura más un desplazamiento elegido, cuando la posición alcanza un beneficio definido en pips.
- Desplaza el stop loss a una distancia fija por detrás del precio actual cuando la posición alcanza un beneficio definido en pips.
- El punto de equilibrio y el trailing se activan o desactivan por separado y pueden usarse juntos.
- Funciona con posiciones BUY y SELL.
- Nunca mueve un stop loss existente a un nivel peor. El stop loss solo se mueve en la dirección que protege más beneficio.
- Mantiene sin cambios el take profit existente cuando modifica el stop loss.
- Muestra en el gráfico la configuración actual, el tipo de cuenta y el estado de funcionamiento.
QUÉ POSICIONES SE GESTIONAN
El asesor gestiona todas las posiciones del símbolo del gráfico en el que está cargado.
- No se comprueban los números mágicos. Se gestionan las posiciones abiertas manualmente, por otro asesor o por copia de operaciones.
- Nunca se modifican las posiciones de otros símbolos.
- Nunca se modifican las órdenes pendientes.
- Solo se cambia el stop loss. El volumen, el take profit y la dirección de la posición se mantienen.
Como el asesor no filtra por número mágico, no ejecute a la vez dos programas que modifiquen el stop loss del mismo símbolo, porque se sobrescribirían entre sí. Cargue el asesor en un solo gráfico por símbolo.
CUENTAS DE COBERTURA Y DE NETEO
En una cuenta de cobertura, cada posición se gestiona por separado según su ticket. Dos posiciones del mismo símbolo pueden tener niveles de equilibrio distintos, porque cada una tiene su propio precio de apertura.
En una cuenta de neteo, la plataforma mantiene una única posición agregada por símbolo. Varias ejecuciones se combinan en una sola posición con un precio medio de apertura, y ese precio medio es la referencia del punto de equilibrio. En una cuenta de neteo no es posible tener niveles de equilibrio separados por ejecución, y una nueva ejecución cambia el precio medio de apertura de toda la posición. El asesor lee la posición agregada actual en cada tick, por lo que siempre trabaja con el precio medio más reciente.
El tipo de cuenta detectado se muestra en el panel del gráfico como Hedging o Netting.
CÓMO SE ELIGE EL STOP LOSS
Cuando el punto de equilibrio y el trailing están activados, ambas condiciones pueden cumplirse a la vez. En ese caso el asesor no envía dos solicitudes de modificación. En cada tick realiza los siguientes pasos:
1. Calcula el candidato de equilibrio: precio de apertura más o menos el desplazamiento en la dirección del beneficio.
2. Calcula el candidato de trailing: precio actual menos o más la distancia de trailing.
3. Redondea cada candidato al paso de precio del símbolo, siempre hacia el lado que no acerca el stop loss al precio actual más de lo solicitado.
4. Comprueba cada candidato por separado frente al stops level y al freeze level del símbolo.
5. Compara los candidatos válidos y envía solo el que protege más beneficio: el stop loss más alto para una posición BUY y el más bajo para una posición SELL.
Si un candidato no puede colocarse por una restricción del bróker, se usa el otro cuando es válido. Un candidato nunca se sustituye por un nivel peor para forzar la modificación.
RESTRICCIONES DEL BRÓKER
Muchos brókeres no aceptan un stop loss demasiado cerca del precio actual, y algunos bloquean la modificación de la posición mientras el precio está dentro de una zona de congelación. El asesor comprueba el stops level y el freeze level antes de enviar la solicitud, y también lee el código de retorno del servidor de operaciones después de enviarla.
Cuando no es posible colocar el stop loss, el asesor espera y vuelve a intentarlo en el siguiente tick. No mueve el stop loss a un nivel peor ni desactiva la función. El motivo se muestra en el panel del gráfico, de modo que puede ver si el asesor está esperando al mercado o si el servidor rechazó la solicitud.
Tenga en cuenta que algunos brókeres informan de un stops level igual a cero y aun así aplican una restricción dinámica en el servidor. En ese caso el resultado final lo decide el código de retorno del servidor, que el asesor muestra en el panel y en el registro.
PARÁMETROS DE ENTRADA
Punto de equilibrio
- Enable break-even (por defecto true). Activa o desactiva la función de equilibrio.
- Profit to trigger break-even, in pips (por defecto 10.0). Beneficio flotante que debe alcanzar la posición antes de mover el stop loss.
- Offset beyond open price, in pips (por defecto 0.0). Distancia desde el precio de apertura en la dirección del beneficio. Úselo para cubrir spread, comisión y swap.
Trailing stop
- Enable trailing stop (por defecto true). Activa o desactiva la función de trailing.
- Profit to start trailing, in pips (por defecto 15.0). Beneficio flotante necesario para iniciar el trailing.
- Distance from price to stop, in pips (por defecto 10.0). Distancia mantenida entre el precio actual y el stop loss durante el trailing.
Panel del gráfico
- Show settings and status on chart (por defecto true).
- Panel font size (por defecto 12). Los valores se limitan al rango de 8 a 24.
Los valores se validan al iniciar el asesor. Si un valor no puede funcionar, el asesor lo indica y no se inicia. Si una combinación está permitida pero es poco habitual, el asesor se inicia y escribe un aviso en el registro. Hay dos casos: un desplazamiento mayor que el disparador de equilibrio, lo que significa que el stop loss solo podrá colocarse cuando el precio avance más, y un inicio de trailing menor que la distancia de trailing, lo que significa que el primer stop de trailing puede ser peor que el precio de apertura.
PANEL DEL GRÁFICO
El panel muestra la versión, el símbolo, el tipo de cuenta, el estado de ambas funciones con su configuración, el número de posiciones BUY y SELL gestionadas, el número de modificaciones realizadas en el tick actual y el estado actual.
Valores de estado:
- ACTIVE: el asesor está supervisando posiciones.
- WAITING: NO POSITION: no hay posiciones en el símbolo actual.
- WAITING: NO QUOTE: todavía no hay bid y ask válidos.
- WAITING: STOP LEVEL: el stop loss candidato está más cerca del precio de lo que permite el bróker.
- BLOCKED: FREEZE LEVEL: el precio está dentro de la zona donde el bróker no permite modificar.
- WAITING: MARKET CLOSED, WAITING: PRICE OFF, WAITING: PRICE CHANGED, WAITING: TOO MANY REQUESTS: condiciones temporales del mercado o del servidor.
- ALL FUNCTIONS OFF: ambas funciones están desactivadas.
- AUTO TRADING OFF, EA TRADING DISABLED, ACCOUNT TRADE DISABLED, EXPERT TRADE DISABLED, SERVER AUTO TRADING OFF, DISCONNECTED: no se permite operar en el terminal, para este asesor o en esta cuenta, o el terminal no está conectado.
- ERROR: INVALID STOPS, ERROR: TRADE DISABLED, ERROR: SYMBOL SETTINGS, ERROR: MODIFY FAILED: la solicitud fue rechazada. El código de retorno se escribe en el registro.
Los errores repetidos en el mismo ticket se registran solo en la primera aparición, cuando cambia el código de retorno y después una vez por minuto, para que el registro siga siendo legible. Cuando una posición se recupera tras un error, se escribe una línea de recuperación.
DEFINICIÓN DE PIP Y SÍMBOLOS ADMITIDOS
Todas las distancias se indican en pips, no en puntos.
- Símbolos cotizados con 3 o 5 dígitos: un pip equivale a diez puntos.
- Símbolos cotizados con 2 o 4 dígitos: un pip equivale a un punto.
Esta definición sigue la cotización estándar de divisas. Los metales, los índices y las criptomonedas quedan fuera del alcance admitido de la versión 1.00, porque la definición de pip para esos instrumentos no es coherente entre brókeres. En esos símbolos el cálculo se ejecutaría igualmente, pero el significado de un pip puede no coincidir con lo que espera, así que verifique las distancias resultantes en una cuenta demo antes de usarlo.
QUÉ SIGNIFICA AQUÍ PUNTO DE EQUILIBRIO
El punto de equilibrio en este asesor es el precio de apertura de la posición registrado por la plataforma. No incluye comisión, swap, deslizamiento ni la diferencia entre bid y ask en el momento de la salida. Por lo tanto, una posición cerrada exactamente en el precio de apertura no garantiza un resultado de exactamente cero.
Si desea que el stop loss cubra sus propios costes de operación, ajuste el desplazamiento respecto al precio de apertura a un valor acorde con esos costes en su cuenta.
CÓMO USARLO
1. Cargue el asesor en el gráfico del símbolo que quiere gestionar. Use el marco temporal que prefiera; el asesor trabaja en cada tick y no depende del marco temporal.
2. Active el trading algorítmico en el terminal.
3. Ajuste los valores de disparo y distancia en pips según su estilo de trading y el rango habitual del símbolo.
4. Compruebe que el panel muestra ACTIVE mientras hay una posición abierta y WAITING: NO POSITION cuando no la hay.
5. Abra un gráfico por símbolo. No cargue el asesor dos veces en el mismo símbolo.
El asesor puede permanecer en el gráfico de forma permanente. No hace nada mientras no haya posiciones en el símbolo.
REQUISITOS
- MetaTrader 5. Probado en la compilación 5836 del terminal.
- Trading algorítmico activado en el terminal y para el asesor.
- Una cuenta que permita modificar el stop loss de las posiciones abiertas.
- No se usan DLL, WebRequest, archivos externos ni conexión a internet.
PRUEBAS
La versión 1.00 se probó en una cuenta demo de un bróker minorista.
- Pruebas de cálculo: 46 comprobaciones automáticas superadas. Cubren BUY y SELL, equilibrio, trailing, ambas funciones juntas, el tick anterior al disparo y el disparo exacto, un candidato que incumple el stops level y ambos candidatos incumpliéndolo, la protección de un stop loss existente, el freeze level aplicado al stop loss y al take profit, símbolos con 2, 3, 4 y 5 dígitos y el redondeo al paso de precio en la dirección correcta.
- Prueba de integración con la API de trading en una cuenta de cobertura: equilibrio para BUY y para SELL ejecutado con el código de retorno 10009 (solicitud completada), take profit existente conservado y ninguna solicitud fallida. Se procesaron unos 360.000 ticks.
PREGUNTAS FRECUENTES
¿El asesor abre o cierra operaciones?
No. Solo modifica el stop loss de posiciones que ya existen. El bróker cierra la posición cuando el precio alcanza ese stop loss.
¿Funciona con operaciones de otro asesor o de una señal?
Sí. No se comprueban los números mágicos, así que se gestiona cualquier posición del símbolo. Por ese mismo motivo, no lo use junto a otro programa que modifique el stop loss del mismo símbolo.
¿Qué ocurre si el terminal está cerrado?
El asesor no puede funcionar con el terminal cerrado. Los niveles de stop loss ya colocados permanecen en el servidor y siguen siendo válidos, porque son órdenes del lado del servidor.
¿Puedo usar el equilibrio sin el trailing?
Sí. Cada función tiene su propio interruptor. Si ambas están desactivadas, el asesor queda inactivo y muestra ALL FUNCTIONS OFF.
¿Por qué no se mueve el stop loss aunque se haya alcanzado el objetivo de beneficio?
El motivo más habitual es una restricción del bróker. Consulte el panel: WAITING: STOP LEVEL significa que el stop loss solicitado está más cerca del precio de lo permitido, y el asesor espera una distancia válida en lugar de colocar un stop peor.
¿Funciona en una cuenta de neteo?
Sí. En una cuenta de neteo hay una posición agregada por símbolo y se usa el precio medio de apertura como referencia del punto de equilibrio.
VERSIÓN
1.00 - Primera versión.
