El mes pasado concluía la primera convocatoria de este curso de Experto Universitario, organizado por la Escuela Superior de Ingenieros de Telecomunicaciones, en el que hemos participado los miembros del equipo OQM. Ha sido una experiencia pionera en muchos aspectos, por lo que dedicaremos este artículo a hacer un breve resumen de los contenidos impartidos y de las actividades realizadas durante todos estos meses.
En primer lugar, vaya por delante nuestro agradecimiento a los profesores del Departamento de Señales, Sistemas y Radiocomunicaciones, a la organización de Robotrader y en particular al director del curso, Dr. Eduardo López, sin cuya implicación en el proyecto este curso no habría tenido lugar.
Comenzaremos con unas reflexiones sobre el tipo de curso que estábamos buscando y queríamos implementar. En el ámbito del trading hay cursos de muchos tipos, pero destacaríamos tres categorías generales:
- Los de "autor", o aquellos que ofrecen una estrategia específica de inversión. La estrategia generalmente está vinculada a una persona o "gurú" de los mercados que goza de cierto predicamento en ese mundillo.
- Los de tipo técnico, que se centran en el desarrollo de sistemas o algoritmos de trading desde una determinada plataforma. Son, por lo general, de carácter instrumental: Muestran el funcionamiento, características, limitaciones y lenguaje de programación de un determinado entorno de desarrollo e implementación.
- Los de amplio espectro o metodológicos, que tienen el propósito de mostrar la operativa como actividad global cuyo progresivo perfeccionamiento conduce a la profesionalización del trader.
Este tercer enfoque requiere mucho tiempo, además de una cuidadosa planificación de los contenidos y actividades prácticas. Su objeto no es proporcionar al alumnado una estrategia específica lista para empezar a operar ni su implementación en una determinada plataforma, sino que se exponen las bases conceptuales del trading cuantitativo y se desarrollan en profundidad los elementos del proceso de construcción y gestión de portfolios sistemáticos. El esquema seguido fue:
Los contenidos estaban estructurados en diversos bloques temáticos que abarcaban el ciclo completo de producción de sistemas más el enfoque del trading como actividad profesional:
a) Conocimiento de los mercados.-Dónde se abordó la estructura del sistema financiero, con especial atención a los productos financieros en los que comúnmente se aplica la operativa sistemática.
b) Introducción a los sistemas de trading.- Bloque de iniciación al mundo del trading cuantitativo en el que analizamos el ámbito de aplicación de los sistemas; sus características, limitaciones, ventajas e inconvenientes frente a otras modalidades inversoras. En este bloque también se abordó el análisis técnico orientado al diseño de estrategias.
c) Diseño de sistemas.- Este es un bloque nuclear del curso; en tiempo de dedicación y amplitud temática. El punto de partida fue una visión general del procedimiento de diseño, para adentrarnos en la tipología de estrategias, los elementos constitutivos de todo sistema (reglas de posicionamiento, mecanismos de salida, aplicación de filtros, etc.) y la validación de la lógica. Para este bloque se utilizó una metodología basada en el análisis práctico de estrategias que responden a diferentes tipologías y estilos de inversión.d) Evaluación de sistemas.- En este bloque, además de proporcionar a los alumnos una visión general del testeo de estrategias, de fijar los criterios básicos de evaluación y los conceptos clave (procesos de optimización, determinación de la zona robusta, método walk-forward, simulaciones de Montecarlo, etc.), desarrollamos un procedimiento riguroso para realizar la evaluación In-Sample, Out-Sample y el test Profile de una estrategia.
e) Creación de carteras.- En este apartado los alumnos aprenden que la operativa sistemática no es una cuestión de estrategias aisladas, por muy brillantes que sean sus resultados. Se trata de construir portfolios que cumplan unos objetivos de rentabilidad y se acomoden a un determinado perfil inversor. Para ello se abordaron numerosos temas de la moderna teoría de carteras adaptados al trading de sistemas: Rentabilidad y riesgo, diversificación, modelos de asignación de activos, técnicas de rebalanceo, benckmarks para portfolios de sistemas, etc.
f) Gestión monetaria.- Partiendo de los fundamentos teóricos y conceptos matemáticos relacionados con el Money Management (MM) se abordaron diversas técnicas de MM y su contexto de utilización: Criterio de Kelly, F-Optima, Secure-F, Fixed Ratio, Nociones de MM avanzado. También se proporcionó un procedimiento de MM que desganaba paso a paso la implementación de un algoritmo de MM en los niveles de sistema y portfolio.
g) Gestión de la operativa.- Apartado en el que se expusieron el marco teórico y los procesos e instrumentos específicos para monitorizar la operativa. El propósito era que cada alumno pudiese construir un procedimiento de gestión del trading adaptado a sus necesidades.
h) Emprendimiento.- Módulo de profesionalización del trading de sistemas en el que se abordó cómo montar un CTA (Commodity Trading Advisor) para trabajar, como empresa regulada en EE.UU., en el ámbito de la gestión de carteras de futuros, opciones y Forex.
Los contenidos se han impartido en su totalidad, si bien tuvimos que realizar ajustes en la programación, alargando el curso hasta el 30 de julio. Esto fue debido a problemas técnicos con la plataforma de e-learning, que nos obligó a realizar una migración completa a otra plataforma web, y también a la propia densidad del temario y actividades complementarias.
La actividad en los foros ha sido muy alta, sobre todo en los módulos de diseño y evaluación de sistemas, poniendo de manifiesto el valor indiscutible de este medio como instrumento de acción participativa, intercambio de información y construcción del conocimiento en la formación online. Los hilos abiertos versaban sobre:
- Aclaraciones y dudas en los contenidos de cada bloque.
- Temas complementarios propuestos por profesores y alumnos.
- Cuestiones técnicas sobre implementación de estrategias y sistemas en diversas plataformas.
- Presentación, discusión y corrección de prácticas tutoradas.
- Cuestiones generales sobre operativa.
- Ampliación de contenidos: Bibliografía y webs.
En casi todos los módulos se disponía de cuestionarios de autoevaluación con los que los alumnos podían comprobar el grado de consecución de los conocimientos específicos de cada bloque de contenidos.
A lo largo del curso se han realizado las siguientes prácticas supervisadas por los profesores:
1.- Ficha de mercados: Cuyo objetivo era conocer y analizar las características de los mercados en los que implementar la operativa sistemática. Se facilitó una ficha modelo con un formato general para todos los mercados y se pidió a los alumnos que eligiesen un mercado y analizasen sus aspectos estáticos (horario, subyacente, valor del tick, etc.) y dinámicos (volatilidad media, amplitud de rango, distribución del volumen, períodos con sesgo alcista, bajista y lateral). Para ello se les facilitaron históricos de los principales mercados de futuros de al menos 10 años. Las fichas, una vez realizadas y supervisadas por los profesores, fueron compartidas y comentadas en el foro.
2.- Plan del sistema de trading: Formulario en el que los alumnos deben recoger la lógica y elementos estructurales de la estrategia que van a construir; tipo de sistema, mecanismo principal (puntos de entrada y salida), Stop Loss, gestión monetaria. Así mismo realizan una descripción en metacódigo de las reglas y/o diagrama de flujo.
3.- Diseño de la lógica: El primer paso es la programación de las reglas en la plataforma de trading que se va a emplear. En este curso no se ha propuesto ninguna plataforma en concreto y se ha dado libertad al alumnado para que elijan cualquiera que cuente con un lenguaje de programación lo suficiente potente, permita la operativa intradiaria y disponga de funcionalidades para evaluar sistemas. En los manuales y tutoriales del curso la plataforma empleada fue NinjaTrader7, siendo dos más usadas por los alumnos fueron TradeStation y NinjaTrader. El segundo paso era la evaluación de la lógica. Para facilitar y homogeneizar el proceso se proporcionó a los alumnos una plantilla Excel que recogía todos los pasos de evaluación de la lógica en las fases de entrenamiento, testeo y validación.
4.- Evaluación IS: El objeto de esta práctica fue habituar a los alumnos con un procedimiento riguroso de evaluación de estrategias. Para ello les facilitamos un sistema a evaluar, una plantilla Excel de muestra y un documento en el que se detallaban los pasos seguir para realizar un análisis del timing y de los parámetros correspondientes a la lógica y filtros hasta obtener el top parameter y las horquillas paramétricas de la zona robusta. También debían realizar los test de sensibilidad y consistencia.
5.- Evaluación OS: Con esta práctica los alumnos debían implementar el procedimiento Out-Sample en el mercado de su elección y tomando como base las horquillas paramétricas de la evaluación IS. Para ello se les facilitó una plantilla Excel en la que debían recoger la siguiente información: Esquema de la optimización RWF, períodos IS, WF Out-Sample, trades WF, Top-Parameter, Montecarlo, Test-Profile y parámetros de inicio de operativa real.
6.- Diseño del portfolio: Una vez seleccionados los activos en los que el sistema supera la evaluación OS, indicamos a los alumnos los pasos para construir y evaluar dos modelos de cartera: Con rebalanceo y sin rebalanceo. Pare ello les facilitamos el software propietario Portfolio Constructor que permite construir carteras para diferentes niveles de aversión al riesgo, balanceando los vectores de inversión en función de diferentes criterios de ponderación de activos y ratios diana. Los pasos del proceso de construcción de la cartera debían recogerlos en una plantilla Excel en la que tenían que especificar los activos, el capital inicial, las restricciones del modelo, el tipo de asignación. Así mismo debían graficar los escenarios para los ratios diana elegidos, seleccionar uno de ellos y realizar una simulación de Montecarlo a nivel de portfolio y elaborar el test profile.
7.- Portfolio con MM: Esta práctica tenía por objeto implementar un algoritmo de gestión monetaria al portfolio sin rebalanceo que obtuvo cada alumno en la práctica anterior. Partiendo de los datos en base diaria los alumnos debían implementar el algoritmo de MM seleccionado, para realizar posteriormente la evaluación IS, OS, el análisis de Montecarlo y el test profile de la cartera con MM.
8.- Gestión de la operativa: En esta última práctica los alumnos debían construir una plantilla Excel de monitorización de la operativa real que permitiese realizar un seguimiento efectivo de cada sistema y del portfolio, recogiendo los estadísticos y criterios para determinar cuándo un sistema se ha roto. Esta práctica fue optativa ya que se realizó fuera de plazo.
El conjunto de todas estas prácticas daría lugar a una cartera lista para empezar a operar en la que se ha seguido paso a paso el ciclo completo de producción de sistemas.
La realización del curso contaba con un módulo de cinco créditos que incluía la asistencia al ciclo de ponencias y otros actos convocados por la organización de Robotrader (voluntaria la asistencia presencial. Se podían visualizar online), así como la participación en la competición que tuvo lugar en los meses de Abril y Mayo. Los participantes en la competición (que en esta primera convocatoria fue voluntaria) debían presentar el código de un sistema realizado en alguno de los lenguajes de programación de las plataformas facilitadas por los organizadores, alojarlo en un servidor virtual y competir, con una cuenta simulada en tiempo real, siguiendo las bases del campeonato.
Un 64% de los alumnos participó en el campeonato. El acto de entrega de premios tuvo lugar en el Palacio de la Bolsa el día 22 de Junio.
De los cuestionarios de autoevaluación, valoraciones personales y opiniones de los alumnos, podemos extraer las siguientes conclusiones:
- Se valora especialmente la calidad de los contenidos, su profundidad, rigor expositivo y el hecho de presentarlos en un manual impreso en formato de libro.
- El soporte prestado en el foro para temas generales (y por email para cuestiones privadas) ha sido el principal elemento dinamizador de la actividad lectiva.
- Las prácticas realizadas se valoran muy positivamente, se consideran adecuadas para mejorar la comprensión de cada bloque de contenidos y útiles de cara a la profesionalización de la actividad como traders.
- Los alumnos son conscientes de que la participación en la competición Robotrader no guarda relación con la actividad de un gestor profesional de carteras. Sin embargo, la consideran una buena forma de poner a prueba las estrategias construidas e iniciarse en la operativa real afrontando las dificultades que van surgiendo.
- Los aspectos relativos a la programación de estrategias han sido uno de los elementos a mejorar para próximas convocatorias. Los alumnos que estaban familiarizados con una plataforma de trading o sabían programar han desarrollado el código de indicadores y sistemas sin dificultad. Pero había otro grupo que no tenía experiencia en programación y no había empleado nunca una plataforma. Este grupo hubiera preferido una plataforma de referencia para todos y que se hubiese dedicado más tiempo a explicar su funcionamiento y lenguaje de programación. Tomamos nota para futuras convocatorias.
- Aunque la temporalización del curso ha sido adecuada, algunos retrasos técnicos y organizativos obligaron a ajustar el tiempo previsto para algunos bloques y alargar la finalización del curso un mes más. Esto no ha supuesto una merma de la calidad ni disminución de los contenidos, pero debe ser corregido.
- Muchos alumnos demandan una atención o soporte post-formación que permita mantener el contacto con los profesores y seguir debatiendo ideas de trading. Estamos en ello.
Finalmente recogemos las propuestas de mejora más relevantes que nos sugieren los alumnos para próximas convocatorias:
- Añadir más contenidos sobre asignación de activos.
- Exponer y debatir técnicas de machine learning para el desarrollo de estrategias.
- Extender la duración del curso algunos meses más debido a la densidad de los contenidos.
- Se debería participar en la competición una vez completado el curso.
- Aumentar la diversidad de sistemas en la construcción del portfolio.
- Ampliar la información sobre el software empleado en la competición y en el desarrollo de sistemas.
- Proveer algún soporte a los alumnos una vez terminado el curso.
- Incentivar las actividades de I+D durante y después del curso.
- Hacer un segundo curso que profundice en lo aprendido en este año y que permita dedicar más tiempo a la programación de estrategias.
Tomamos nota de estas propuestas y procuraremos implementarlas en futuras convocatorias.
Por otra parte nos complace comunicaros que estamos trabajando en la organización del II Encuentro OQM y al que, por descontado, estarán invitados todos nuestros amigos, lectores y alumnos. Os iremos informando.
El Equipo OQM.