Que es el trading algorítmico

Algorithmic Trading

Information: There is an english version of this article.

¿Que es el trading algorítmico?

El trading algorítmico es una modalidad de trading en mercados financieros. Stock, Forex, Futuros, etc, que se caracteriza por el seguimiento de estos mercados con un conjunto de reglas objetivas que generan entradas y salidas del mismo. O sea básicamente un sistema informático evalúa ciertas reglas tomando datos del mercado y ejecuta ordenes hacia este mercado de forma automática. Las decisiones de cuando entrar o salir las toma una computadora de forma autónoma.

¿Qué es un algoritmo?

Un algoritmo es un conjunto de reglas destinadas a resolver un problema de una manera predefinida. Esta sencilla y breve definición es un poco abstracta, pongamos un ejemplo:

Imaginemos que necesitamos tomar decisiones durante el trading. Así que diseñamos un sistema basado en medias móviles (muy primitivo y sencillo para que sirva de ejemplo).

  • Si  la MM20 se hace mayor que la MM50 comprar N lotes.
  • Si la MM20 se hace menor que la MM50 vender N lotes.

Donde MM20 es media movil 20 y la MM50 es la media movil 50.

Así un sistema informático monitoreando y calculando estos datos puede ejecutar ordenes automáticas durante todo el tiempo y ejecutarlas de una manera muy rápida. Este es un algoritmo muy sencillo y muy malo pero como ejemplo nos permite entender como se comportaría un sistema de estos. Algunos sistemas de trading son muy complejos e incluso emplean Inteligencia Artificial, aprendizaje de maquinas, algoritmos genéticos etc.

¿Cuales son las ventajas?

Una ventaja evidente es que permite una presencia en los mercados de forma ininterrumpida, algo que un ser humano no puede hacer salvo que fuera un equipo que tomara turnos.

Otra de las ventajas es que se pueden ejecutar en muchos mercados a la vez e incluso usando correlaciones entre estos. Ejemplo ¿si cae el precio del hierro esto provocará una caida del precio del maíz? Estas correlaciones se pueden determinar con analisis estadístico. ¿Cayo el precio del hierro?¿Es hora de vender contratos de maíz?

Esta modalidad de trading algorítmico permite ademas operar durante toda la sesión sin experimentar el mas mínimo cansancio o reducción de su desempeño. Ademas, estos sistemas respetan las reglas al pie de la letra y no experimentan ninguna emoción durante el trading. Esto permite operar con cero afectación psicológica. O sea los movimientos del mercado y la psicología de masas no causa ningún efecto emocional sobre el sistema que es una de las principales fuentes de mala operación. Así le podemos decir adios al psicotrading.

Ademas tiene expectativas de riesgo/beneficio verificables. El trading algorítmico se basa en pruebas y no en suposiciones pues son sometidos a rigurosos back-test y pruebas de robustez antes de comenzar a operar.

Estos permiten otra ventaja y es canalizar ordenes al mercado solo en el momento preciso. O sea no dejar una orden abierta esperando a que se ejecute si no cuando el momento indicado llegue, ejecutan la orden. Lo que permite no mostrar las cartas al resto de los traders que están operando en el mercado.

¿Y las desventajas?

Una de las desventajas evidentes de estos sistemas es que si contienen errores pueden causar perdidas cuantiosas.
La otra desventaja es que ganancias pasadas no implican ganancias futuras pues los mercados siempre están en continua evolución y esto desencadena otras desventajas que explicaremos mas adelante.

¿Como reducir estas desventajas?

Una de las cosas que se hace para reducir las desventajas del trading algorítmico es proveerlos de un sistema de captura que los pare si su desempeño empieza a ser muy malo.

Ejemplo si uno de estos sistemas de trading algorítmico, tiene 3 o 4 operaciones de perdidas consecutivas o si empieza a no ser tan rentable, este se para y notifica que se ha parado para que intervenga un humano.

Esto no es perfecto y ciertamente aun así han habido noticias de perdidas cuantiosas por errores en estos sistemas, por ejemplo el caso de Knight Capital. Pero viene siendo como un botes salvavidas en caso de que se empiece a hundir el barco. Claro estos sistemas operan también con gestión de riesgo y ademas son monitoreados no solo por humanos sino por otros sistemas desarrollados para este propósito.

Lo otro que se hace es ponerlos a funcionar en un Timeframe o período de tiempo. Luego de este período se vuelve a evaluar el desempeño de este, analizar sus fallos, reajustarlo y se vuelve a poner a funcionar en otro Timeframe.

Es por eso que estos sistemas requieren un mantenimiento constante y de ingenieros de software capaces de ajustar programas complejos. Y esto desencadena en otra desventaja que es el elevado costo de mantenimiento de estos sistemas pues requieren de personal muy capacitado no solo en trading sino en ingeniería de software que debe trabajar muy rápido.

Es por eso que su obsolescencia es muy rápida. Un sistema de alto valor que funcionaba excelentemente hace un tiempo el día de hoy puede ser sencillamente código basura con muy poco valor. Son de vida corta. A diferencia de otros sistemas que se hacen y luego se están explotando/comercializando durante años. Por lo tanto invertir capital en desarrollarlos conlleva un alto riesgo.

Como resultado estos sistemas no los emplea todo el mundo. Generalmente grandes organizaciones que debido a su volumen de capital pueden permitirse el lujo de pagar estos costos y arriesgar ese capital.

Pero todo no termina ahí

Otro problema de estos sistemas de trading algorítmico es que se ajustan con datos históricos. O sea el desempeño real puede variar. Y este desempeño como es simulado no son ordenes reales al mercado. Que pasa, que las ordenes al mercado afectan el precio en el mercado pero en simulado no. Por lo tanto nunca se puede conocer  exactamente como estos algoritmos van a funcionar en la realidad y solo se puede conocer un estimado. Aunque este puede ser muy cercano a la realidad con un margen de error muy aceptable.  Esto viene a ser una variante del efecto del observador , en la cual el objeto a ser medido es modificado al hacer la observación.

Que pasa que normalmente ordenes de poco volumen en un mercado grande causan poco efecto. Por lo general, hay que aclarar. Pero como bien se dice en los mercados el aleteo de una mariposa en Hong Kong puede provocar una tormenta en Nueva York si ocurre un efecto dominó. Esto se conoce como el Efecto Mariposa. Algo que explotan mucho los HFTs en algunas de sus estrategias de las que mas adelante les hablaré. Estos usan trading algorítmico pero de baja latencia.

Conclusiones para el trader al menudeo

¿Por que para el trader al menudeo? Porque muchas veces es ignorante en el asunto y es sobremanera el mas abusado, producto de esa ignorancia. Pero creemos quecon esto podemos ayudar en ese caso. Bueno pues una conclusión importante que se puede sacar de todo esto es que a veces nos encontramos en venta robots sobre todo de Forex que claman ser el santo grial del trading.  Un robot que se hizo hace tiempo y te muestran incluso videos de como opera y gana llegando a las decenas de miles de dolares. Y por supuesto vendido a un precio muy alto. Lo cual no es necesariamente falso o increíble.

¿Cual es el problema? Creo algunos lectores ya van imaginándolos. Lo primero es que muchos no son mantenidos y/o no son hechos por personas con conocimientos sólidos en el tema. Y partiendo del axioma (o premisa) de que ganancias pasadas NO implican ganancias futuras el resultado es que no precisamente todos pero la mayoría de estos robots son un timo. El hecho de mostrar un robot ganando en un video del pasado no implica que cuando lo compre lo va a hacer o que va a cubrir su inversión.

En primer lugar un robot para que funcione bien tiene que como dijimos antes, haber pasado por un back testing riguroso. Y de ahí se puede inferir que muchas de estas personas que los comercializan no tienen conocimientos solidos o al menos pretenden no tenerlos. Y en segundo lugar. Solo se pone a funcionar en un timeframe. Luego debe ser vuelto a ajustar/modificar. Aun esto no es garantía de nada. Así que si alguien le vende un súper robot y no le asegura que se lo va a ir actualizando definitivamente le esta timando.

Si todavía va y le dice que se va a hacer millonario con el, inherentemente es falso. Primero porque lo único de que se puede hablar en todo esto es de probabilidad, pues en el mercado nunca hay nada 100% seguro ni siquiera para los grandes operadores. La otra es que en el mercado se gana o se pierde directamente proporcional al capital con el que se opere. Por muy bueno que sea un robot, si no opera con suficiente capital no tendrá grandes resultados. Al menos no en corto tiempo. Bien, se puede suponer que las ganancias acumuladas eventualmente creen un capital relativamente aceptable si se va haciendo trading efectivo. Pues el trading se puede convertir en algo similar a un interés compuesto o una progresión aritmética. Que pasa que para cuando este se comience a acercar a un capital “respetable” haciendo trading, lo mas probable es que ese robot se haya vuelto irremediablemente obsoleto.

Otro tema importante a considerar es el siguiente. Muchos de estos robots a veces se mercadean pregonando a los cuatro vientos que tienen inteligencia artificial, que es inteligente. Eso hoy por hoy realmente… no es gran cosa. Inteligencia artificial es muchas cosas y puede ser muy buena pero también puede ser pésima. De hecho es muy sencillo ponerle “inteligencia artificial” a un robot.  Resultado, no se puede concluir que porque un robot tenga inteligencia artificial ya es bueno. Perfectamente una estrategia ajustada que no tenga nada de inteligencia artificial puede tener mejor desempeño en un mercado que muchos de estos  “robots inteligentes”.

Imagino algunos lectores se estén preguntando… Ya se por lo que no puedo guiarme y que tengo que evitar, pero … entonces ¿como saber si un robot es bueno?

Creo es una buena pregunta y mas que esa la pregunta creo que es: ¿Como evaluamos un trader sea humano o no y decidimos si es bueno o malo? ¿Como decidimos cual es mejor al comparar? Esto ya se va saliendo del artículo y se los dejaré en una próxima publicación, aunque no es una pregunta que tenga una sola respuesta pues son muchas las variables a considerar. Les adelanto que no solo importa el beneficio neto y esta es simplemente la mas evidente de las variables pero no la mas importante.

Nota: La imagen tema fue creada con un gráfico de Proceso de Decisión de Markov y se llevo de raster a vectorizada para poder ampliarla con una red neuronal convolucional con ajustes manuales posteriores (la red no la hicimos nosotros pero como curiosidad).

El gráfico de ajuste fue tomado del Departamento de Estadística y matemática finaciera de la universidad de Toronto.

Comentarios

comentarios

Sobre el Autor: waldo