GUÍAS
04
SISTEMAS
DE TRADING
GUÍAS
EDITOR Alejandro de Luis
DISEÑO DE SISTEMAS DE TRADING
06
COMITÉ DIRECTIVO Elimelech Duarte, Alejandro de Luis ADMINISTRACIÓN Keneth Duvan Alarcón INTÉRPRETE Diana Helene Castillo
LA ESPERANZA MATEMÁTICA POSITIVA
TRADUCCIÓN Alberto Muñoz Cabanes
11
EDICIÓN Editorial Hispafinanzas MAQUETA Luis Benito Grande © Editorial Hispafinanzas All rights reserved www.hispafinanzas.es
LA IMPORTANCIA DE LA SUAVIDAD EN LA CURVA DE BENEFICIOS
El trading y la operativa en bolsa conlleva un alto riesgo y por tanto podría no ser adecuado para todo tipo de inversores. El objetivo de este magazine es proporcionar al lector herramientas e información que contribuyan a su formación para comprender los mercados financieros. Sin embargo, los análsis, opiniones, estrategias y cualquier tipo de información contenida en este magazín es ofrecida como información general y no constituye en ningún caso algún tipo de sugerencia o asesoramiento financiero. Hispatrading Guías se exime de cualquier responsabilidad por pérdidas o perjuicios causados en las inversiones que realice el lector por el uso de la información o contenidos aquí ofrecidos. Así mismo la editorial de este magazín no asume responsabilidad por las opiniones o información emitidas por los colaboradores, anunciantes y demás personas que utilicen este medio para emitir sus opiniones. Hispatrading© es una Marca Registrada y los contenidos de Hispatrading Guías son exclusivos. Quedan reservados todos los derechos. Queda rigurosamente prohibido reproducir, almacenar o transmitir alguna parte de esta publicación, cualquiera que sea el medio empleado (electrónico, mecánico, fotocopia, grabación, etc.), sin autorización escrita de los titulares del copyright bajo las sanciones establecidas en las leyes españolas e internacionales sobre copyright.
13 OPTIMIZACIÓN DE SISTEMAS DE TRADING AUTOMÁTICO
18
SUSCRÍBASE GRATIS: WWW.HISPATRADING.COM
GUÍA DE SISTEMAS DE TRADING
CÓMO CREAR
UN SISTEMA DE TRADING
OPERANDO
COMO UN
ROBOT U na de las ramas del trading es la operativa sistémica o trading con sistemas. Mediante esta forma de operar intentamos predefinir unas reglas fijas, que nos indiquen todos los parámetros necesarios, para poder realizar una operación sin la intervención humana.
Es por eso, que el trading con sistemas es el contrapunto al trading discrecional, en el que el trader juega un papel fundamental tomando siempre la última decisión. Pero ¿qué factores debo tener en cuenta para crear un sistema? ¿Por dónde empiezo? Son algunas de las preguntas que todo aquel que quiera crear un sistema debe saber responder. En este manual podrá conocer las respuestas y crear así un buen sistema de trading.
5
GUÍA DE SISTEMAS DE TRADING
CÓMO CREAR
UN SISTEMA DE TRADING
OPERANDO
COMO UN
ROBOT U na de las ramas del trading es la operativa sistémica o trading con sistemas. Mediante esta forma de operar intentamos predefinir unas reglas fijas, que nos indiquen todos los parámetros necesarios, para poder realizar una operación sin la intervención humana.
Es por eso, que el trading con sistemas es el contrapunto al trading discrecional, en el que el trader juega un papel fundamental tomando siempre la última decisión. Pero ¿qué factores debo tener en cuenta para crear un sistema? ¿Por dónde empiezo? Son algunas de las preguntas que todo aquel que quiera crear un sistema debe saber responder. En este manual podrá conocer las respuestas y crear así un buen sistema de trading.
5
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
DISEÑO DESISTEMAS DETRADING Diseñar un sistema consiste en analizar y estructurar una forma o método de operar en los mercados siguiendo una estrategia de manera sistemática. POR JOAN MARCEL DURAN
E
l objetivo de este artículo es explicar una metodología que facilite la comprensión y automatización de un sistema, mostrar las distintas fases y componentes de la tarea de mecanizar un sistema puede permitir al lector formarse una idea más clarificadora de este “sector” del mundo de la inversión y especulación. Poder diseñar tu sistema, el sistema que cada día ejecutas delante de la pantalla, facilita enormemente el siguiente paso: su automatización, ¡Sí!, es posible mecanizar un sistema de inversión, es posible mecanizar una estrategia especulativa en los mercados, pero antes de nada vamos a ver porqué e s aconsejable el diseño de un sistema de trading. Antes de entrar en materia, es bueno entender sus principales ventajas:
¿POR QUÉ ES IMPORTANTE LA FASE DE DISEÑO? 1. Racionalizar la estrategia, no conviene dejar ningún supuesto al azar
6
2. Identificar los componentes y variables que dan vida al sistema 3. Documentar nuestras ideas o estrategias de trading
¿QUÉ BENEFICIOS OBTENEMOS DEL DISEÑO? 1. Nuestros sistemas estarán mejor pensados, mejor preparados, en definitiva más robustos 2. Nos servirá como guía o plan de trading 3. Facilitará su automatización en posteriores fases Diseñar un sistema no es ni más ni menos que analizar y estructurar una forma o método de operar en los mercados, por lo tanto solo será posible si sabemos que seguimos una estrategia repetidamente o mejor dicho, sistemáticamente. Como punto de partida tendremos esa estrategia que ponemos en práctica cada vez que operamos o esa idea que hemos leído en alguna
Figura 1. Entradas y salidas de un sistema automático de trading
En la Figura 1 podemos observar una caja opaca que esconde las reglas o lógica del sistema y donde figuran sus entradas y salidas, por una parte tenemos como entrada los datos provenientes de los mercados (cotizaciones, volumen negociación, etc.) y por otra también tenemos los parámetros de configuración del sistema que nos servirán para realizar los ajustes a las condiciones particulares del instrumento. web o foro, en este artículo no os voy a contar ninguna estrategia en concreto, en lugar de eso os voy a dar algunas pautas y recomendaciones sobre cómo plasmarla en un papel para que pueda ser automatizada por uno mismo o por un tercero. Empecemos por la definición de sistema. De la RAE, en su primera acepción de la definición de sistema: 1.m. Conjunto de reglas o principios sobre una materia racionalmente enlazados entre sí.
En nuestro caso la “materia” está más que clara: el rading, por “conjunto de reglas” poco que añadir, excepto la necesidad de que un sistema cumpla con ciertas pautas o reglas para las cuales fue creado, en cuanto a “racionalmente enlazados entre sí” nos exhorta a seguir una determinada lógica y coherencia en su conjunto. Muy científico y muy genérico, pero más concretamente y llanamente ¿qué es para nosotros?, ¿qué entendemos por sistema de trading automático? Visto desde fuera un sistema de trading automático es una caja negra alimentada por una serie de datos que acaban transformándose en operaciones en el mercado produciendo resultados económicos en nuestra cuenta, si lo representamos de forma gráfica:
Por otro lado y respecto la salida tenemos los resultados, básicamente son de dos tipos, los resultados históricos que son datos estadísticos basados en las operaciones realizadas sobre el histórico de cotizaciones también denominado backtesting, y los reales, ya que cuando empezamos a operar con el sistema los resultados pasan de ser históricos a cargarse en nuestra cuenta en forma de pérdidas y ganancias. Un sistema de trading antes de convertirse en una caja negra ha pasado por varias etapas antes de llegar al usuario o consumidor final (aunque sea uno mismo) como son el diseño, desarrollo, pruebas, optimización y puesta en marcha. Como he comentado previamente hemos de partir de una estrategia o idea de trading para proceder a su diseño. En la Figura 2 vemos un esquema de los pasos que se siguen para completar la automatización de un sistema, si bien, no es lineal puesto las fases de pruebas y optimización se retroalimentan, sí nos permite hacernos una idea del trabajo que conlleva. Los elementos clave a tener en cuenta para el diseño básic amente son tres: las variables de trabajo, la gestión de la entrada y la gestión de la salida. Las variables de trabajo son aquellos datos imprescindibles para llevar a cabo nuestro trading o la construcción del sistema, bajo
7
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
DISEÑO DESISTEMAS DETRADING Diseñar un sistema consiste en analizar y estructurar una forma o método de operar en los mercados siguiendo una estrategia de manera sistemática. POR JOAN MARCEL DURAN
E
l objetivo de este artículo es explicar una metodología que facilite la comprensión y automatización de un sistema, mostrar las distintas fases y componentes de la tarea de mecanizar un sistema puede permitir al lector formarse una idea más clarificadora de este “sector” del mundo de la inversión y especulación. Poder diseñar tu sistema, el sistema que cada día ejecutas delante de la pantalla, facilita enormemente el siguiente paso: su automatización, ¡Sí!, es posible mecanizar un sistema de inversión, es posible mecanizar una estrategia especulativa en los mercados, pero antes de nada vamos a ver porqué e s aconsejable el diseño de un sistema de trading. Antes de entrar en materia, es bueno entender sus principales ventajas:
¿POR QUÉ ES IMPORTANTE LA FASE DE DISEÑO? 1. Racionalizar la estrategia, no conviene dejar ningún supuesto al azar
2. Identificar los componentes y variables que dan vida al sistema 3. Documentar nuestras ideas o estrategias de trading
¿QUÉ BENEFICIOS OBTENEMOS DEL DISEÑO? 1. Nuestros sistemas estarán mejor pensados, mejor preparados, en definitiva más robustos 2. Nos servirá como guía o plan de trading 3. Facilitará su automatización en posteriores fases Diseñar un sistema no es ni más ni menos que analizar y estructurar una forma o método de operar en los mercados, por lo tanto solo será posible si sabemos que seguimos una estrategia repetidamente o mejor dicho, sistemáticamente. Como punto de partida tendremos esa estrategia que ponemos en práctica cada vez que operamos o esa idea que hemos leído en alguna
Figura 1. Entradas y salidas de un sistema automático de trading
En la Figura 1 podemos observar una caja opaca que esconde las reglas o lógica del sistema y donde figuran sus entradas y salidas, por una parte tenemos como entrada los datos provenientes de los mercados (cotizaciones, volumen negociación, etc.) y por otra también tenemos los parámetros de configuración del sistema que nos servirán para realizar los ajustes a las condiciones particulares del instrumento. web o foro, en este artículo no os voy a contar ninguna estrategia en concreto, en lugar de eso os voy a dar algunas pautas y recomendaciones sobre cómo plasmarla en un papel para que pueda ser automatizada por uno mismo o por un tercero. Empecemos por la definición de sistema. De la RAE, en su primera acepción de la definición de sistema: 1.m. Conjunto de reglas o principios sobre una materia racionalmente enlazados entre sí.
En nuestro caso la “materia” está más que clara: el rading, por “conjunto de reglas” poco que añadir, excepto la necesidad de que un sistema cumpla con ciertas pautas o reglas para las cuales fue creado, en cuanto a “racionalmente enlazados entre sí” nos exhorta a seguir una determinada lógica y coherencia en su conjunto. Muy científico y muy genérico, pero más concretamente y llanamente ¿qué es para nosotros?, ¿qué entendemos por sistema de trading automático? Visto desde fuera un sistema de trading automático es una caja negra alimentada por una serie de datos que acaban transformándose en operaciones en el mercado produciendo resultados económicos en nuestra cuenta, si lo representamos de forma gráfica:
Por otro lado y respecto la salida tenemos los resultados, básicamente son de dos tipos, los resultados históricos que son datos estadísticos basados en las operaciones realizadas sobre el histórico de cotizaciones también denominado backtesting, y los reales, ya que cuando empezamos a operar con el sistema los resultados pasan de ser históricos a cargarse en nuestra cuenta en forma de pérdidas y ganancias. Un sistema de trading antes de convertirse en una caja negra ha pasado por varias etapas antes de llegar al usuario o consumidor final (aunque sea uno mismo) como son el diseño, desarrollo, pruebas, optimización y puesta en marcha. Como he comentado previamente hemos de partir de una estrategia o idea de trading para proceder a su diseño. En la Figura 2 vemos un esquema de los pasos que se siguen para completar la automatización de un sistema, si bien, no es lineal puesto las fases de pruebas y optimización se retroalimentan, sí nos permite hacernos una idea del trabajo que conlleva. Los elementos clave a tener en cuenta para el diseño básic amente son tres: las variables de trabajo, la gestión de la entrada y la gestión de la salida. Las variables de trabajo son aquellos datos imprescindibles para llevar a cabo nuestro trading o la construcción del sistema, bajo
6
7
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
el número de operaciones, entre otras. Algunas de ellas serán parámetros de entrada para la configuración de nuestro sistema y otras serán calculadas automáticamente por el propio sistema.
Figura 2. Fases o ciclo de elaboración de un sistema de trading
mi punto de vista hay dos tipos de variables, las proporcionadas por el mercado o internas y las calculadas o externas. Las variables internas son la base de todo sistema pues podríamos ser capaces de automatizar cualquier sistema con solo basarnos en éstas. Las variables internas son básicamente cuatro: 1. El instrumento o instrumentos sobre los que se ejecuta-
rá nuestro sistema, por eje mplo el DAX, el Eurostoxx50 o el SP500. La mayoría de los sistemas se diseñan y optimizan para un determinado instrumento pero también nos podemos encontrar con sistemas configurados para ser usados en varios instrumentos aunque lo más común es el primer caso. A modo de recomendación el diseño de un sistema debe ser independiente del instrumento sobre el que se ejecutará, de esta manera en las fases de pruebas y optimización se podrá configurar para ejecuta rse sobre múltiples instrumentos y así poder ejecutar nuestro sistema en tantos mercados y/o instrumentos como queramos. 2. El precio o cotización, este es el dato más utilizado,
diría que el 99% de sistemas utilizan este dato para realizar las entradas y/o salidas. El precio normalmente está vinculado al instrumento puesto que no es lo mismo operar sobre el par EURUSD que operar con el SP500, mientras el primero cotiza en pips o decimales el segundo lo hace a nivel de puntos o para ser más exactos cuartos de punto. Como recomendación aquí para que el sistema sea independiente del precio (siempre que se utilice como filtro de entrada o salida) se debe añadir un parámetro de configuración a nuestro diseño donde se especifique el mínimo valor del ick o movimiento del instrumento. Hay muchas herramientas en el mercado como Visual Chart o Ninja rader donde los instrumentos ya vienen configurados con este valor mínimo, por lo que únicamente tendremos que consultarlo para aplicarlo a nuestro sistema en la fase de desarrollo. Ejemplos de utilización del precio en un sistema sería la comparación del valor del precio en un momento determinado (cierre > apertura) o la rotura de un rango de precios donde estaremos esperando que el precio llegue a un determinado
8
nivel más un incremento. El precio se puede dividir en cuatro variables: el precio de apertura, el precio de cierre, el precio máximo y el precio mínimo debiendo estar vinculados a una dimensión temporal en concreto y de la que hablaremos más adelante. 3. El volumen es el número de transacciones cruzadas
en un determinado momento del tiempo, este dato es común para todos los instrumentos ya que se evalúa en unidades. El volumen se puede tratar como si fuera un indicador más del sistema pero es un dato interno a tener en cuenta en el diseño, nos puede ayudar para confirmar tendencias (comúnmente llamado volumen concordante) o para detectar cambios en la volatilidad.
odas las variables basadas en el precio de cotización o en el volumen (esto incluye los indicadores) se deberán indexar en el tiempo, al ser posible obtener su valor histórico (ayer, anteayer, etc.). Para plasmar de manera intuitiva y clara esta posibilidad en el diseño será necesario indicarlo por medio de un índice secuencial ordenado de más a menos reciente (0: hoy, 1: ayer, 2: anteayer y así sucesivamente) por ejemplo si queremos especificar que el precio de cierre de ayer tiene que ser positivo lo haremos mediante precio_cierre(1) > precio_apertura(1) Una vez vistas las variables de trabajo profundizaremos en los procesos y secuencia de ejecución de cualquier sistema. Según se puede observar en la Figura 3 que es un zoom de la Figura 1, vemos dos procesos bien diferenciados y cronológicamente dependientes: primero la gestión de la entrada en mercado, comúnmente llamado abrir posición y posteriormente la gestión de la salida o comúnmente llamado cerrar posición o toma de beneficios/pérdidas, son dos operaciones que se deben gestionar por separado por eso los vemos pintados en dos cajitas, claro está, existe una estrecha vinculación entre ellos pues sin el primero no se puede dar el segundo y viceversa.
4. El tiempo o sesión es el dato que nos indica en qué ho-
rario cotiza el instrumento en el merca do, como podréis deducir es propio del instrumento y mercado pero en este caso podemos considerarlo como común ya que la variable tiempo debe estar dentro del rango de las 24hs para cualquier instrumento y mercado, con una salvedad, si nuestro sistema opera a una determinada hora o rango de horas entonces conviene tener esta variable como un parámetro más del sistema puesto que en este caso no tiene porqué coincidir con el resto de instrumentos y mercados.
nagement, otros pocos implementan procedimientos de control del riesgo para determinar si es aconsejable abrir una posición según el potencial ratio riesgo/beneficio de la misma. Gestión de la salida: su objetivo es aplicar diversos filtros o
establecer las condiciones que se deben dar para cerrar una posición o abrir la contraria, procedimientos de control del riesgo (stop de pérdidas) y procedimientos para establecer el objetivo de ganancias (toma de beneficios). Estos dos procesos se alimentan de las variables explicadas anteriormente y de los parámetros de configuración con los valores asignados en el momento de habilitar el sistema para su ejecución o pruebas, pero además aparece un nuevo elemento que será de vital importancia para la labor de diseño y construcción del sistema: la dimensión temporal. Cuando operamos un determinado instrumento estamos pegados a la pantalla del ordenador, pero realmente ¿qué es lo que estamos observando? Una secuencia temporal de cotizaciones o dimensión temporal, todos los gráficos de las herramientas que hay disponibles en el mercado tienen la particularidad de permitirnos configurar la dimensión temporal de la serie de datos o cotizaciones que queremos observar, las más extendidas son: Mensual (M), Semanal (W), diaria (D) y las horarias (60m, 30m, 15m, 5m 1m) y esto tenemos que tenerlo en cuenta cuando procedamos al diseño de nuestro sistema.
Gestión de la entrada: su objetivo es aplicar diversos filtros
o establecer las condiciones que se deben dar para abrir una posición, también muchos sistemas incorporan como parte de este proceso la imprescindible gestión del capital o Money Ma-
La dimensión temporal está vinculada a cada uno de los procesos descritos y más concretamente a los filtros o condiciones particulares, pudiendo tener una dimensión temporal para la
Como variables externas las hay para todos los gustos y de todos los colores, la mayoría de ellas, por no decir todas son independientes del instrumento. Normalmente están dentro de alguno de estos dos grandes grupos: 1. Los indicadores que en base a las variables internas y
fórmulas matemáticas calculan determinados valores que utilizamos en nuestros sistemas y que tendremos en cuenta en nuestro diseño, un ejemplo sería el indicador RSI o el MACD. 2. Las variables de gestión del sistema, este grupo lo con-
forman aquellos datos que nos permiten adapta r nuestro sistema a nuestra manera de operar, básicamente nos servirán para controlar el riesgo. Las más utilizadas son el número de contratos, el capital disponible para operar,
Figura 3. Componentes generales y flujo de un sistema automático
9
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
el número de operaciones, entre otras. Algunas de ellas serán parámetros de entrada para la configuración de nuestro sistema y otras serán calculadas automáticamente por el propio sistema.
Figura 2. Fases o ciclo de elaboración de un sistema de trading
mi punto de vista hay dos tipos de variables, las proporcionadas por el mercado o internas y las calculadas o externas. Las variables internas son la base de todo sistema pues podríamos ser capaces de automatizar cualquier sistema con solo basarnos en éstas. Las variables internas son básicamente cuatro: 1. El instrumento o instrumentos sobre los que se ejecuta-
rá nuestro sistema, por eje mplo el DAX, el Eurostoxx50 o el SP500. La mayoría de los sistemas se diseñan y optimizan para un determinado instrumento pero también nos podemos encontrar con sistemas configurados para ser usados en varios instrumentos aunque lo más común es el primer caso. A modo de recomendación el diseño de un sistema debe ser independiente del instrumento sobre el que se ejecutará, de esta manera en las fases de pruebas y optimización se podrá configurar para ejecuta rse sobre múltiples instrumentos y así poder ejecutar nuestro sistema en tantos mercados y/o instrumentos como queramos. 2. El precio o cotización, este es el dato más utilizado,
diría que el 99% de sistemas utilizan este dato para realizar las entradas y/o salidas. El precio normalmente está vinculado al instrumento puesto que no es lo mismo operar sobre el par EURUSD que operar con el SP500, mientras el primero cotiza en pips o decimales el segundo lo hace a nivel de puntos o para ser más exactos cuartos de punto. Como recomendación aquí para que el sistema sea independiente del precio (siempre que se utilice como filtro de entrada o salida) se debe añadir un parámetro de configuración a nuestro diseño donde se especifique el mínimo valor del ick o movimiento del instrumento. Hay muchas herramientas en el mercado como Visual Chart o Ninja rader donde los instrumentos ya vienen configurados con este valor mínimo, por lo que únicamente tendremos que consultarlo para aplicarlo a nuestro sistema en la fase de desarrollo. Ejemplos de utilización del precio en un sistema sería la comparación del valor del precio en un momento determinado (cierre > apertura) o la rotura de un rango de precios donde estaremos esperando que el precio llegue a un determinado
nivel más un incremento. El precio se puede dividir en cuatro variables: el precio de apertura, el precio de cierre, el precio máximo y el precio mínimo debiendo estar vinculados a una dimensión temporal en concreto y de la que hablaremos más adelante. 3. El volumen es el número de transacciones cruzadas
en un determinado momento del tiempo, este dato es común para todos los instrumentos ya que se evalúa en unidades. El volumen se puede tratar como si fuera un indicador más del sistema pero es un dato interno a tener en cuenta en el diseño, nos puede ayudar para confirmar tendencias (comúnmente llamado volumen concordante) o para detectar cambios en la volatilidad.
odas las variables basadas en el precio de cotización o en el volumen (esto incluye los indicadores) se deberán indexar en el tiempo, al ser posible obtener su valor histórico (ayer, anteayer, etc.). Para plasmar de manera intuitiva y clara esta posibilidad en el diseño será necesario indicarlo por medio de un índice secuencial ordenado de más a menos reciente (0: hoy, 1: ayer, 2: anteayer y así sucesivamente) por ejemplo si queremos especificar que el precio de cierre de ayer tiene que ser positivo lo haremos mediante precio_cierre(1) > precio_apertura(1) Una vez vistas las variables de trabajo profundizaremos en los procesos y secuencia de ejecución de cualquier sistema. Según se puede observar en la Figura 3 que es un zoom de la Figura 1, vemos dos procesos bien diferenciados y cronológicamente dependientes: primero la gestión de la entrada en mercado, comúnmente llamado abrir posición y posteriormente la gestión de la salida o comúnmente llamado cerrar posición o toma de beneficios/pérdidas, son dos operaciones que se deben gestionar por separado por eso los vemos pintados en dos cajitas, claro está, existe una estrecha vinculación entre ellos pues sin el primero no se puede dar el segundo y viceversa.
4. El tiempo o sesión es el dato que nos indica en qué ho-
rario cotiza el instrumento en el merca do, como podréis deducir es propio del instrumento y mercado pero en este caso podemos considerarlo como común ya que la variable tiempo debe estar dentro del rango de las 24hs para cualquier instrumento y mercado, con una salvedad, si nuestro sistema opera a una determinada hora o rango de horas entonces conviene tener esta variable como un parámetro más del sistema puesto que en este caso no tiene porqué coincidir con el resto de instrumentos y mercados.
nagement, otros pocos implementan procedimientos de control del riesgo para determinar si es aconsejable abrir una posición según el potencial ratio riesgo/beneficio de la misma. Gestión de la salida: su objetivo es aplicar diversos filtros o
establecer las condiciones que se deben dar para cerrar una posición o abrir la contraria, procedimientos de control del riesgo (stop de pérdidas) y procedimientos para establecer el objetivo de ganancias (toma de beneficios). Estos dos procesos se alimentan de las variables explicadas anteriormente y de los parámetros de configuración con los valores asignados en el momento de habilitar el sistema para su ejecución o pruebas, pero además aparece un nuevo elemento que será de vital importancia para la labor de diseño y construcción del sistema: la dimensión temporal. Cuando operamos un determinado instrumento estamos pegados a la pantalla del ordenador, pero realmente ¿qué es lo que estamos observando? Una secuencia temporal de cotizaciones o dimensión temporal, todos los gráficos de las herramientas que hay disponibles en el mercado tienen la particularidad de permitirnos configurar la dimensión temporal de la serie de datos o cotizaciones que queremos observar, las más extendidas son: Mensual (M), Semanal (W), diaria (D) y las horarias (60m, 30m, 15m, 5m 1m) y esto tenemos que tenerlo en cuenta cuando procedamos al diseño de nuestro sistema.
Gestión de la entrada: su objetivo es aplicar diversos filtros
o establecer las condiciones que se deben dar para abrir una posición, también muchos sistemas incorporan como parte de este proceso la imprescindible gestión del capital o Money Ma-
La dimensión temporal está vinculada a cada uno de los procesos descritos y más concretamente a los filtros o condiciones particulares, pudiendo tener una dimensión temporal para la
Como variables externas las hay para todos los gustos y de todos los colores, la mayoría de ellas, por no decir todas son independientes del instrumento. Normalmente están dentro de alguno de estos dos grandes grupos: 1. Los indicadores que en base a las variables internas y
fórmulas matemáticas calculan determinados valores que utilizamos en nuestros sistemas y que tendremos en cuenta en nuestro diseño, un ejemplo sería el indicador RSI o el MACD. 2. Las variables de gestión del sistema, este grupo lo con-
forman aquellos datos que nos permiten adapta r nuestro sistema a nuestra manera de operar, básicamente nos servirán para controlar el riesgo. Las más utilizadas son el número de contratos, el capital disponible para operar,
Figura 3. Componentes generales y flujo de un sistema automático
8
9
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
entrada (por ejemplo que se cumpla una determinada condición al cierre diario) y otra diferente para la salida (por ejemplo que no se viole el mínimo de la primera hora de negociación) y rizando el rizo, podríamos incluso tener diferentes dimensiones dentro de un mismo proceso de entrada/salida, a modo de ejemplo imaginaros un sistema donde solo la apertura de una posición estará condicionada al cierre en positivo del día anterior y a la rotura del máximo de la primera hora de negociación para ponerse largo. A modo de recomendación y teniendo como máxima la simplificación del sistema, siempre es posible traducir un determinado filtro o condición a una dimensión más pequeña por lo que si nos encontramos en esta situación elegiremos como dimensión predeterminada la menor. Para terminar la fase de diseño necesitamos identificar las reglas o condiciones de nuestro sistema que estarán compuestas por grupos de filtros tanto para la entrada como para la salida y que definirán el comportamiento del sistema en el mercado. Esta es quizás la parte más difícil aunque con un poco de práctica es pan comido, vamos a ver algunos ejemplos para que quede más claro:
REGLA 1 Cruce de una media de 50 sesiones al alza: Variables: Precio e indicador Media_50
Filtro 1: precio_cierre(1) <= Media_50(1) Filtro 2: precio_cierre(0) > Media_50(0)
REGLA 2 El día anterior debe ser una ‘inside bar ’ o el anterior a ésta es positivo:
REGLA 2.1 El día anterior debe ser una ‘inside bar’: Variables: Precio
Filtro 1: precio_maximo(1) < precio_maximo(0) Filtro 2: precio_minimo(1) > precio_minimo(0)
REGLA 2.2 El día anterior al de la ‘inside bar’ tiene que ser positivo: Variables: Precio
Filtro 1: precio_apertura(2) < precio_cierre(2)
REGLA 3 Abrir posición a la rotura del máximo de la primera hora de negociación: Parámetros configuración: Primera_hora_negociacion Dimensión: 60m Variables: Precio y tiempo
LA ESPERANZA
MATEMÁTICA
POSITIVA
Filtro 1: tiempo(0) = Primera_hora_negociacion Filtro 2: precio(0) > precio_maximo(1) Ya solo nos queda plasmar en un papel todo lo que hemos ido viendo y lo haremos en una plantilla parecida a esta: Y lo acompañaremos de gráficos y del registro de operaciones donde se hayan obtenido resultados positivos y negativos. No solo es una valiosa herramienta y metodología que nos obliga a analizar y depurar nuestro sistema sino que ademá s nos permite tener nuestros sistemas bien documentados y preparados para su automatización.
La fiabilidad y el Ratio de pérdidas y ganancia s de un sistema de forma combinada pueden proporcionarnos un nuevo dato de crucial importancia conocido como: Esperanza Matemática.
E
POR JESÚS FERNÁNDEZ n los libros de trading se lee habitualmente que los sistemas deben tener una esperanza matemática positiva. Pues bien, en este artículo intentaré explicar de la manera más simple que es la esperanza matemática y cuál es su importancia en los sistemas de trading.
La fiabilidad no tiene importancia aisladamente. Un sistema con una fiabilidad del 20% no tiene porque ser malo y uno con un 80% no tiene porque ser bueno. La fiabilidad es un dato estadístico de una importancia relativa puesto que depende de otro, el ratio profit/loss.
En primer lugar, la esperanza matemática se basa en otros dos componentes estadísticos, la fiabilidad y el ratio profit/loss. Veamos pues cada uno de ellos.
El ratio profit/loss no es más que el cociente entre la ganancia media de las jugada s positivas y la pérdida media de las jugadas negativas. ambién se le llama ratio win/loss o positivos/ negativos si lo queremos decir en castellano. Usaremos a partir de ahora la abreviatura W/L para referirnos a él.
La fiabilidad no es más que el cociente entre jugadas ganadoras y jugadas totales. Dicho coc iente nos da la Fiabilidad en tanto por uno. Multiplicando este número por 100 tendremos el tanto por ciento que es como normalmente se expresa la fiabilidad. Por ejemplo, si tenemos 40 jugadas ganadoras de un total de 100 jugadas diremos que la fiabilidad de nuestro sistema es 0.4 o el 40%. Figura 3. Componentes generales y flujo de un sistema automático
10
FIABILIDAD =
JUGADAS GANADORAS JUGADAS GANADORAS
RATIO PROFIT/LOSS =
GANANCIA MEDIA JUGADAS POSITIVAS PERDIDA MEDIA JUGADAS NEGATIVAS
Para un sistema de trading contra más alto sea este ratio mejor, por supuesto. Sin embargo, aisladamente no nos dice nada. No es cierto que un sistema con un ratio W/L de1 sea malo, no es cierto que un sistema con un ratio W/L de 5 sea bueno. Depende de la fiabilidad.
11
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
entrada (por ejemplo que se cumpla una determinada condición al cierre diario) y otra diferente para la salida (por ejemplo que no se viole el mínimo de la primera hora de negociación) y rizando el rizo, podríamos incluso tener diferentes dimensiones dentro de un mismo proceso de entrada/salida, a modo de ejemplo imaginaros un sistema donde solo la apertura de una posición estará condicionada al cierre en positivo del día anterior y a la rotura del máximo de la primera hora de negociación para ponerse largo. A modo de recomendación y teniendo como máxima la simplificación del sistema, siempre es posible traducir un determinado filtro o condición a una dimensión más pequeña por lo que si nos encontramos en esta situación elegiremos como dimensión predeterminada la menor. Para terminar la fase de diseño necesitamos identificar las reglas o condiciones de nuestro sistema que estarán compuestas por grupos de filtros tanto para la entrada como para la salida y que definirán el comportamiento del sistema en el mercado. Esta es quizás la parte más difícil aunque con un poco de práctica es pan comido, vamos a ver algunos ejemplos para que quede más claro:
REGLA 1 Cruce de una media de 50 sesiones al alza: Variables: Precio e indicador Media_50
Filtro 1: precio_cierre(1) <= Media_50(1) Filtro 2: precio_cierre(0) > Media_50(0)
REGLA 2 El día anterior debe ser una ‘inside bar ’ o el anterior a ésta es positivo:
REGLA 2.1 El día anterior debe ser una ‘inside bar’: Variables: Precio
Filtro 1: precio_maximo(1) < precio_maximo(0) Filtro 2: precio_minimo(1) > precio_minimo(0)
REGLA 2.2 El día anterior al de la ‘inside bar’ tiene que ser positivo: Variables: Precio
Filtro 1: precio_apertura(2) < precio_cierre(2)
REGLA 3 Abrir posición a la rotura del máximo de la primera hora de negociación: Parámetros configuración: Primera_hora_negociacion Dimensión: 60m Variables: Precio y tiempo
LA ESPERANZA
MATEMÁTICA
POSITIVA
Filtro 1: tiempo(0) = Primera_hora_negociacion Filtro 2: precio(0) > precio_maximo(1) Ya solo nos queda plasmar en un papel todo lo que hemos ido viendo y lo haremos en una plantilla parecida a esta: Y lo acompañaremos de gráficos y del registro de operaciones donde se hayan obtenido resultados positivos y negativos. No solo es una valiosa herramienta y metodología que nos obliga a analizar y depurar nuestro sistema sino que ademá s nos permite tener nuestros sistemas bien documentados y preparados para su automatización.
La fiabilidad y el Ratio de pérdidas y ganancia s de un sistema de forma combinada pueden proporcionarnos un nuevo dato de crucial importancia conocido como: Esperanza Matemática.
E
POR JESÚS FERNÁNDEZ n los libros de trading se lee habitualmente que los sistemas deben tener una esperanza matemática positiva. Pues bien, en este artículo intentaré explicar de la manera más simple que es la esperanza matemática y cuál es su importancia en los sistemas de trading.
La fiabilidad no tiene importancia aisladamente. Un sistema con una fiabilidad del 20% no tiene porque ser malo y uno con un 80% no tiene porque ser bueno. La fiabilidad es un dato estadístico de una importancia relativa puesto que depende de otro, el ratio profit/loss.
En primer lugar, la esperanza matemática se basa en otros dos componentes estadísticos, la fiabilidad y el ratio profit/loss. Veamos pues cada uno de ellos.
El ratio profit/loss no es más que el cociente entre la ganancia media de las jugada s positivas y la pérdida media de las jugadas negativas. ambién se le llama ratio win/loss o positivos/ negativos si lo queremos decir en castellano. Usaremos a partir de ahora la abreviatura W/L para referirnos a él.
La fiabilidad no es más que el cociente entre jugadas ganadoras y jugadas totales. Dicho coc iente nos da la Fiabilidad en tanto por uno. Multiplicando este número por 100 tendremos el tanto por ciento que es como normalmente se expresa la fiabilidad. Por ejemplo, si tenemos 40 jugadas ganadoras de un total de 100 jugadas diremos que la fiabilidad de nuestro sistema es 0.4 o el 40%. Figura 3. Componentes generales y flujo de un sistema automático
FIABILIDAD =
JUGADAS GANADORAS JUGADAS GANADORAS
RATIO PROFIT/LOSS =
GANANCIA MEDIA JUGADAS POSITIVAS PERDIDA MEDIA JUGADAS NEGATIVAS
Para un sistema de trading contra más alto sea este ratio mejor, por supuesto. Sin embargo, aisladamente no nos dice nada. No es cierto que un sistema con un ratio W/L de1 sea malo, no es cierto que un sistema con un ratio W/L de 5 sea bueno. Depende de la fiabilidad.
10
11
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
Y si ni la fiabilidad ni el ratio W/L son importantes aisladamente porque dependen uno del otro ¿hay algún estadístico que nos los relacione? Si, y se llama Esperanza Matemática. La esperanza matemática es la ganancia media por jugada. Si digo que mi sistema tiene una esperanza de 50€ quiero decir que gano 50€, como promedio, cada vez que juego. A la hora de valorar la esperanza de un sistema hay que saber si los gastos, comisiones y slippages, están incluidos o no. ambién el valor del tick y la amplitud promedio del recorrido de los precios durante un día. A los mercados más “potentes” como los futuros del DAX o del IBEX habría que pedirles mayor esperanza que a mercados menores como el futuro del EUROSOXX o del CAC. En todo caso, deberíamos tener una esperanza mínima para poder aceptar un sistema. En caso contrario, desviaciones en el slippage por ejemplo, pueden comerse la pequeña esperanza que teníamos.
ESPERANZA = FIABILIDAD * * GANANCIA MEDIA J. POSITIVAS - ( 1 - FIABILIDAD) * * PÉRDIDA MEDIA J. NEGATIVAS Ejemplo: Supongamos un sistema con los siguientes datos:
FIABLIDAD = 40% GANANCIA MEDIA JUGADAS POSITIVAS = 1000€ PERDIDA MEDIA JUGADAS NEGATIVAS = 500€ ¿Cuál será su esperanza?
ESPERANZA = 0.4 * 1000€ - 0.6 * 500€ = 100€
¿Introducir un objetivo mejora o empeora la fiabilidad? La me jora, algunas jugadas negativas las convertimos en positivas. ¿Introducir un objetivo mejora o empeora el W/L? Lo empeora, estamos cortando las mejores jugadas y, por tanto, empeorando la ganancia media por ju gada, es decir, el numerador del ratio. Establecemos en el sistema un stop loss en puntos o porcentual o en función de algún indicador o como sea:
Establecemos en el sistema un objetivo en puntos o porcentual o en función de algún indicador o como sea:
12
SUAVIDAD
¿Introducir un stop loss mejora o empeora el W/L? Lo mejora, estamos cortando las peores jugadas y , por tanto, mejorando la pérdida media por jug ada, es decir, el denominador del ratio. Menudo lío. Si introducir un objetivo o un stop loss mejora uno de los parámetros y empeora el otro ¿Es bueno añadir un stop loss en un sistema? ¿Es bueno añadir un objetivo en un sistema? Depende. Como casi todo en el trading, pues depende. Y ¿de qué depende? De que mejoremos la esperanza matemática, de eso depende. En otras palabras, de que mejoremos el balance fiabilidad y W/L. El gráfico a continuación proviene de una optimización de un sistema cualquiera en un mercado cualquiera. En el gráfico podemos ver como varía la esperanza matemática de un sistema en función de la pareja fiabilidad y ratio win/loss. En este sistema, lo mejor sería optar por la combinación de parámetros que nos diera una fiabilidad alta, cerca del 50%, con un ratio win/loss alrededor de 1.3. Con ello tendríamos una esperanza cercana a 200€.
Como vemos, la Esperanza depende solo de los dos estadísticos presentados anteriormente, de la fiabilidad p or un lado y del W/L por otro. Para un trader es importante entender la relación entre ambos. Entre dos sistemas con una misma fiabilidad será mejor el sistema que tenga mayor W/L y entre dos sistemas con el mismo W/L será mejor el que tenga mayor fiabilidad. Son vasos comunicantes, cuando asciende el uno, baja el otro y vice versa. Lo ideal sería encontrar sistemas con alta fiabilidad y alto W/L pero eso es una quimera. Hay que conformarse con encontrar una combinación de ambos que nos ofrezca una esperanza decente. En el trading no hay milagros. Veamos ahora, como ejercicio didáctico, la relación con la fiabilidad y con el W/L de un stoploss y un objetivo. Imaginemos un sistema muy simple que no usa ni stop loss ni objetivo y que queremos añadirlos para intentar mejorarlo. Os propongo un ejercicio mental sencillo. Intentar responder a las siguientes preguntas por vosotros mismos sin leer la respuesta.
LA IMPORTANCIA DE LA
¿Introducir un stop loss mejora o empeora la fiabilidad? La empeora, algunas jugadas positivas las convertimos en negativas porque salta el stop.
EN LA CURVA DE BENEFICIOS Cuando a un sistema en su curva de beneficios se le aplica el análisis de regresión lineal, se busca la recta que tenga menor error cuadrático medio. POR FRANCISCO LÓPEZ VALVERDE
E
n la evaluación de sistemas podemos encontrar una variedad amplia de parámetros estadísticos que nos dan una información detallada del comportamiento del sistema. Por ejemplo: Ganancia media anual, porcentaje de aciertos, máximo drawdown histórico, ratios de rentabilidad (ganancia / riesgo) etc. Sin embargo hay una característica muy importante para medir el comportamiento que no queda reflejada en estos parámetros estadísticos simples que es la sua vidad de la línea de beneficios.
ciamos que en ambos casos el máximo DrawDown histórico es similar. Sin embargo, la evolución de estos beneficios a lo largo de estos diez años es diferente.
Si en un gráfico ponemos un punto por cada operación indicando el beneficio o pérdida de ésta y posteriormente trazamos una línea que une todos los puntos obtendremos la línea de beneficios del sistema. La forma ideal de esta línea es que tenga una pendiente constante y recta, es decir que sea lineal. Esta característica de linealidad de la curva tiene implicaciones de tipo psicológico para el inversor y también implicaciones técnicas importantes cuando aplicamos gestión de capital. Como colofón al artículo aconsejaría a todo trader novato que sea escéptico, que se aleje de los que parecen tenerlo todo clarísimo, de los que prometen el oro y el moro. En este duro oficio, esto no es más que un oficio, la prepotencia conduce a la ruina.
Consideremos dos sistemas que llamaremos sistema A y sistema B. Ambos sistemas obtienen unos beneficios aproximados de 9.000 € en un periodo de diez años. En la Figuras 1 y 2 podemos observar la curva de beneficios de ambos sistemas. Apre-
Figura 1. Curva de resultados del sistema A. Obtiene unos resultados de 9.000 € aproximadamente en diez años.
13
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
Y si ni la fiabilidad ni el ratio W/L son importantes aisladamente porque dependen uno del otro ¿hay algún estadístico que nos los relacione? Si, y se llama Esperanza Matemática. La esperanza matemática es la ganancia media por jugada. Si digo que mi sistema tiene una esperanza de 50€ quiero decir que gano 50€, como promedio, cada vez que juego. A la hora de valorar la esperanza de un sistema hay que saber si los gastos, comisiones y slippages, están incluidos o no. ambién el valor del tick y la amplitud promedio del recorrido de los precios durante un día. A los mercados más “potentes” como los futuros del DAX o del IBEX habría que pedirles mayor esperanza que a mercados menores como el futuro del EUROSOXX o del CAC. En todo caso, deberíamos tener una esperanza mínima para poder aceptar un sistema. En caso contrario, desviaciones en el slippage por ejemplo, pueden comerse la pequeña esperanza que teníamos.
ESPERANZA = FIABILIDAD * * GANANCIA MEDIA J. POSITIVAS - ( 1 - FIABILIDAD) * * PÉRDIDA MEDIA J. NEGATIVAS Ejemplo: Supongamos un sistema con los siguientes datos:
FIABLIDAD = 40% GANANCIA MEDIA JUGADAS POSITIVAS = 1000€ PERDIDA MEDIA JUGADAS NEGATIVAS = 500€ ¿Cuál será su esperanza?
ESPERANZA = 0.4 * 1000€ - 0.6 * 500€ = 100€
¿Introducir un objetivo mejora o empeora la fiabilidad? La me jora, algunas jugadas negativas las convertimos en positivas. ¿Introducir un objetivo mejora o empeora el W/L? Lo empeora, estamos cortando las mejores jugadas y, por tanto, empeorando la ganancia media por ju gada, es decir, el numerador del ratio. Establecemos en el sistema un stop loss en puntos o porcentual o en función de algún indicador o como sea:
Establecemos en el sistema un objetivo en puntos o porcentual o en función de algún indicador o como sea:
SUAVIDAD
¿Introducir un stop loss mejora o empeora el W/L? Lo mejora, estamos cortando las peores jugadas y , por tanto, mejorando la pérdida media por jug ada, es decir, el denominador del ratio. Menudo lío. Si introducir un objetivo o un stop loss mejora uno de los parámetros y empeora el otro ¿Es bueno añadir un stop loss en un sistema? ¿Es bueno añadir un objetivo en un sistema? Depende. Como casi todo en el trading, pues depende. Y ¿de qué depende? De que mejoremos la esperanza matemática, de eso depende. En otras palabras, de que mejoremos el balance fiabilidad y W/L. El gráfico a continuación proviene de una optimización de un sistema cualquiera en un mercado cualquiera. En el gráfico podemos ver como varía la esperanza matemática de un sistema en función de la pareja fiabilidad y ratio win/loss. En este sistema, lo mejor sería optar por la combinación de parámetros que nos diera una fiabilidad alta, cerca del 50%, con un ratio win/loss alrededor de 1.3. Con ello tendríamos una esperanza cercana a 200€.
Como vemos, la Esperanza depende solo de los dos estadísticos presentados anteriormente, de la fiabilidad p or un lado y del W/L por otro. Para un trader es importante entender la relación entre ambos. Entre dos sistemas con una misma fiabilidad será mejor el sistema que tenga mayor W/L y entre dos sistemas con el mismo W/L será mejor el que tenga mayor fiabilidad. Son vasos comunicantes, cuando asciende el uno, baja el otro y vice versa. Lo ideal sería encontrar sistemas con alta fiabilidad y alto W/L pero eso es una quimera. Hay que conformarse con encontrar una combinación de ambos que nos ofrezca una esperanza decente. En el trading no hay milagros. Veamos ahora, como ejercicio didáctico, la relación con la fiabilidad y con el W/L de un stoploss y un objetivo. Imaginemos un sistema muy simple que no usa ni stop loss ni objetivo y que queremos añadirlos para intentar mejorarlo. Os propongo un ejercicio mental sencillo. Intentar responder a las siguientes preguntas por vosotros mismos sin leer la respuesta.
LA IMPORTANCIA DE LA
¿Introducir un stop loss mejora o empeora la fiabilidad? La empeora, algunas jugadas positivas las convertimos en negativas porque salta el stop.
EN LA CURVA DE BENEFICIOS Cuando a un sistema en su curva de beneficios se le aplica el análisis de regresión lineal, se busca la recta que tenga menor error cuadrático medio. POR FRANCISCO LÓPEZ VALVERDE
E
n la evaluación de sistemas podemos encontrar una variedad amplia de parámetros estadísticos que nos dan una información detallada del comportamiento del sistema. Por ejemplo: Ganancia media anual, porcentaje de aciertos, máximo drawdown histórico, ratios de rentabilidad (ganancia / riesgo) etc. Sin embargo hay una característica muy importante para medir el comportamiento que no queda reflejada en estos parámetros estadísticos simples que es la sua vidad de la línea de beneficios.
ciamos que en ambos casos el máximo DrawDown histórico es similar. Sin embargo, la evolución de estos beneficios a lo largo de estos diez años es diferente.
Si en un gráfico ponemos un punto por cada operación indicando el beneficio o pérdida de ésta y posteriormente trazamos una línea que une todos los puntos obtendremos la línea de beneficios del sistema. La forma ideal de esta línea es que tenga una pendiente constante y recta, es decir que sea lineal. Esta característica de linealidad de la curva tiene implicaciones de tipo psicológico para el inversor y también implicaciones técnicas importantes cuando aplicamos gestión de capital. Como colofón al artículo aconsejaría a todo trader novato que sea escéptico, que se aleje de los que parecen tenerlo todo clarísimo, de los que prometen el oro y el moro. En este duro oficio, esto no es más que un oficio, la prepotencia conduce a la ruina.
Consideremos dos sistemas que llamaremos sistema A y sistema B. Ambos sistemas obtienen unos beneficios aproximados de 9.000 € en un periodo de diez años. En la Figuras 1 y 2 podemos observar la curva de beneficios de ambos sistemas. Apre-
Figura 1. Curva de resultados del sistema A. Obtiene unos resultados de 9.000 € aproximadamente en diez años.
12
13
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
Cuando a un sistema en su curva de beneficios se le aplica el análisis de regresión lineal, se busca la recta que tenga menor error cuadrático medio. Al comparar dos sistemas será mejor el que su curva de beneficios tenga un menor error cuadrático medio, es decir que se parezca más a una recta. En las Figuras 4 y 5 podemos ver el análisis de regresión lineal para los sistemas A y B respectivamente. Apreciamos que la curva de beneficios del sistema A se acerca más a la línea de regresión (menor error cuadrático medio) que en el sistema B. Hemos comprobado que es deseable que la curva de beneficios de cualquier sistema de inversión sea lo más parecida a una recta con pendiente positiva o alcista. Pero ¿Cómo podemos conseguir esta característica para los sistemas que diseñamos? Pues, tenemos dos vías para lograrlo: La optimización de parámetros y la combinación de sistemas. Figura 2. Curva de resultados del Sistema B.
Figura 4. Análisis de regresión lineal para el sistema A
Un inversor que hubiera optado por el sistema A se hubiera encontrado que en el primer trimestre estaría en ligeras pérdidas, pero a partir del segundo cuatrimestre estaría en beneficios y nunca más en los diez años estaría en pérdidas. En cambio un inversor que hubiera optado por el sistema B se encontraría con pérdidas a lo largo del primer año e incluso no abandonaría la zona de pérdidas hasta el segundo trimestre del segundo año. Psicológicamente es mucho más du ro para el inversor del sistema B que para el inversor del sistema A.
En los últimos cinco años vemos como el sistema B obtiene ma yores beneficios y al final de los diez años ambos sistemas tienen unas ganancias similares.
Observando el medio plazo de esta inversión, es decir a los cinco años, apreciamos que el sistema A ha obtenido un beneficio de 4.000 € que supone casi la mitad del beneficio total obtenido en los diez años (9.000€). Lo ideal (comportamiento lineal) es que el beneficio hubiera sido de 4.500€. En cambio en el sistema B observamos que a los cinco años sólo ha obtenido unos 2.000€ que está muy lejos de los 4.500 € que debería haber obtenido para tener un comportamiento lineal.
Figura 5. Análisis de regresión lineal para el sistema B
En el proceso de optimización de parámetros podemos añadir como condición adicional un mínimo en el coeficiente de regresión lineal para forzar a que la solución encontrada tenga un mínimo de linealidad y de esta forma imponer a que el sistema final sea como deseamos. Pero este proceso de optimización con restricciones no está disponible en muchas plataformas de rading y es necesario acudir a sofisticadas herramientas de análisis numérico en matemáticas como por ejemplo Matlab.
Desde el punto de vista psicológico, el sistema B es mucho más duro que el sistema A y probablemente un inversor del sistema B se hubiera cambiado al sistema A después de ver los resultados del primer año. Desde el punto de vista tecnológico de gestión de capital, si vamos reinvirtiendo los beneficios (aumentando el número de contratos), en el sistema A tenemos mayores beneficios durante los primeros años. De esta forma podremos reinvertir más beneficios en los primeros años y por t anto obtener más ganancias totales al cabo de los 10 años que en el sistema B.
Figura 6. Sistema C y recta de análisis de regresión lineal
El comportamiento ideal es que esta línea de beneficios fuera totalmente recta y con pendiente ascendente. Como esta situación ideal no es posible, lo deseable es que la curva de beneficios sea lo más parecida a una línea recta y esto se consigue mediante el análisis de regresión lineal.
Otra forma de combinar sistemas es aplicar un mismo sistema a varios mercados. Es decir se adapta el sistema para que pueda funcionar en otros mercados. Por ejemplo, un sistema seguidor de tendencia sobre el futuro del DAX se puede adaptar para el mercado del futuro del Euro-Dólar. Puede ocurrir que en un momento determinado en el índice DAX no haya tendencia y el sistema entre en DrawDown, pero puede que en la divisa EuroDólar sí haya tendencia y el sistema obtiene ganancias compensando las pérdidas en el mercado del futuro de DAX.
En estadística, a grandes rasgos, el análisis de regresión lineal consiste en: Dado una serie de puntos (en nuestro caso el beneficio obtenido por el sistema en cada instante de tiempo, en azul en la Figura 3 ) intentar encontrar la línea recta que mejor los represente (en rojo en Figura 3 ).
Figura 3. Análisis de regresión líneal.
Para saber cómo de bien una línea recta representa a la serie de puntos se utiliza el método de mínimos cuadrados. Este método mide las distancias de cada punto a la recta, la eleva al cuadrado y calcula el promedio de todas ellas. A esto se le llama en estadística “Error c uadrático medio”.
La combinación de sistemas es una opción muy utilizada por los traders para conseguir una curva de beneficios con buenos coeficientes de regresión lineal. Consideremos un sistema C que tiene la curva de beneficios representada en la Figura 6 junto con la recta de análisis de regresión lineal y un sistema D representado en la Figura 7 . Ambos sistemas están aplicados a un mismo mercado. En la Figura 8 podemos observar la curva de resultados de la combinación de estos dos sistemas. Vemos como además de tener una mejor recta de análisis de regresión lineal también suaviza los retrocesos o DrawDowns de la curva. Esto es debido a que estos dos sistemas realizan operaciones diferentes y cuando uno tiene una operación negativa, el otro puede tener una operación positiva, compensando de esta forma para reducir los retrocesos o DrawDowns.
Figura 7. Sistema D y recta de análisis de regresión lineal
La clave importante para la combinación de sistemas es que realicen operaciones diferentes, ya sea porque son dos sistemas totalmente diferentes o porque operan en dos mercados que no
15
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
Cuando a un sistema en su curva de beneficios se le aplica el análisis de regresión lineal, se busca la recta que tenga menor error cuadrático medio. Al comparar dos sistemas será mejor el que su curva de beneficios tenga un menor error cuadrático medio, es decir que se parezca más a una recta. En las Figuras 4 y 5 podemos ver el análisis de regresión lineal para los sistemas A y B respectivamente. Apreciamos que la curva de beneficios del sistema A se acerca más a la línea de regresión (menor error cuadrático medio) que en el sistema B. Hemos comprobado que es deseable que la curva de beneficios de cualquier sistema de inversión sea lo más parecida a una recta con pendiente positiva o alcista. Pero ¿Cómo podemos conseguir esta característica para los sistemas que diseñamos? Pues, tenemos dos vías para lograrlo: La optimización de parámetros y la combinación de sistemas. Figura 2. Curva de resultados del Sistema B.
Figura 4. Análisis de regresión lineal para el sistema A
Un inversor que hubiera optado por el sistema A se hubiera encontrado que en el primer trimestre estaría en ligeras pérdidas, pero a partir del segundo cuatrimestre estaría en beneficios y nunca más en los diez años estaría en pérdidas. En cambio un inversor que hubiera optado por el sistema B se encontraría con pérdidas a lo largo del primer año e incluso no abandonaría la zona de pérdidas hasta el segundo trimestre del segundo año. Psicológicamente es mucho más du ro para el inversor del sistema B que para el inversor del sistema A.
En los últimos cinco años vemos como el sistema B obtiene ma yores beneficios y al final de los diez años ambos sistemas tienen unas ganancias similares.
Observando el medio plazo de esta inversión, es decir a los cinco años, apreciamos que el sistema A ha obtenido un beneficio de 4.000 € que supone casi la mitad del beneficio total obtenido en los diez años (9.000€). Lo ideal (comportamiento lineal) es que el beneficio hubiera sido de 4.500€. En cambio en el sistema B observamos que a los cinco años sólo ha obtenido unos 2.000€ que está muy lejos de los 4.500 € que debería haber obtenido para tener un comportamiento lineal.
Figura 5. Análisis de regresión lineal para el sistema B
En el proceso de optimización de parámetros podemos añadir como condición adicional un mínimo en el coeficiente de regresión lineal para forzar a que la solución encontrada tenga un mínimo de linealidad y de esta forma imponer a que el sistema final sea como deseamos. Pero este proceso de optimización con restricciones no está disponible en muchas plataformas de rading y es necesario acudir a sofisticadas herramientas de análisis numérico en matemáticas como por ejemplo Matlab.
Desde el punto de vista psicológico, el sistema B es mucho más duro que el sistema A y probablemente un inversor del sistema B se hubiera cambiado al sistema A después de ver los resultados del primer año. Desde el punto de vista tecnológico de gestión de capital, si vamos reinvirtiendo los beneficios (aumentando el número de contratos), en el sistema A tenemos mayores beneficios durante los primeros años. De esta forma podremos reinvertir más beneficios en los primeros años y por t anto obtener más ganancias totales al cabo de los 10 años que en el sistema B.
Figura 6. Sistema C y recta de análisis de regresión lineal
El comportamiento ideal es que esta línea de beneficios fuera totalmente recta y con pendiente ascendente. Como esta situación ideal no es posible, lo deseable es que la curva de beneficios sea lo más parecida a una línea recta y esto se consigue mediante el análisis de regresión lineal.
Otra forma de combinar sistemas es aplicar un mismo sistema a varios mercados. Es decir se adapta el sistema para que pueda funcionar en otros mercados. Por ejemplo, un sistema seguidor de tendencia sobre el futuro del DAX se puede adaptar para el mercado del futuro del Euro-Dólar. Puede ocurrir que en un momento determinado en el índice DAX no haya tendencia y el sistema entre en DrawDown, pero puede que en la divisa EuroDólar sí haya tendencia y el sistema obtiene ganancias compensando las pérdidas en el mercado del futuro de DAX.
En estadística, a grandes rasgos, el análisis de regresión lineal consiste en: Dado una serie de puntos (en nuestro caso el beneficio obtenido por el sistema en cada instante de tiempo, en azul en la Figura 3 ) intentar encontrar la línea recta que mejor los represente (en rojo en Figura 3 ).
Figura 3. Análisis de regresión líneal.
Para saber cómo de bien una línea recta representa a la serie de puntos se utiliza el método de mínimos cuadrados. Este método mide las distancias de cada punto a la recta, la eleva al cuadrado y calcula el promedio de todas ellas. A esto se le llama en estadística “Error c uadrático medio”.
La combinación de sistemas es una opción muy utilizada por los traders para conseguir una curva de beneficios con buenos coeficientes de regresión lineal. Consideremos un sistema C que tiene la curva de beneficios representada en la Figura 6 junto con la recta de análisis de regresión lineal y un sistema D representado en la Figura 7 . Ambos sistemas están aplicados a un mismo mercado. En la Figura 8 podemos observar la curva de resultados de la combinación de estos dos sistemas. Vemos como además de tener una mejor recta de análisis de regresión lineal también suaviza los retrocesos o DrawDowns de la curva. Esto es debido a que estos dos sistemas realizan operaciones diferentes y cuando uno tiene una operación negativa, el otro puede tener una operación positiva, compensando de esta forma para reducir los retrocesos o DrawDowns.
Figura 7. Sistema D y recta de análisis de regresión lineal
La clave importante para la combinación de sistemas es que realicen operaciones diferentes, ya sea porque son dos sistemas totalmente diferentes o porque operan en dos mercados que no
15
GUÍA DE SISTEMAS DE TRADING
están correlacionados. La correlación va a ser el concepto que nos va a indicar la conveniencia de dos sistemas para ser combinados. Y para ello vamos a analizar la correlación entre las curvas de beneficios de ambos sistemas. En probabilidad y estadística, la correlación indica la fuerza y la dirección de una relación lineal entre dos variables aleatorias. Se considera que dos variables cuantitativas están correlacionadas cuando los valores de una de ellas varían sistemáticamente con respecto a los valores homónimos de la otra: si tenemos dos variables (A y B) existe correlación si al aumentar los valores de A lo hacen también los de B y viceversa. La correlación entre dos variables no implica, por sí misma, ninguna relación de causalidad
Figura 8. Combinación de los sistemas C y D con recta de análisis de regresión lineal.
La relación entre dos super variables cuantitativas queda representada mediante la línea de mejor ajuste, trazada a partir de la nube de puntos. Los principales componentes elementales de una correlación, son la fuerza y el sentido. La fuerza extrema según el caso, mide el grado en que la línea representa a la nube de puntos: si la nube es estrecha y alargada, se representa por una línea recta, lo que indica que la relación es fuerte; si la nube de puntos tiene una tendencia elíptica o circular, la relación es débil. El sentido mide la variación de los valores de B con respecto a A: si al crecer los valores de A lo hacen los de B, la relación es positiva; si al crecer los valores de A disminuyen los de B, la relación es negativa. Existen diversos coeficientes que miden el grado de correlación, adaptados a la naturaleza de los datos. El más conocido es el coeficiente de correlación de Pearson. Así, podemos calcular el coeficiente de correlación de Pearson a la curva de resultados de dos sistemas para averiguar como de parecido es su comportamiento y por tanto su idoneidad para ser combinados.
Foto: Sir Francis Galton (1822-1911). Introdujo el término regresión en su libro Natural Inheritance (1889). Su trabajo se centró en la descripción de los rasgos f ísicos de los de scendientes (variable A) a partir de los de sus padres (variable B). Ha sido llamado el padre de la psicología diferencial.
16
GUÍA DE SISTEMAS DE TRADING
están correlacionados. La correlación va a ser el concepto que nos va a indicar la conveniencia de dos sistemas para ser combinados. Y para ello vamos a analizar la correlación entre las curvas de beneficios de ambos sistemas. En probabilidad y estadística, la correlación indica la fuerza y la dirección de una relación lineal entre dos variables aleatorias. Se considera que dos variables cuantitativas están correlacionadas cuando los valores de una de ellas varían sistemáticamente con respecto a los valores homónimos de la otra: si tenemos dos variables (A y B) existe correlación si al aumentar los valores de A lo hacen también los de B y viceversa. La correlación entre dos variables no implica, por sí misma, ninguna relación de causalidad
Figura 8. Combinación de los sistemas C y D con recta de análisis de regresión lineal.
La relación entre dos super variables cuantitativas queda representada mediante la línea de mejor ajuste, trazada a partir de la nube de puntos. Los principales componentes elementales de una correlación, son la fuerza y el sentido. La fuerza extrema según el caso, mide el grado en que la línea representa a la nube de puntos: si la nube es estrecha y alargada, se representa por una línea recta, lo que indica que la relación es fuerte; si la nube de puntos tiene una tendencia elíptica o circular, la relación es débil. El sentido mide la variación de los valores de B con respecto a A: si al crecer los valores de A lo hacen los de B, la relación es positiva; si al crecer los valores de A disminuyen los de B, la relación es negativa. Existen diversos coeficientes que miden el grado de correlación, adaptados a la naturaleza de los datos. El más conocido es el coeficiente de correlación de Pearson. Así, podemos calcular el coeficiente de correlación de Pearson a la curva de resultados de dos sistemas para averiguar como de parecido es su comportamiento y por tanto su idoneidad para ser combinados.
Foto: Sir Francis Galton (1822-1911). Introdujo el término regresión en su libro Natural Inheritance (1889). Su trabajo se centró en la descripción de los rasgos f ísicos de los de scendientes (variable A) a partir de los de sus padres (variable B). Ha sido llamado el padre de la psicología diferencial.
16
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
OPTIMIZACIÓN DE SISTEMAS DE TRADING AUTOMÁTICO
Figura 1. Optimizando los parámetros MATrendPeriod y TakeProfit de un sistema de trading. Las columnas Iniciar, Paso y Detener dete minan el tamaño del espacio de optimización.
Las columnas Iniciar, Paso y Detener determinan el tamaño del espacio de optimización.
El método del Walk Fordward Analysis, diseñado por Robert Pardo, es un sistema completo de análisis de sistemas.
Podemos hacer muchas simulaciones modificando los valores de cada parámetro.
POR JUAN MANUEL ALMODÓVAR
LA OPTIMIZACIÓN ES EL PROCESO MEDIANTE EL CUAL OBTENEMOS EL MEJOR CONJUNTO DE PARÁMETROS PARA UN SISTEMA QUE NOS PERMITEN ALCANZAR Y MANTENER LOS PICOS DE RENDIMIENTO EN LA OPERATIVA REAL
C
ada mercado tiene su propia forma de comportarse, en ellos uno de los rasgos fundamentales es la capacidad de evolución mediante el cambio y la adaptación a la nueva información y a las acciones de sus participantes. Para conseguir un rendimiento óptimo de nuestras estrategias de trading es fundamental poder adaptar correctamente nuestros sistemas automáticos a este cambio continuo de los mercados. La mayoría de las plataformas de trading que permiten diseñar sistemas automáticos incorporan algún tipo de optimizador más o menos avanzado. El optimizador idealmente obtendría de cada sistema, seleccionando la mejor de una serie de pruebas históricas, uno o varios conjuntos de parámetros óptimos con los que el sistema se desarrollaría al máximo de su potencial en cada uno de los mercados. Sin embargo es muy fácil sobreoptimizar, es decir, optimizar erroneamente un sistema, obteniendo resultados espectaculares en la simulación y desastrosos en la operativa real. En su libro Te Evaluation and Optimization of rading Strategies 2nd ed, Robert Pardo presidente de Pardo Capital Limited (uno de los mejores 30 CA según el ranking Barclay Hedge) explica detalladamente el proceso completo de diseño de sistemas de trading. Especialmente interesante es su método de optimización y evaluación de sistemas de trading denominado Walk Forward Analysis. En este artículo haremos una breve introducción a la optimización de sistemas mediante el método WFA de Pardo.
18
¿QUÉ ES LA OPTIMIZACIÓN DE SISTEMAS AUTOMÁTICOS? La optimización es el proceso mediante el cual obtenemos el mejor conjunto de parámetros para un sistema que nos permiten alcanzar y mantener los picos de rendimiento en la operativa real. Es un error común creer que la estrategia que muestra los mayores beneficios en la optimización será la que mejor rendimiento dé en operativa real. La correcta optimización no se centra en el rendimiento obtenido en la simulación sino en otros valores que miden su robustez. Un sistema es robusto por definición si resiste a los cambios de condiciones de mercado y produce beneficios en tiempo real de forma consistente con los producidos en la simulación. Solo así, analizando la robustez del sistema,
Por ejemplo 10 para la lenta y 30 para la rápida, 15 y 20, 50 y 200, etc. En cada simulación obtendremos distintos resultados en función de los parámetros elegidos. El espacio de optimización es el conjunto de todas los posibles combinaciones de parámetros con los que una simulación histórica puede ser ejecutada. Haciendo simulaciones con determinados rangos de parámetros podemos obtener una tabla de rendimiento como ésta:
obtendremos los parámetros óptimos que permitirán desarrollar su máximo potencial en la operativa real. Hay tres componentes fundamentales del proceso de optimización: el espacio de optimización, la búsqueda en el espacio de optimización y la función objetivo.
EL ESPACIO DE OPTIMIZACIÓN, EL MÉTODO DE BÚSQUEDA Y LA FUNCIÓN OBJETIVO Supongamos que nuestro sistema automático es un socorrido cruce de medias. Como sabemos esta estrategia consiste en abrir una posición larga cada vez que la media rápida cruza por encima de la media lenta, la posición se cierra al cruce inverso que se utiliza a su vez como señal de entrada en cortos. Los parámetros determinantes son por tanto los periodos de las medias rápida y lenta, en el momento de ejecutar este sistema debemos elegir qué parámetros utilizar.
Figura 2. Tabla de Rendimiento.
Donde se muestra el resultado de las combinaciones de la media rápida desde 5 hasta 21 en pasos de 2 y de la media lenta desde 10 hasta 120 en pasos de 10. El color más oscuro indica un ma yor beneficio de la combinación de parámetros. Estos espacios de optimización crecen muy rápidamente conforme más dimensiones (parámetros a optimizar) añadimos. El
19
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
OPTIMIZACIÓN DE SISTEMAS DE TRADING AUTOMÁTICO
Figura 1. Optimizando los parámetros MATrendPeriod y TakeProfit de un sistema de trading. Las columnas Iniciar, Paso y Detener dete minan el tamaño del espacio de optimización.
Las columnas Iniciar, Paso y Detener determinan el tamaño del espacio de optimización.
El método del Walk Fordward Analysis, diseñado por Robert Pardo, es un sistema completo de análisis de sistemas.
Podemos hacer muchas simulaciones modificando los valores de cada parámetro.
POR JUAN MANUEL ALMODÓVAR
LA OPTIMIZACIÓN ES EL PROCESO MEDIANTE EL CUAL OBTENEMOS EL MEJOR CONJUNTO DE PARÁMETROS PARA UN SISTEMA QUE NOS PERMITEN ALCANZAR Y MANTENER LOS PICOS DE RENDIMIENTO EN LA OPERATIVA REAL
C
ada mercado tiene su propia forma de comportarse, en ellos uno de los rasgos fundamentales es la capacidad de evolución mediante el cambio y la adaptación a la nueva información y a las acciones de sus participantes. Para conseguir un rendimiento óptimo de nuestras estrategias de trading es fundamental poder adaptar correctamente nuestros sistemas automáticos a este cambio continuo de los mercados. La mayoría de las plataformas de trading que permiten diseñar sistemas automáticos incorporan algún tipo de optimizador más o menos avanzado. El optimizador idealmente obtendría de cada sistema, seleccionando la mejor de una serie de pruebas históricas, uno o varios conjuntos de parámetros óptimos con los que el sistema se desarrollaría al máximo de su potencial en cada uno de los mercados. Sin embargo es muy fácil sobreoptimizar, es decir, optimizar erroneamente un sistema, obteniendo resultados espectaculares en la simulación y desastrosos en la operativa real. En su libro Te Evaluation and Optimization of rading Strategies 2nd ed, Robert Pardo presidente de Pardo Capital Limited (uno de los mejores 30 CA según el ranking Barclay Hedge) explica detalladamente el proceso completo de diseño de sistemas de trading. Especialmente interesante es su método de optimización y evaluación de sistemas de trading denominado Walk Forward Analysis. En este artículo haremos una breve introducción a la optimización de sistemas mediante el método WFA de Pardo.
¿QUÉ ES LA OPTIMIZACIÓN DE SISTEMAS AUTOMÁTICOS? La optimización es el proceso mediante el cual obtenemos el mejor conjunto de parámetros para un sistema que nos permiten alcanzar y mantener los picos de rendimiento en la operativa real. Es un error común creer que la estrategia que muestra los mayores beneficios en la optimización será la que mejor rendimiento dé en operativa real. La correcta optimización no se centra en el rendimiento obtenido en la simulación sino en otros valores que miden su robustez. Un sistema es robusto por definición si resiste a los cambios de condiciones de mercado y produce beneficios en tiempo real de forma consistente con los producidos en la simulación. Solo así, analizando la robustez del sistema,
Por ejemplo 10 para la lenta y 30 para la rápida, 15 y 20, 50 y 200, etc. En cada simulación obtendremos distintos resultados en función de los parámetros elegidos. El espacio de optimización es el conjunto de todas los posibles combinaciones de parámetros con los que una simulación histórica puede ser ejecutada. Haciendo simulaciones con determinados rangos de parámetros podemos obtener una tabla de rendimiento como ésta:
obtendremos los parámetros óptimos que permitirán desarrollar su máximo potencial en la operativa real. Hay tres componentes fundamentales del proceso de optimización: el espacio de optimización, la búsqueda en el espacio de optimización y la función objetivo.
EL ESPACIO DE OPTIMIZACIÓN, EL MÉTODO DE BÚSQUEDA Y LA FUNCIÓN OBJETIVO Supongamos que nuestro sistema automático es un socorrido cruce de medias. Como sabemos esta estrategia consiste en abrir una posición larga cada vez que la media rápida cruza por encima de la media lenta, la posición se cierra al cruce inverso que se utiliza a su vez como señal de entrada en cortos. Los parámetros determinantes son por tanto los periodos de las medias rápida y lenta, en el momento de ejecutar este sistema debemos elegir qué parámetros utilizar.
Figura 2. Tabla de Rendimiento.
Donde se muestra el resultado de las combinaciones de la media rápida desde 5 hasta 21 en pasos de 2 y de la media lenta desde 10 hasta 120 en pasos de 10. El color más oscuro indica un ma yor beneficio de la combinación de parámetros. Estos espacios de optimización crecen muy rápidamente conforme más dimensiones (parámetros a optimizar) añadimos. El
18
19
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
número de simulaciones a realizar (y por tanto el tiempo necesario para obtener la optimización) se dispara al añadir un tercer o cuarto parámetro y es habitual diseñar sistemas de trading con 10 o 20 parámetros. Para evitar este problema existe una solución de compromiso entre el detalle y la velocidad del análisis llamada método de búsqueda. Figura 4. Esquema de una prueba walk-forward. Cada bloque representa un periodo de tiempo determinado (por ejemplo una semana, un mes o un año).
Los métodos de búsqueda son algoritmos que seleccionan qué
combinaciones deben ser probadas. Reducen enormemente la cantidad de simulaciones necesarias al optimizar. Hay métodos como el Hill Climbing relativamente sencillos y otros mucho más avanzados como los algoritmos genéticos o la optimización basada en enjambres de partículas. La literatura al respecto es enorme y en la red se puede encontrar fácilmente mucha información sobre métodos de búsqueda. Normalmente las plataformas de trading que permiten optimizar incorporan algún método de búsqueda avanzado. Si el método de búsqueda descubre el espacio de optimización mostrando los resultados de todas las combinaciones, la función objetivo explora ese espacio y selecciona los mejores candidatos. Una mala función objetivo puede descartar un buen sistema de trading, o peor aún, validar uno malo. Podríamos caer en el error de diseñar una función objetivo que seleccionara las combinaciones que mayor beneficio han dado en la simulación. Una buena función objetivo debe seleccionar las que hacen más robusta la estrategia. Por ejemplo si utilizamos como criterio de selección maximizar el beneficio podríamos seleccionar simulaciones que tuviesen drawdowns inaceptables, o que hayan obtenido más del 50% de su beneficio en una única gran operación, etc. A la hora de diseñar una función de objetivo hay que buscar aquellas características que hacen a un sistema de trading robusto. Éstas son:
Balance entre beneficios en compra y en venta.
Agrupaciones de parámetros válidos en la optimización.
Comportamiento aceptable en una amplia variedad de mercados.
Riesgo aceptable.
Cantidad de trades estadísticamente significativa.
rayectoria ascendente y continuada de la curva de equidad.
Hay muchas formas de diseñar una función objetivo. Una de ellas, particularmente sencilla y eficiente, es la correlación entre la curva de equidad y el beneficio perfecto. Esta función compa-
20
EL MÉTODO DEL WALK FORWARD ANALYSIS Figura 3. Un posible resultado de optimizar una estrategia con dos parámetros. El eje vertical mide el rendimiento de las pruebas. Aquí es donde se aplica la función objetivo seleccionando los parámetros que hacen más robusta a la estrategia.
ra el rendimiento de la simulación con el beneficio potencial del mercado. El beneficio perfecto es una medida teórica del potencial del mercado, es el beneficio total producido vendiendo en cada máximo y comprando en cada mínimo, evidentemente es imposible en la práctica y de ahí su nombre. Una correlación positiva entre ambas nos indicará que mientras el beneficio perfecto está incrementando, la estrategia está explotando ese incremento. Cuanto más se aproxime la correlación a 1 más efectivamente la estrategia estará capturando la oportunidad en el mercado. Mientras el mercado esté plano la curva de equidad debería mantenerse también más o menos plana, a medida que aumenta la volatilidad y el mercado comienza a hacer recorridos (aumentando el beneficio perfecto) la correlación mostrará si la estrategia es capaz de capturar el movimiento en su f avor.
Este método diseñado por Robert Pardo es un sistema completo de análisis de sistemas que responde a las siguientes preguntas sobre nuestra estrategia de trading:
¿Es robusta? ¿Hará dinero en trading real?
¿Qué tasa de rendimientos se debe esperar?
¿Cómo afectarán los cambios de mercado como la tendencia, volatilidad y liquidez a la estrategia?
¿Cuales son los parámetros que producirán el máximo beneficio con mínimo riesgo?
Una prueba de walk-forward consiste en dos pasos. El primer paso es una optimización normal en la cual se explora el espacio de parámetros para posteriormente seleccionar el mejor conjunto de ellos mediante la función objetivo que previamente hemos diseñado. Es el segundo paso el que distingue el método. En este paso el rendimiento del conjunto de parámetros es evaluado en una muestra adicional y adyacente de datos de precios, es decir, se realiza una simulación para obtener una medida del rendimiento de la postoptimización. Por ejemplo optimizamos la estrategia en una ventana de tiempo de tres meses y hacemos una simulación sobre una ventana de tiempo adyacente y menor (aproximadamente del 33% del tamaño de la ventana principal, un mes). Observemos que los datos de precios de esta última ventana de simulación no se han utilizado para optimizar el sistema, son datos que están fuera de la optimización. A continuación desplazamos las ventanas temporales y repetimos el proceso. Sistemáticamente iremos obteniendo una serie de simulaciones cuyos parámetros han sido elegidos sin optimizar sobre estos datos. Al hacerlo de esta forma el conjunto de parámetros óptimos obtenidos con un WFA están mejor adaptados a las condiciones actuales del mercado, es por esto que el conjunto de parámetros viene con fecha de expiración y conviene reoptimizar periodicamente. Al final del proceso de optimiza ción mediante el Walk Forward Analysis obtendremos un perfil estadístico de nuestra estrategia que nos indica si merece la pena hacer trading con este sistema o no, y en caso afirmativo nos proporcionará los parámetros que permiten a la estrategia desarrollar todo su potencial. A la hora de evaluar y optimizar un sistema hay muchos elementos importantes: la calidad de los datos utilizados, el método de búsqueda y la función objetivo, el tipo de perfil estadístico que genera el análisis, la prueba en múltiples mercados, etc. Podemos trabajar con todos estos elementos creando variaciones y nuevas métricas hasta desarrollar nuestro propio método de análisis de sistemas de trading.
En resumen, esta función objetivo detecta las estrategias que obtienen beneficios conjuntamente con el crecimiento del beneficio perfecto y no pierden mucho cuando el crecimiento del beneficio perfecto se detiene. Por lo tanto, es un excelente candidato para la evaluación. De esta forma ya tenemos definidos el espacio de optimización, la búsqueda en el espacio de optimización y la función objetivo. Estos son los tres elementos que componen una optimización simple. Utilizaremos las optimizaciones simples como elementos de un método mucho más eficiente y completo para analizar y optimizar un sistema automático, el Walk Forward Analysis.
Figura 6. Arriba los resultados mensuales de un backtesting sin optimizar. Abajo el mismo sistema optimizado. Se aprecia una mejora notable.
Realizar correctamente una optimización es un proceso complicado (a la vez que sobreoptimizar es muy sencillo). Sin embargo la evaluación y optimización de sistemas de trading bien utilizada es un elemento poderoso para el trader automático que conviene tener en la caja de herramientas.
21
GUÍA DE SISTEMAS DE TRADING
GUÍA DE SISTEMAS DE TRADING
número de simulaciones a realizar (y por tanto el tiempo necesario para obtener la optimización) se dispara al añadir un tercer o cuarto parámetro y es habitual diseñar sistemas de trading con 10 o 20 parámetros. Para evitar este problema existe una solución de compromiso entre el detalle y la velocidad del análisis llamada método de búsqueda. Figura 4. Esquema de una prueba walk-forward. Cada bloque representa un periodo de tiempo determinado (por ejemplo una semana, un mes o un año).
Los métodos de búsqueda son algoritmos que seleccionan qué
combinaciones deben ser probadas. Reducen enormemente la cantidad de simulaciones necesarias al optimizar. Hay métodos como el Hill Climbing relativamente sencillos y otros mucho más avanzados como los algoritmos genéticos o la optimización basada en enjambres de partículas. La literatura al respecto es enorme y en la red se puede encontrar fácilmente mucha información sobre métodos de búsqueda. Normalmente las plataformas de trading que permiten optimizar incorporan algún método de búsqueda avanzado. Si el método de búsqueda descubre el espacio de optimización mostrando los resultados de todas las combinaciones, la función objetivo explora ese espacio y selecciona los mejores candidatos. Una mala función objetivo puede descartar un buen sistema de trading, o peor aún, validar uno malo. Podríamos caer en el error de diseñar una función objetivo que seleccionara las combinaciones que mayor beneficio han dado en la simulación. Una buena función objetivo debe seleccionar las que hacen más robusta la estrategia. Por ejemplo si utilizamos como criterio de selección maximizar el beneficio podríamos seleccionar simulaciones que tuviesen drawdowns inaceptables, o que hayan obtenido más del 50% de su beneficio en una única gran operación, etc. A la hora de diseñar una función de objetivo hay que buscar aquellas características que hacen a un sistema de trading robusto. Éstas son:
Balance entre beneficios en compra y en venta.
Agrupaciones de parámetros válidos en la optimización.
Comportamiento aceptable en una amplia variedad de mercados.
Riesgo aceptable.
Cantidad de trades estadísticamente significativa.
rayectoria ascendente y continuada de la curva de equidad.
Hay muchas formas de diseñar una función objetivo. Una de ellas, particularmente sencilla y eficiente, es la correlación entre la curva de equidad y el beneficio perfecto. Esta función compa-
20
EL MÉTODO DEL WALK FORWARD ANALYSIS Figura 3. Un posible resultado de optimizar una estrategia con dos parámetros. El eje vertical mide el rendimiento de las pruebas. Aquí es donde se aplica la función objetivo seleccionando los parámetros que hacen más robusta a la estrategia.
ra el rendimiento de la simulación con el beneficio potencial del mercado. El beneficio perfecto es una medida teórica del potencial del mercado, es el beneficio total producido vendiendo en cada máximo y comprando en cada mínimo, evidentemente es imposible en la práctica y de ahí su nombre. Una correlación positiva entre ambas nos indicará que mientras el beneficio perfecto está incrementando, la estrategia está explotando ese incremento. Cuanto más se aproxime la correlación a 1 más efectivamente la estrategia estará capturando la oportunidad en el mercado. Mientras el mercado esté plano la curva de equidad debería mantenerse también más o menos plana, a medida que aumenta la volatilidad y el mercado comienza a hacer recorridos (aumentando el beneficio perfecto) la correlación mostrará si la estrategia es capaz de capturar el movimiento en su f avor.
Este método diseñado por Robert Pardo es un sistema completo de análisis de sistemas que responde a las siguientes preguntas sobre nuestra estrategia de trading:
¿Es robusta? ¿Hará dinero en trading real?
¿Qué tasa de rendimientos se debe esperar?
¿Cómo afectarán los cambios de mercado como la tendencia, volatilidad y liquidez a la estrategia?
¿Cuales son los parámetros que producirán el máximo beneficio con mínimo riesgo?
Una prueba de walk-forward consiste en dos pasos. El primer paso es una optimización normal en la cual se explora el espacio de parámetros para posteriormente seleccionar el mejor conjunto de ellos mediante la función objetivo que previamente hemos diseñado. Es el segundo paso el que distingue el método. En este paso el rendimiento del conjunto de parámetros es evaluado en una muestra adicional y adyacente de datos de precios, es decir, se realiza una simulación para obtener una medida del rendimiento de la postoptimización. Por ejemplo optimizamos la estrategia en una ventana de tiempo de tres meses y hacemos una simulación sobre una ventana de tiempo adyacente y menor (aproximadamente del 33% del tamaño de la ventana principal, un mes). Observemos que los datos de precios de esta última ventana de simulación no se han utilizado para optimizar el sistema, son datos que están fuera de la optimización. A continuación desplazamos las ventanas temporales y repetimos el proceso. Sistemáticamente iremos obteniendo una serie de simulaciones cuyos parámetros han sido elegidos sin optimizar sobre estos datos. Al hacerlo de esta forma el conjunto de parámetros óptimos obtenidos con un WFA están mejor adaptados a las condiciones actuales del mercado, es por esto que el conjunto de parámetros viene con fecha de expiración y conviene reoptimizar periodicamente. Al final del proceso de optimiza ción mediante el Walk Forward Analysis obtendremos un perfil estadístico de nuestra estrategia que nos indica si merece la pena hacer trading con este sistema o no, y en caso afirmativo nos proporcionará los parámetros que permiten a la estrategia desarrollar todo su potencial. A la hora de evaluar y optimizar un sistema hay muchos elementos importantes: la calidad de los datos utilizados, el método de búsqueda y la función objetivo, el tipo de perfil estadístico que genera el análisis, la prueba en múltiples mercados, etc. Podemos trabajar con todos estos elementos creando variaciones y nuevas métricas hasta desarrollar nuestro propio método de análisis de sistemas de trading.
En resumen, esta función objetivo detecta las estrategias que obtienen beneficios conjuntamente con el crecimiento del beneficio perfecto y no pierden mucho cuando el crecimiento del beneficio perfecto se detiene. Por lo tanto, es un excelente candidato para la evaluación. De esta forma ya tenemos definidos el espacio de optimización, la búsqueda en el espacio de optimización y la función objetivo. Estos son los tres elementos que componen una optimización simple. Utilizaremos las optimizaciones simples como elementos de un método mucho más eficiente y completo para analizar y optimizar un sistema automático, el Walk Forward Analysis.
Figura 6. Arriba los resultados mensuales de un backtesting sin optimizar. Abajo el mismo sistema optimizado. Se aprecia una mejora notable.
Realizar correctamente una optimización es un proceso complicado (a la vez que sobreoptimizar es muy sencillo). Sin embargo la evaluación y optimización de sistemas de trading bien utilizada es un elemento poderoso para el trader automático que conviene tener en la caja de herramientas.
21