La construcción de sistemas de trading: una visión global – 2da parte

Segunda parte del artículo donde os comentamos sobre el conjunto de pasos y procesos que conlleva la construcción de sistemas de trading. Podéis consultar la 1er parte haciendo click AQUI

La construcción de sistemas de trading: una visión global – 2da parte

Veamos un ejemplo de cómo se desarrolla un sistema.

Imaginemos que el “Diseñador” tiene los siguientes  requerimientos para elaborarlo:

  • Activos: Acciones e Índices de acciones
  • Sólo posiciones largas
  • Alta probabilidad de aciertos
  • Máxima pérdida asumible “X”%

El Estratega con estos requisitos decide que lo ideal en este caso es desarrollar un sistema de tipo reversión a la media donde lo que va a hacer es posicionarse largo cada vez que haya retrocesos (“pull backs”). Para ello cogerá algunos de los setups que tiene en el repositorio y los combinará para generar una señal más o menos fuerte en función de sus necesidades. A esto le podemos llamar la “lógica” de la estrategia y es lo que podríamos asimilar al “edge” o ventaja. En realidad es lo que intenta capturar la dinámica de los precios que quiere explotar.

A continuación trabajaría sobre posibles “filtros” para mejorar características. Son filtros porque no introducen nuevos puntos de entrada sino que simplemente cogen una muestra de la lógica, es decir eliminan trades.

Después, trabajaría sobre variaciones en las entradas (a mercado, stop, limitada, etc.) y sobre todo sobre las salidas, poniendo especial énfasis en el control del riesgo (Stop Loss)

Una vez que tuviera el pseudocódigo de toda la estrategia tendríamos algo como en la ilustración 3

Por último, pasaría éste al lenguaje de programación concreto con el que se desarrolla el proceso de Evaluación “Backtest”. Es decir, la salida de este proceso sería un algoritmo concreto, una estrategia de trading.

Evaluación

La Evaluación de una estrategia de trading es sin duda alguna el paso más importante que se realiza y tiene una única función esencial: caracterizar estadísticamente el juego que hemos creado con el objeto de establecer “expectativas” y criterios de control.

Usted puede pensar que bastaría con obtener los resultados de la aplicación de la estrategia sobre un periodo pasado y de ahí extrapolar al futuro.  Evidentemente no es, ni mucho menos, tan sencillo.

En esta etapa la probabilidad de cometer errores es tan elevada que incluso desarrolladores expertos cometen fallos que pueden echar por tierra todo el análisis. Hay tantos posibles que aquí simplemente daremos una visión global del proceso sin entrar en mucho detalle.

Pasos:

1)    Análisis Preliminar:

Esencialmente aquí se comprueban cosas como:

  • Revisar que el sistema coloca órdenes correctamente (no sería la primera vez que un sistema se crea y colo-ca órdenes en sitios donde el precio no ha cotizado o las coloca después de que se haya cerrado la barra en un sitio que no lo habría hecho en trading real)
  • Obtener resumen estadístico preliminar (sirve para sa-ber por dónde van los tiros y si efectivamente cumple requisitos y objetivos)
  • Observar comportamiento frente a variaciones en la compresión (vemos si la idea funciona en diferentes series temporales o sólo en una concreta). Nos interesa robustez

2)    Optimización In Sample

Nuestros sistemas tendrán un determinado número de parámetros (tales como los periodos de las medias, por poner un ejemplo). La pregunta típica sería ¿Cuáles uso?, ¿Cuáles son los correctos?

En realidad NO hay correctos. Si el funcionamiento de la estrategia depende de la elección de un conjunto paramétrico concreto, mal vamos. Una estrategia intenta explotar una dinámica de mercado y por tanto debería funcionar en todo un rango de parámetros que efectivamente reproduzcan dicha dinámica.

Esto es importante que se entienda. Le voy a poner un ejemplo sencillo para ilustrarlo:

Dispongo de una media móvil aplicada sobre una serie temporal en base diaria cuyo objetivo es determinar si me encuentro en una tendencia alcista o bajista de medio plazo. Para este menester, el periodo de la media móvil es indiferente si es de 200 barras, de 150 o de 250, todas ellas estarían dándome una información similar. Con seguridad habrá una que maximiza determinado criterio, pero la óptima no es la que debe caracterizar la estrategia si no queremos generar falsas expectativas posteriores.

Por otro lado una de periodo 20 o 30, con seguridad está capturando otro tipo de dinámica, a saber, tendencias de corto plazo.

La optimización In sample consiste, por tanto, en determinar los rangos paramétricos de la estrategia que reproducen la dinámica que queremos explotar.

El mayor problema que tenemos en la fase de optimización es que terminemos haciendo un “traje a medida” a los datos de la serie temporal, es decir que cuantos más parámetros tengamos y más combinaciones paramétricas podamos probar, más elevados serán los ratios estadísticos que obtendremos. Sin embargo esto no tendrá ninguna capacidad de reproducirse en el futuro. Cuando esto ocurre hablamos de sobreoptimización o “overfitting”. Este es el mayor error posible que podemos cometer y no es sencillo evitarlo salvo que dispongamos de protocolos diseñados para ello.

Una de las prácticas habituales para esto es no utilizar la serie temporal completa sino que la dividimos en 2 o incluso en 3 trozos. El periodo que usamos para optimizar la estrategia y sus parámetros lo denominamos “In sample”  y suele representar el 60 o 70% del total. Al resto se le denomina “Out of Sample”.

Por poner un ejemplo, si disponemos de una serie temporal de 10 años, usaríamos unos 6 o 7 años para el In sample y dejaríamos el resto para el Out of sample.

Evidentemente la selección del periodo In sample es importante en el proceso de Evaluación.

Así que esencialmente lo que se hace en esta sección es optimizar sobre el periodo In sample con el objetivo de hallar rangos paramétricos de trabajo.

3)    Optimización Out of Sample

construcción de sistemas

Una vez que disponemos de nuestra optimización y nuestros rangos de trabajo, aplicaremos dichos conjuntos sobre la parte que no hemos usado durante el proceso de optimización In sample, es decir, sobre el Out of sample.

El objetivo es hacer la caracterización estadística de la estrategia en base a los resultados obtenidos en este periodo de Out of sample.

4)    Test Profile

Este proceso concluye con el resumen de las propiedades estadísticas de la estrategia. Su función es que sirva de base para determinar lo que podemos esperar de la misma.

Su sección más importante es la determinación de los riesgos de la estrategia. Aquí es usual recurrir a técnicas como análisis de Montecarlo que nos permiten simular el conjunto de caminos posibles compatibles con las propiedades de la curva de capital.

Hay varios consejos que me gustaría trasladar

  • Nunca hay que perder de vista el objetivo de realizar la eval-uación: obtener un conjunto de estadísticas que me permita establecer una expectativa determinada sobre el desempeño futuro del modelo. Por ello hay que centrarse en obtener re-sultados “realistas”.
  • Idealmente no usaremos la serie temporal utilizada en la fase de Diseño en la evaluación dado que introduciría sesgos de optimización. Al terminar el Diseño ya sabríamos que la es-trategia funciona bien sobre esa serie temporal. Habremos ido introduciendo filtros en la misma para que salga bien, por lo que no nos sirve para evaluarla.
  • El quid de la cuestión es evitar la sobreoptimización a toda costa.

Implementación

Con la implementación nos referimos a cómo vamos a trabajar el conjunto de señales de entrada y salida que en principio nos aporta el sistema. Esto implica por un lado determinar el tamaño de la posición que vamos a tomar en el mercado, determinando así nuestra exposición y por otro ver cómo integramos el sistema para que funcione en combinación con otros, es decir, creación de la cartera.

El tamaño de la posición debe ser acorde con los objetivos y requerimientos que tengamos para el producto. Se trata de responder a la pregunta sobre cuánto capital voy a arriesgar en la próxima posición. Como premisa partimos de que los resultados que vamos a obtener son independientes unos de otros, no existe relación entre el resultado del próximo trade y el realizado anteriormente (en caso contrario podríamos aumentar o reducir la exposición en función de esas previsiones y directamente implementarlo en la estrategia).

El tamaño de la posición está regido a su vez por un algoritmo que nos potenciará las bondades de la estrategia dado que irá componiendo el retorno. Sin embargo hay que tener en cuenta lo siguiente:

  • Un algoritmo de gestión monetaria no convertirá una es-trategia perdedora en una ganadora.
  • Éstos algoritmos “amplifican” la curva de resultados, se in-crementa la volatilidad y aumentan los beneficios pero también las pérdidas

Veamos un ejemplo en ilustración 5 de lo que le hace un algoritmo de Money Management a una misma curva de resultados

La creación de cartera es otro de los aspectos fundamentales en gestión de las inversiones. La idea, como saben, se centra en el concepto de diversificación como mecanismo para reducir la volatilidad global.

¿Cuántos activos/sistemas necesitaríamos para obtener un adecuado grado de diversificación? Sin entrar en consideraciones técnicas de las correlaciones existentes (IC: Intraportfolio correlation) podemos estimar que con 6 o 7 activos ya habremos reducido buena parte del riesgo diversificable.

La manera de obtener las ponderaciones a asignar a cada sistema suele seguir un proceso de optimización basado en algún criterio, por ejemplo el tan popular retorno esperado para una volatilidad dada (Mean-Variance Optimization, MVO), pero existen muchos otros “ratios diana” susceptibles de ser optimizados. La decisión sobre qué criterio escoger recae de nuevo en su capacidad para cumplir con los requisitos y objetivos.

Monitorización

Una vez que hemos terminado todos los pasos anteriores y aplicamos la estrategia en los mercados, entra en juego el seguimiento de su evolución. Esencialmente este paso consiste en comprobar si los resultados que estamos obteniendo se corresponden con la caracterización estadística de la estrategia (recuerden el Test Profile).

En este paso lo que se realiza por tanto es un conjunto de estudios estadísticos tendentes a contrastar las distribuciones teóricas y reales.

El sistema seguirá en vigor y pudiéndose utilizar mientras estos test estadísticos nos informen de que los elementos de la muestra obtenida (resultados reales) pertenecen a la misma población que los teóricos. En resumen, que seguimos jugando al mismo juego que hemos evaluado.

Suelen existir otros criterios para desechar una estrategia, como pueden ser la superación de determinados niveles de Drawdown, el  uso de control estadístico de proceso, etc.

Es importante destacar que la información obtenida a lo largo de todos estos pasos es reintroducida en todo el ciclo de creación de estrategias, de tal forma que retroalimentamos el sistema con el fin de ir corrigiendo y mejorando continuamente.

Conclusiones

Hemos mostrado brevemente el enfoque de cadena de producción donde se pueden observar los procesos que desarrollaría nuestra fábrica de estrategias. Solamente se ha esbozado el funcionamiento de cada una de estas secciones y el desarrollador deberá profundizar en cada una para poder crear unos procedimientos eficaces.

Por último, recuerde que una gran estrategia puede arruinarse por una mala implementación de la misma. Céntrese sobre todo en trabajar bien, con una correcta gestión de los procesos y sus posibilidades de éxito aumentarán considerablemente.

 

 

 

 

You may be interested

Seguimiento del Dow 18 12 18 “perdiendo lo cubierto”
Indices
49 visitas
Indices
49 visitas

Seguimiento del Dow 18 12 18 “perdiendo lo cubierto”

Area de Inversion - 18 December, 2018

Seguimiento del Dow 18 12 18 “perdiendo lo cubierto″ – Análisis técnico del índice americano para el martes 18 de diciembre. (more…)

La estadística en el Trading: poner más probabilidad a tu favor
Traders
58 visitas
Traders
58 visitas

La estadística en el Trading: poner más probabilidad a tu favor

Area de Inversion - 18 December, 2018

La estadística en el Trading trata de buscar una determinada ventaja frente al mercado y con ello mejora notablemente no solo la tasa de aciertos, sino el factor…

EURUSD  se mantiene rodeando los 1,13 a la espera de la última reunión de la FED
Divisas
45 visitas
Divisas
45 visitas

EURUSD se mantiene rodeando los 1,13 a la espera de la última reunión de la FED

Area de Inversion - 18 December, 2018

EURUSD continúa rodeando en los 1,13 mientras espera a la última reunión de la FED el próximo miércoles donde subirá tipos, pero el eje se centrará en…

Deja un comentario

Su dirección de correo electrónico no será publicada.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Most from this category

×
Hola soy Felipe, estoy para ayudarte, ¿ tienes alguna duda ?