Captura de pantalla 2024 09 17 a las 21.42.03

Jacinta Chan ha trabajado como dealer de futuros y acciones durante la mayor parte de su carrera antes de obtener su doctorado en estadística financiera. Actualmente, imparte clases de finanzas en una universidad. Ha escrito numerosos artículos y libros. Su trabajo más reciente, “Algorithm Trading 101: Trading made simple for everyone”, contiene todos los conceptos del trading de modelos profesionales que ella enseña.
Jacinta Chan / Algorithm Trading 101

 

 

bigstock Robotic Hand 253074

Crear un sistema de trading profesional es el objetivo de todo trader. Investigar y desarrollar un sistema de trading puede ser abrumador ya que involucra muchas partes dinámicas. El desafío es que los mercados de hoy se mueven más rápido que nunca y se requiere un algoritmo de trading que se ajuste automáticamente a las diferentes condiciones del mercado. El elemento más importante de tu modelo de trading es un algoritmo que sea adecuado para la condición del mercado predominante. Este artículo desarrolla un conjunto de reglas de trading basadas en medias móviles ajustables para convertirse en un sistema de trading algorítmico que los técnicos de mercado profesionales pueden usar en el modelo de mesa de operaciones. A continuación, se detalla el desarrollo y la prueba de estas reglas de trading. La primera sección observa algunos problemas comunes inherentes a los sistemas de trading de tendencia tradicionales, seguidos de formas de superar estos problemas comunes. Este artículo describe el perfil de un sistema ideal de trading de tendencia algorítmico.

Un modelo de trading debe cumplir al menos con los siguientes criterios:

  • Debe producir rendimientos anormales incluso después de tener en cuenta los costos de transacción y deslizamiento.
  • No debe producir grandes pérdidas ni mostrar pérdidas netas significativas en ninguno de los años.
  • El modelo debe funcionar bien tanto en la etapa de prueba como en la práctica, y debe ajustarse automáticamente a los cambios en los parámetros.

El trading es una profesión. Los traders profesionales saben que el trading no es un arte sino una ciencia. Sus modelos de trading algorítmicos son cuantitativos por naturaleza y se desarrollan científicamente después de mucha investigación y pruebas. Los algoritmos de trading en sus modelos han sido investigados y probados para tener una ventaja estadística en la obtención de ganancias netas a largo plazo.

El modelo de trading algorítmico básicamente consiste en un conjunto de reglas de trading seleccionadas después de una serie de pruebas para generar señales de trading. Las reglas de trading consisten en indicadores técnicos con parámetros optimizados para indicar señales de trading.

Aprender a diseñar un modelo de trading algorítmico es uno de los primeros temas en el curso de trading que realiza un trader cuantitativo para convertirse en un trader profesional que trabaja en la mesa de operaciones de un banco o institución financiera.

El trader profesional opera según sistemas de trading algorítmico propios. La mayoría de estos modelos son desarrollados por el trader para su propio uso en el trading.

El trading algorítmico es un sistema automatizado de generación de señales y ejecución de órdenes. Involucra el uso de algoritmos robustos en el trading automatizado. El control de riesgo en forma de una orden de stop loss también es inherente a este proceso automatizado. Dado que el proceso está automatizado, una vez implementado no requiere ni permite la toma de decisiones subjetivas de trading, juicio humano o interferencia. La generación de señales y el nivel de stop loss resultan de los algoritmos que programa el trader cuantitativo. Cuando se audita, todas las decisiones de trading están justificadas por los algoritmos.

Un sistema de trading algorítmico se usa porque históricamente ha sido probado y ha demostrado tener una ventaja estadística en generar rendimientos netos positivos anormales por encima de la estrategia de comprar y mantener. La elección e implementación de un sistema de trading algorítmico puede ser el factor definitorio en determinar la ganancia o pérdida general de la entidad para cada período contable.

 

1. Algoritmos de trading

Los algoritmos para el trading automatizado son conjuntos de reglas de trading o combinaciones de reglas de trading. Estos algoritmos a menudo se diseñan para generar señales automatizadas a partir de conceptos estadísticos básicos, análisis de series temporales, métodos cuantitativos y probabilidades.

La razón por la que se prefieren los algoritmos de trading en las mesas de operaciones propietarias de hoy es que los sistemas de trading algorítmico han sido rigurosamente probados y tienen un historial de generar rendimientos netos positivos (después de costos de transacción) por encima del índice de referencia o simplemente con la estrategia de comprar y mantener.

Los algoritmos se seleccionan, innovan y prueban intensivamente para adaptarse a los mercados en los que estos traders cuantitativos están operando. Se realiza una investigación exhaustiva para seleccionar los algoritmos, generalmente innovados a partir de indicadores técnicos existentes como medias móviles y desviación estándar. Se realizan backtest o, traducido al español, pruebas retrospectivas y en tiempo real repetidamente utilizando diferentes contratos y marcos de tiempo.

El sistema de trading algorítmico involucra no solo la generación de señales, sino también un algoritmo para el stop loss automatizado. No hay margen para el juicio humano.

2. Relación de ganancias a pérdidas

Se prefiere el trading algorítmico al trading discrecional tradicional porque no solo todas las decisiones de trading son objetivas y cuantificables cuando se auditan, sino que los algoritmos están probados para mostrar una ventaja estadística: es decir, la expectativa de rendimientos positivos basada en pruebas retrospectivas de los rendimientos de datos pasados. La prueba retrospectiva debe mostrar una ganancia neta después de considerar los costos de transacción (incluido el deslizamiento) y las pérdidas. Una alta relación de ganancias a pérdidas es cuando la suma de todas las ganancias después de los costos de transacción es significativamente mayor que la suma de todas las pérdidas.

3. Ganancia promedio sobre pérdida promedio

Si la probabilidad de ganar operaciones del sistema de trading automatizado es igual a la de perder operaciones, y la ganancia promedio debe exceder con creces la pérdida promedio, entonces el resultado neto de este trading automatizado solo puede ser ganancia neta.

4. Bajo máximo de pérdidas consecutivas

Los drawdowns son pérdidas que consumen tu capital, tu capital de trading. Una baja reducción con un mecanismo de control de pérdidas inherente garantizará la preservación del capital. El nivel de dradowns afecta el nivel de capital, y esto determina si el trader puede llegar a ser un trader profesional.

5. Sin pérdidas inesperadas

El beneficio de usar un modelo de trading algorítmico es que todas las decisiones de trading son objetivas y cuantificables, lo que significa que cada operación puede ser justificada por el algoritmo cuando se audita. Esto asegura que todas las operaciones, ganancias y pérdidas sean sistemáticas, sin pérdidas drásticas e inesperadas gigantescas en comparación con el capital. Todas las pérdidas son esperadas: no hay nada tal como pérdidas inesperadas. Un sistema de trading algorítmico involucra no solo la generación de señales, sino también un stop loss. Una orden de stop loss es automatizada y no hay margen para el juicio humano. Aunque el objetivo principal de un sistema de trading algorítmico definido es generar un rendimiento anormal superior, la función del sistema de trading algorítmico definido también ayuda a prevenir grandes pérdidas incontrolables que pueden causar el colapso de la institución financiera.

6. Robustez del sistema de trading algorítmico

Los mercados cambian constantemente. Los participantes del mercado cambian, las personas, su conocimiento, sus habilidades, sus compromisos. Los mercados cambian a medida que cambian los participantes del mercado y lo que hacen. Por lo tanto, necesitamos un sistema de trading robusto que pueda cambiar según los cambios del mercado. Se utilizan diferentes parámetros para diferentes mercados y marcos de tiempo. Los parámetros generalmente se correlacionan con la volatilidad de los mercados. En un mercado de alta volatilidad y más rápido, se utiliza un parámetro de período más corto, y viceversa. Además de ser robusto, un modelo de trading se elige y se usa por su ventaja estadística, objetividad y consistencia. Un modelo de trading robusto se define como uno que puede soportar una variedad de condiciones de mercado en muchos mercados y marcos de tiempo. El trader puede operar en marcos de tiempo de segundos, minutos (cinco, 10, 15, 30), horas, diario y semanal. Es raro encontrar un trader que use un marco de tiempo mensual o anual porque las tendencias se dan dentro del mes y la mayor parte de las ganancias se habrían perdido en la confirmación mensual.

7. Parámetros optimizados

Los parámetros para los indicadores técnicos se optimizan para adaptarse a precios pasados y, con suerte, futuros. Los parámetros se optimizan utilizando programas de trading que dan el máximo beneficio y la menor cantidad de pérdidas consecutivas, utilizando los datos históricos más recientes. Este ejercicio se realiza periódicamente para permitir un mejor ajuste a los datos actuales.

8. Capacidad para ajustarse automáticamente para evitar falsos movimientos en el trading en rango y para entrar en una tendencia temprano en el trading de tendencias

algotrading3

 

Dos condiciones del mercado que son importantes para los traders son:

  1. Un mercado en rango cuando hay poco movimiento de precios, lo que resulta en pequeñas ganancias para el trader de rango y pequeñas pérdidas para el trader de tendencias.
  2. Un mercado de tendencias cuando hay un gran movimiento de precios, lo que resulta en grandes ganancias para el trader de tendencias y grandes pérdidas para el trader de rango.

Por lo tanto, en general, la mayoría de los traders preferirían operar en un mercado en tendencia. El sistema de trading debe ser probado retrospectivamente y en tiempo real (en línea con las pruebas fuera de muestra) para soportar estas dos condiciones de mercado muy diferentes y los resultados de ambas pruebas deben ser positivos. El sistema de trading debe tener una expectativa positiva. La razón más importante para usar un sistema de trading es ganar una ventaja estadística. Esta ventaja estadística también se refiere a la probabilidad de ruina. Cuanto menor sea la probabilidad de ruina, más probable es que el trader sobreviva y obtenga beneficios del sistema de trading a largo plazo.

Lo más difícil para los sistemas de trading de tendencias es evitar los falsos movimientos en un mercado en rango. Las pequeñas pérdidas frecuentes que se acumulan en un mercado en rango suelen eliminar las ganancias de los grandes movimientos de tendencias. Por lo tanto, lo mejor que los sistemas de tendencias pueden hacer en el trading en rango es no hacer nada: no operar o mantener una posición (ya sea larga o corta) hasta que se establezca la tendencia. El trader cuantitativo tiene que encontrar un algoritmo (fórmula) que defina cuándo el mercado está operando en rango y cuándo está operando en tendencia.

Cuando se establece una tendencia, es importante entrar en ella temprano para disfrutar del máximo beneficio en lugar de esperar una confirmación más larga, momento en el cual las tendencias cortas en mercados volátiles habrán terminado. Es imperativo que el trader cuantitativo encuentre el algoritmo adecuado que defina cuándo termina el trading en rango y cuándo comienza el trading en tendencia.

El trader cuantitativo no solo debe encontrar un algoritmo adecuado que distinga entre el trading en rango y el trading en tendencia, sino que también debe innovar el algoritmo para ajustar automáticamente sus parámetros para adaptarse a las dos diferentes condiciones del mercado. El sistema de trading debe ser capaz de ajustar sus parámetros automáticamente para ser a largo plazo en un mercado en rango para evitar falsos movimientos y ser a corto plazo en un mercado en tendencia para entrar en nuevas tendencias temprano. Utilizaremos el resto de este capítulo para discutir cómo ajustar el parámetro en el sistema de trading para adaptarse a todas las condiciones de trading.

9. No es un indicador de trading común

No debe ser tan común que sufra todos los problemas comunes de los indicadores técnicos comunes, ya que los traders y los algoritmos de trading están programados para adivinar todas las paradas comunes y están programados para activarlas para obtener beneficios rápidos.

10. Ejecución eficiente

En una mesa de operaciones profesional, todas las decisiones de trading están automatizadas según el algoritmo seleccionado. Como traders, tenemos que entrenarnos para abrir una orden, con anticipación, como un stop. En un mercado líquido, habrá un deslizamiento de un tick entre la oferta y la demanda. En un mercado no líquido, el deslizamiento puede ser de varios ticks. Este deslizamiento debe tenerse en cuenta en los backtest o pruebas retrospectivas. Los profesionales generalmente prefieren operar en mercados líquidos. Si el sistema de trading opera con frecuencia, el deslizamiento y los costos de transacción son grandes problemas. Por lo tanto, los traders experimentados generalmente eligen sistemas de trading que operan con poca frecuencia en grandes tendencias donde el deslizamiento y los costos de transacción son insignificantes.

Todos los sistemas de trading tienen problemas. Los sistemas de trading de tendencias tienen problemas específicos: hay demasiados sistemas de trading de tendencias similares que generan órdenes similares, creando señales falsas cuando no hay tendencias reales. Los sistemas de trading de tendencias también sufren muchos falsos movimientos cuando el mercado está en rango. Muchos traders inexpertos no tienen suficientes fondos y confianza para soportar períodos de pérdidas consecutivas. Abandonan sus sistemas de trading antes de que lleguen a la gran ganancia.

Los sistemas de trading de tendencias rápidos tienden a salir del mercado demasiado pronto y, por lo tanto, no capturan la mayoría de los grandes movimientos de precios, mientras que los sistemas de trading de tendencias lentos no logran entrar en el mercado temprano y pueden perder grandes porciones de movimientos de precios importantes, especialmente cuando los precios se mueven inesperadamente y de manera abrupta. La mayoría de las veces, los parámetros del sistema de trading deben ajustarse para adaptarse a las condiciones actuales del mercado.

El problema principal con los sistemas de trading es que el sistema de trading optimizado que funcionó bien en las pruebas retrospectivas puede no funcionar tan bien en la vida real porque el mercado cambia.

Se ha observado y probado fuera de muestra (probado en vivo), que diferentes períodos tienen diferentes volatilidades. Por lo tanto, los indicadores técnicos de longitud fija pueden no ser adecuados en las diferentes condiciones del mercado. Por lo tanto, necesitamos un algoritmo de trading que pueda reconocer las diferentes condiciones del mercado y adaptarse dinámicamente para operar en las diferentes condiciones del mercado.