Domina ApplyStop en AmiBroker: Control Total de Tus Stops

por | Jul 6, 2025 | Amibroker, Indicadores, Premium, Screeners | 2 Comentarios

En el mundo del trading, los stops son una herramienta fundamental para proteger el capital y gestionar el riesgo.

En AmiBroker, la función ApplyStop permite configurar distintos tipos de stops de manera eficiente.

En este artículo, aprenderás cómo utilizar ApplyStop, cómo interactúa con la variable Sell y por qué la función Equity(1) es clave para visualizar correctamente los stops en los gráficos.

🏆 ¿Qué es ApplyStop?

ApplyStop es una función incorporada en AmiBroker que facilita la implementación de distintos tipos de stops en tus estrategias de trading.

Con esta función, puedes establecer condiciones de salida basadas en:

✅ Pérdidas máximas

✅ Objetivos de beneficio

✅ Trailing stops

✅ Límites por número de barras, entre otros

Lo mejor de todo es que el backtester de AmiBroker se encarga automáticamente de gestionar las salidas según las condiciones que establezcas.

🔧 Sintaxis de ApplyStop

Como se puede observar, a priori parece que el sistema genera rentabilidad con unos números más que aceptables a pesar de tener una exposición al mercado de únicamente un 38%.

Desbloquea todos los contenidos con la Zona Premium

Parámetros clave:

  • stopType: Tipo de stop (Ej: stopTypeLoss para pérdida máxima).
  • stopMode: Modo del stop (Ej: stopModePercent para porcentaje).
  • amount: Define el nivel del stop.
  • exitAtStop: Si es True, la posición se cierra al alcanzarlo.
  • repeat: Si es True, el stop se aplica repetidamente.
  • Otros parámetros: Personalización avanzada de los stops.

🚀 ¿Cómo interactúa ApplyStop con la variable Sell?

Uno esperaría que una vez añadido el applystop, la variable sell tendría en cuenta el Stop Loss como condición de venta.

Pero la realidad es que si el sistema cierra la posición por Stop Loss, la variable Sell no se activa por lo que si estás acostumbrado a sacar las señales de tus señales en el explorador, este no te avisará conforme se ha producido la venta.

Es más, si utilizas la función flip para saber si estás comprado o vendido, el explorador te indicará que sigue comprado hasta que no se produzca la señal propia de Sell.

Eso te puede generar errores a la hora de tomar decisiones de entrada y salida.

Es por eso, que si quieres que la variable sell tenga en cuenta el Stop Loss del ApplyStop tienes que acordarte de añadir el Equity(1) justo después.

Vamos a verlo con un sistema sencillo.

🔎 Las Reglas del Sistema

El sistema comprará cuando el RSI de 2 sea inferior a 20 y venderá cuando sea superior a 90.

Además, añadimos un Stop que forzará la salida de la operación si han pasado 10 sesiones

👨‍💻 Código AFL de Amibroker

Te adjunto el código para que lo puedas probar. Yo lo he probado en diario en el SPY

Desbloquea todos los contenidos con la Zona Premium

📊 Resultados del Backtest

Después de ejecutar la estrategia desde 2006 hasta diciembre de 2024, estos fueron algunos de los resultados obtenidos:

Porcentaje de aciertos: 66,78%
Recovery Factor: 3,95
Drawdown máximo: -33,51%
Exposición al mercado: 50%
Rentabilidad anualizada: 9,34

Vence claramente al buy and hold, pero hoy no te quiero hablar del sistema en sí, sino del uso de la función ApplyStop.

Ahora mismo, el sistema no está preparado para enseñar las señales en el explorador. Para ello necesitamos programar el screener:

Desbloquea todos los contenidos con la Zona Premium

Tal y como tenemos programado el sistema, nos encontramos con dos problemas:

  1. Nos muestra señales de compra y venta reiterativas
  2. No nos muestra cuando salta un SL

En la siguiente imagen, puedes ver fácilmente las discrepancias del backtest (las operaciones que hace el sistema) con las que te arroja el explorador (las que harías a tiempo real)

En rojo puedes ver que el sistema abre una posición el dia 11/12/24 y la cierra por Stop el día 26/12/24.

Uno esperaría en el explorador una señal de compra el día 10/12/24 (en verde) y una señal de venta el 24/12/24 (en azul). Como puedes ver la primera sí está pero la segunda no.

Resulta que nuestro sistema no nos avisa que tenemos que cerrar la posición.

Además, vemos que tenemos compras reiterativas los días 18, 19, 30, 31…

Estas señales de compra, no las tendríamos en cuenta porque según nuestro explorador aún no hemos vendido, pero resulta que el sistema sí vendió el día 26, por lo que la señal de compra del día 30 habría que cogerla.

Si quieres captar correctamente las señales de venta cuando usas la función ApplyStop tienes que tener añadir el siguiente bloque:

Desbloquea todos los contenidos con la Zona Premium

Añadiendo estos dos bloques, ahora el explorador funciona correctamente y podrás pintar las señales en el precio:

En rojo puedes ver que el sistema abre una posición el dia 11/12/24 y la cierra por Stop el día 26/12/24.

En el explorador tenemos la señal de compra el día 10/12/24 (en verde) y la señal de venta el 24/12/24 (en azul).

Además, ya no vemos las señales de compra reiterativas de los días 18, 19, 30, 31…

Y nos anuncia la nueva compra el día 30 que ejecutaríamos al inicio de sesión del 31.

Si te fijas, ahora en Venta sale un 5 puesto que te informa del tipo de Venta que se ha ejecutado. Te pongo a continuación lo que verías en el explorador según el tipo de venta

  • 1️⃣ Salida regular
  • 2️⃣ Stop por pérdida máxima (stopTypeLoss)
  • 3️⃣ Objetivo de beneficio (stopTypeProfit)
  • 4️⃣ Trailing stop (stopTypeTrailing)
  • 5️⃣ Stop por número de barras (stopTypeNBar)
  • 6️⃣ Stop por pérdida total (stopTypeRuin)

🚀 Conclusión

La función ApplyStop en AmiBroker es una herramienta poderosa para mejorar tus posiciones en el trading.

Comprender su interacción con la variable Sell y la importancia de la función Equity() para visualizar los stops en gráficos te permitirá optimizar tus estrategias y aumentar tu eficacia como trader. ¡Pruébalo y lleva tu trading al siguiente nivel! 🚀

Si tú también quieres ir un paso más allá y probar todo lo que se te ocurre, este curso es para ti.

👨‍💻 Código AFL de Amibroker

Como siempre, te dejo el código para puedas hacer todas las pruebas que quieras.

Desbloquea todos los contenidos con la Zona Premium

La newsletter de MKTSignals

Si quieres estar al tanto de todas nuestras novedades, suscríbete a nuestra newsletter. ¡Es gratis!

¡Puntúa este artículo!

Total votos: 6. Promedio: 5

También te puede interesar:

¿Quieres acceder a todo el contenido Premium HOY?

+50 códigos de Amibroker

2 Comentarios

  1. BOTERS GESTIÓ S.L.

    Gracias por el documento, veo que añadiendo una simple línea de código el explorador ahora incorpora la funcionalidad del applystop, pero cómo afecta esa línea al funcionamiento deAmibroker? Me explico, vemos que con esa línea, ahora el explorador es realista, pero internamento qué ocurre en Amibroker para que ahora funcione bien? No sería lógico que funcionase bien desde el principio y que no fuera necesario añadirla? Creo que puede generar confusión, pues lo esperable es que lo hiciese bien desde el principio.

    Gracias

    • Dani Contreras

      Buenas Manuel!

      Gracias por pasarte por aquí y comentar. Efectivamente tienes razón, ya podría funcionar bien utilizando tan solo la línea de applystop pero en la misma documentación de Amibroker señala que si quieres ver el stop como indicador ya sea en el gráfico del precio como en un explorador, tienes que añadir la línea del Equity. A nosotros también nos ha generado confusión.

      Un abrazo

Enviar un comentario

Loading...
logo factura v1
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Tienes una explicación más detallada en nuestra política de privacidad