Jorge Maestro (XMAS2 Algorithmic): Sobre los sistemas automáticos de trading (II)

Por Jorge Maestro Bayarri, presidente de XMAS2 Algorithmic SICAV
En este artículo pretendo exponer algunos de los pasos más importantes a la hora de crear un sistema automático de trading y que se han seguido, entre otros, en la configuración de los algoritmos de X MAS 2 ALGORITHMIC SICAV, la cual presido.
- Determinar el objetivo que pretendes conseguir, contra más detallado posible mejor. En este primer paso podríamos destinar entre el 20 y el 50% del tiempo de diseñar un sistema. Sin ánimo de ser exhaustivo, en ese objetivo deberíamos incluir detalles como:
- Rentabilidad que pretendemos obtener en el largo plazo y con qué riesgo/volatilidad vamos a sentirnos cómodos.
- Máxima pérdida anual que puedo tolerar.
- Máximo drawdown (de pico a valle) que puedo tolerar.
- ¿Qué activo/s voy a operar con el sistema?
- ¿Cuántas operaciones quiero que haga mi sistema en el año/día? Esto dependerá del marco temporal en el que operemos.
- Determinar el objetivo que pretendes conseguir, contra más detallado posible mejor. En este primer paso podríamos destinar entre el 20 y el 50% del tiempo de diseñar un sistema. Sin ánimo de ser exhaustivo, en ese objetivo deberíamos incluir detalles como:
- Determinar los mejores movimientos históricos en ese espacio temporal y darse cuenta de lo que tienen en común.
- Deberíamos buscar entre 50 y 100 movimientos (mínimo) en diferentes condiciones de mercado (alcista, bajista) y buscar cómo tienen lugar (condiciones bajo las que surge ese movimiento), como acaban, etc. Hay que pensar también en cómo queremos salirnos de estos movimientos. Esto nos dará 2 elementos del sistema: set-ups (condiciones necesarias para que algo ocurra) y técnicas de entrada.
- Set-ups
- Suelen estar basados en indicadores técnicos como medias móviles, volatilidad, momentum, OBV, RSI, etc y, de forma más común, en combinaciones de ellos, si bien existen medidas y modelos más sofisticados.
- Técnicas de entrada
- Las técnicas de entrada variarán mucho en función de si el sistema automático es un “seguidor de tendencia” o bien es un sistema que opera en las “oscilaciones de precio”. A estas técnicas de entrada suele resultar útil añadirle además filtros basados en patrones de comportamiento del precio del activo.
- Añadir stops y costes de transacción
- Es una parte importante de cualquier sistema. Cuando añadimos estos conceptos la fiabilidad del sistema baja en unos 10 puntos porcentuales aproximadamente. Pero, ¿podemos sobrevivir sin stops? Tan solo una reflexión: lo más importante no es tener los máximos trades ganadores posible, sino los máximos periodos de tiempo ganadores posible. Varios trades perdedores de elevada cuantía pueden dar al traste la viabilidad y credibilidad del sistema.
- Podemos añadir también Profit targets, puntos de salida con beneficio. Esto variará también en función del sistema diseñado, si es un sistema a corto/largo plazo, si es un sistema seguidor de tendencia o diseñado para moverse bien en periodos laterales, etc
- Back Testing
- Cuando hagas el Back-testing, tendrás que contar con el slippage y los costes de transacción.
- El Backtesting lo hacemos seleccionando una función objetivo, cuyo único propósito es seleccionar los parámetros más robustos del proceso de optimización. Los parámetros más robustos no son siempre los más beneficiosos, sino aquellos que producen beneficios fiables y sostenibles en el trading en tiempo real.
- Optimización
- Una de las funciones de la optimización es determinar los valores apropiados para la implementación más robusta de la estrategia de trading.
- Otra de las aplicaciones de la optimización es adaptar la estrategia de trading a las necesidades individuales del trader.
- Control del riesgo
- El tamaño de la posición, los mercados en los que invertir y cuando incrementar o disminuir el apalancamiento son importantes para la supervivencia financiera.
- Tradear la estrategia
- Una estrategia de trading se dice que funciona bien si su performance de trading en tiempo real (trading profile) está en línea con el performance de evaluación (evaluation profile).
- Mentalización para el peor escenario. Tienes que saber cómo se va a comportar tu sistema en:
- Mercados muy volátiles
- Mercados laterales
- Mercados con fuerte tendencia
- Mercados muy estrechos, sin interés
- Días de catástrofe (días en los que el mercado se mueve mucho en tu contra)
Cuando hayas desarrollado qué vas a hacer en estos casos, tu sistema estará completo.
En próximos artículos profundizaremos en aspectos interesantes y a tener en cuenta en cada una de estas fases. El camino para tener un buen sistema de trading no es fácil (sin contar con la programación del código) ya que, además de tener una idea ganadora (esperanza matemática positiva) hay que realizar el Backtesting y la Optimización de la forma adecuada si no queremos tirar todo el trabajo por la borda. Eso sí, la satisfacción de tener un sistema automático de trading robusto compensa con creces el esfuerzo realizado.


