Domina ExRem y Flip en AmiBroker: limpia tus señales como un experto

por | Sep 28, 2025 | Amibroker, Gratuito, Premium | 0 Comentarios

Cuando empiezas a programar sistemas en AmiBroker, tarde o temprano te encuentras con dos funciones que parecen hacer lo mismo… pero no lo hacen: ExRem() y Flip().

Ambas trabajan con señales binarias (1 o 0), pero su comportamiento puede cambiar por completo la lógica de tu estrategia si no entiendes bien lo que hacen.

En este artículo te explicamos la diferencia real entre ExRem y Flip, con ejemplos, visuales y un consejo final para usarlos como un pro. 🚀

🎯 ¿Qué hacen exactamente?

🔹 ExRem – Remove Excessive Signals

ExRem(Array1, Array2) elimina las señales repetidas. Es decir, solo se activa la primera vez que Array1 es verdadero, y se mantiene en 0 hasta que Array2 sea cierto, independientemente de las veces que se haya dado la variable Array1.

Una vez, se ha cumplido Array2, se vuelve a activar cuando haya otro verdadero en Array1.

Es ideal para evitar señales de compra o venta innecesarias.

🔹 Flip – Actúa como un interruptor

Flip(Array1, Array2) funciona como un latch, o interruptor binario. Activa (1) desde el primer verdadero en Array1, y permanece activado hasta que Array2 es True, que lo apaga (0)… hasta que vuelva a activarse con otro verdadero en Array1.

Útil si necesitas una condición que se mantenga “encendida” durante un periodo de tiempo determinado.

🧪 Ejemplo práctico

Imagina este conjunto hipotético de señales:

b n b n n n b n n s n b

Donde:

  • b = señal de Buy (Array1)
  • s = señal de Sell (Array2)
  • n = sin señal

🔍 Resultado con ExRem(buy, sell)

1 0 0 0 0 0 0 0 0 0 0 1

🔸 Solo se emite la primera señal de compra (ignora las siguientes) hasta que aparece una señal de venta.

🔍 Resultado con Flip(buy, sell)

1 1 1 1 1 1 1 1 1 0 0 1

🔹 La señal de compra se mantiene activa hasta que llega la de venta. Luego, se apaga, y vuelve a activarse en el siguiente Buy.

🧠 ¿Cuándo usar cada uno?

Situación

Quieres eliminar señales duplicadas de una variable

Necesitas marcar un período «activo» entre dos eventos

Te interesa que una variable esté activa hasta que se produzca una segunda

Quieres mantener una condición hasta que se «resetea» con otra

Usa ExRem() si…

Usa Flip() si…

💡 Consejo de experto

¿Confundes señales en tus sistemas? Usa ExRem() cuando quieras asegurarte de que solo haya una entrada activa entre una compra y una venta.


Usa Flip() cuando necesites que una condición se mantenga encendida (por ejemplo, una posición abierta) hasta que ocurra algo (como un cierre).

Ambas funciones son poderosas, pero usarlas mal puede llevar a backtests engañosos, errores de interpretación o duplicación de operaciones.

Ahora que sabes la diferencia real, ¿por qué no pruebas con tus propias reglas en AmiBroker y ves cómo cambia tu curva de equity?

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

0 comentarios

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