Resistir el Slippage III
 
 

Resistir el Slippage III

 
TradingSys (AndG) - 8 Mar 2008
7 comentarios
 

tradingsysCuando empeñamos demasiado tiempo y esfuerzo  en diseñar una "excelente" estrategia, nos resulta muy difícil evaluarla con objetividad, actuando como jueces implacables de nuestra propia obra. Por ello, recomiendo a mis lectores que, antes de lanzarse a operar, sometan su modelo al veredicto -desde la distancia siempre más objetivo- de otros operadores experimentados.

 

Como recordarán, terminaba mi anterior artículo con la pregunta de si existe una relación lineal entre el deslizamiento aplicado a un sistema (en backtest, claro) y su efecto sobre la reducción de la curva de beneficios.

En esta ocasión, sólo he recibido cuatro respuestas (la verdad, muy poco, considerando que ya somos más de 700 usuarios registrados. Por lo que invito a mis lectores a una participación más activa): Dos de ellas se inclinan por la alternativa  (b) "Un resultado final mucho peor" y, las otras dos, por la (c) "Depende de otras variables igualmente importantes".

  • - ¡Mi enhorabuena! En esta ocasión han acertado todos. En las siguientes líneas veremos por qué.

Comenzaré analizando la curva de beneficios de un sistema intradiario aplicado sobre el FIBEX que presenta las siguientes estadísticas:

tradingsys

En 500 operaciones (obtenidas entre 2004 y 2007) el sistema obtiene un net profit  de unos 70.000 euros, con un DD del 26,28% y una fiabilidad del; 51,80%. Su beneficio medio (Avg. trade) es de casi 140 euros. Desde luego, nada espectacular, aunque, a fin de cuentas, consigue estar en línea con otros muchos constructos, incluso comerciales, que pueblan la Red (en la categoría, claro, de trampas para atrapar incautos...)

Como se trata de un experimento didáctico, con el único propósito de analizar el efecto del slippage, omitiré los detalles técnicos sobre el algoritmo empleado, para centrarme en la información relevante al estimar su robustez futura.

Veamos, en primer lugar, su curva de beneficios:

tradingsys

En principio, y aplicando las consabidas comisiones de 3,75 euros por operación, el trazado de la curva ofrece un perfil bastante aceptable. Pero como me gusta ser muy crítico con los resultados de backtest, he sometido esta estrategia a una simulación de Montecarlo (SM) (empleando el software Market System Analyzer) con un nivel de confianza del 95% (valor estándar para estas simulaciones) aplicando diferentes niveles de slippage por cada operación cerrada. La columna de la izquierda muestra el beneficio medio estimado por operación (BME o avg. trade) de la estrategia en cada nivel de slippage antes de aplicar la SM. El resto de los datos se han obtenido a partir de la simulación.

Observamos que, incluso sin slippage, este sistema tiende hacia un DD elevado 63,27% después de aplicar SM, frente al DD inicial del 26,28%. Mal asunto, pues cuando un sistema muestra una comportamiento tan dispar, antes y después de la simulación, no cabe esperar de él nada bueno.

Pero, lo verdaderamente preocupante, es el rápido incremente del DD al ir aumentando el peso de los gastos por operación cerrada (round turn). El punto de ruptura se produce en los 80 euros de slippage (lo que equivale a 4 ticks por contrato del FIBEX). Observen como, aún siendo el BME de la serie original todavía positivo y relativamente alto (59 euros), la SM al 95% de confianza (valor bastante conservador) genera un resultado catastrófico, evidenciando que el sistema tiene una probabilidad muy elevada de no soportar este nivel de slippage en el futuro.

...Luego, amigos míos, huelga decir cuál es la respuesta correcta a la pregunta que habíamos planteado:

- Aunque "aparentemente" el BME se degrade progresivamente en función del peso de los gastos, no conviene fiarse; pues mucho antes de que el beneficio medio llegue a cero, el sistema empezará a evidenciar un creciente riesgo de resultados catastróficos. Este es el motivo por el que he recomendado tantas veces someter todos los sistemas a cuantas "perrerías" se nos ocurran antes de empezar a operar con "papelitos verdes de curso legal".

Bien, pues, visto esto, vamos a pasar a las simulaciones aleatorias que prometí en mi anterior artículo. Para ello, ha sido preciso construir una hoja de cálculo en la que el estudio del slippage se analiza de dos maneras diferentes:

  • - Caso 1: Series P/L independientes. En este primer experimento he diseñado un simulador construido en Excel que genera dos series aleatorias independientes (cada una de ellas de 2.000 operaciones) basadas en los datos de entrada que muestra la imagen inferior:

tradingsys

Las dos premisas en que se asienta este modelo son:

a) La mayoría de los sistemas generan, en plazos muy largos, secuencias de operaciones en las que no existe dependencia positiva o negativa. En otras palabras, la distribución de operaciones en el tiempo no tiene memoria. Sobre esta cuestión recomiendo leer mi artículo: "Reglas de dependencia" (28-12-2006). Nótese que una violación flagrante del principio de independencia haría imposible, entre otras cosas, la aplicación de simulaciones de Montecarlo.

b) La manera más realista de comprobar el efecto del slippage en una serie de operaciones no correlacionadas es construyendo dos curvas independientes que satisfagan aleatoriamente las condiciones de partida y cuya única diferencia sean los gastos establecidos por operación.

En definitiva, las dos curvas del gráfico superior son conceptualmente idénticas, y la penalización de 30 euros de la segunda (línea roja) se sustrae, proporcionalmente, de la pérdida y beneficio medios.

El simulador muestra con meridiana claridad enormes divergencias en el trazado de ambas curvas de beneficios; dejando claro que, tanto el tamaño medio de la operación (Avg. trade 1 y 2) como el resultado final ("Suma" 1 y 2), son diferentes (o sea, no proporcionales) en ambas distribuciones aleatorias.

Motivo: En algunos tramos la "curva verde" asciende por la pendiente de la regresión lineal (línea negra) debido a una sucesión de operaciones muy pequeñas, muchas de las cuales caen por debajo del slippage aplicado a la curva 2. La cual, como pueden ver, no es capaz de soportar el peso de los gastos y se derrumba progresivamente.

Conclusión: El juego de las series aleatorias no se acomoda de manera proporcional al incremento del slippage. A partir de cierto umbral crítico puede ocurrir prácticamente cualquier cosa.

Vean este segundo ejemplo:

tradingsys

Las variables de partida son iguales, exceptuando el slippage, que aquí hemos reducido hasta 20 euros. Con estos datos, la primera curva (verde) obtiene un beneficio total de 140.671 euros, más favorable incluso que en el experimento anterior, mientras que la segunda curva (roja) parece resistir bien el peso de los gastos, obteniendo un tamaño de la operación (41 euros) muy similar al valor medio de la primera serie (65,37) menos el slippage establecido (20 euros).

En las pruebas de bakctest realizadas, con las habituales plataformas de trading (por ejemplo, Visual Chart o Ninja Trader) el resultado de aplicar un determinado slippge consiste en restar "x" puntos a cada operación en la secuencia profit-loss (P/L). Ahora comprendemos mejor que lo que nos proporcionan estas simulaciones no es más que una "foto fija" que hace referencia al pasado, pero no nos dará ninguna pista sobre los escenarios más o menos favorables con que podemos encontrarnos en las siguientes operaciones. En el otro extremo, si repitiésemos estos experimentos aleatorios cientos de veces ( en la hoja de cálculo es muy fácil, sólo hay que pulsar "F9" para generar nuevas series aleatorias) y analizásemos los valores (máximos, mínimos y medios) de cada curva resultante, tendríamos una simulación de Montecarlo completa. Y esto, a mi juicio, sí ofrecerá información mucho más precisa sobre lo que nos cabe esperar en el futuro.

- Caso 2: Series fijas dependientes.

Mi siguiente versión del "Equity Curve Simulator" esta diseñada para tratar el slippage al modo de las citadas plataformas de trading: O sea, "foto fija" y diferencias P/L estáticas:

tradingsys

En la imagen superior podemos ver la distribución de las 200 primeras operaciones de un sistema (bastante mediocre, por cierto) con una fiabilidad inicial del 60% y un ratio W/L de 1,24. Al aplicar un slippage de 20 (curva amarilla) y 40 (curva verde) observamos como el beneficio medio y el resultado final se degradan "casi" progresivamente, cumpliendo a rajatabla el recorte estipulado en cada operación.

El "casi" resulta algo inquietante; ¿verdad? Por ejemplo, entre las operaciones 121 y 200 podemos ver una clara divergencia de las curvas azul y verde. ¿Por qué? Muy sencillo, además del peso de los gastos, la distribución de trades en el equity curve también cuenta: El incremento de la curva azul (sin slippage) entre las ops. 121 y 200 se obtiene con unos BME muy pequeños, por debajo del umbral de gastos de la curva verde (que, recordemos, sólo tiene un BME de 25 euros). Y ello, indefectiblemente, conduce a que la curva menos favorable pierda dinero.

Veamos este otro ejemplo:

tradingsys

   Observen que seguimos en el mismo escenario de la imagen anterior:

  • - Perdida Media = -340
  • - Beneficio Medio = 420
  • - Slippage 20, 40

¿Qué demonios ha ocurrido? Pues lo de siempre, el insondable arcano de los juegos aleatorios: Ahora la distribución de trades se acomoda a un escenario -igualmente plausible- mucho peor.

...Dicen que las armas lar carga el diablo, pero yo creo que los cubiletes de dados y los sistemas de trading también.

Cuando una distribución de operaciones en backtest, larga, robusta y muy atractiva nos seduce con sus cantos de sirena, más nos valdría taponar preventivamente nuestros oídos con tapones de cera y ponernos a hacer cuentas hasta que nos salgan callos en los dedos antes de lanzar las campanas al vuelo y empezar -como tantas veces- a perder dinero de forma irreparable. Pues, desde la óptica inmisericorde de los juegos aleatorios, hasta las situaciones más inverosímiles tienen alguna probabilidad de ocurrencia. ...Sólo hay que dar tiempo al tiempo.

Conclusiones:

    1. El slippage es un factor crítico, incluso en sistemas con BME muy alto y esperanza matemática claramente positiva.
    2. Las simulaciones de backtest que ofrecen las plataformas de trading -aún aplicando pesos por deslizamiento muy altos- ofrecen siempre el mejor de los escenarios posibles: La lógica estática de una simple resta del P/L en una serie, por lo general, ya optimizado.
    3. La mayoría de los sistemas (en realidad casi todos) no muestran dependencia alguna entre operaciones. Por tanto, la manera adecuada de simular el slippage es mediante series aleatorias independientes.
    4. El mínimo exigible para que un sistema funcione no consiste sólo en poner deslizamientos muy altos, sino en someter el constructo a una simulación de Montecarlo completa.
    5. La reducción del avg. trade no es totalmente proporcional al slippage aplicado, cuentan también otros factores, como el modo en que se distribuyen las operaciones.
    6. El slippage real o de cartera también incluye factores difíciles de cuantificar; errores humanos, cortes en las líneas de datos, cuelgues de la plataforma de trading, etc. Todo esto hace que, casi siempre, el resultado de la operativa real sea bastante peor que el de las previsiones más conservadoras.

 

Andrés A. García.

© Tradingsys.org, 2008.

 

 

 

 

 

 

Comentarios

 

Corman - Gracias

Andres, gracias por estos artículos. 
 
Sería interesante saber el deslizamiento que tiene algunos mercados. Eso nos daría una idea a hora de elegir el subyacente para entrar. 
 
Saludos,

admin - Re: Corman

Efectivamente, conocer el slippage es fundamental; particularmente cuando trabajas sistemas intradiarios de corto recorrido. Como es lógico, el deslizamiento empieza a ser un factor crítico si el BMO (beneficio medio por operación) es muy pequeño.  
 
En diversos artículos ( y en base a mi experiencia personal) he recomendado no considerar viables aquellos sistemas cuyo BMO no supere en backtest, al menos en un factor x 2, los gastos de operativa (comisiones + deslizamiento medio). 
 
Sin embargo, estimar el slippage no es tarea sencilla, pues tiene que ver con factores que dependen tanto de las características de propio mercado como del tipo de órdenes que estemos empleando y, desde luego, del tamaño de las mismas. 
 
También existe otro deslizamiento que no depende de la liquidez del mercado: ...Ineficiencias de la plataforma, cortes en la recepción de datos, retardos en el envío de órdenes (sobre todo en momentos de saturación).  
 
Por ello, la mejor manera de estimar el slippage medio de tus sistemas (de forma explícita cuando entras con órdenes en stop y menos obvia con órdenes a mercado) será comparando los resultados de “trackrecord real” (extractos de tu broker) con los del sistema en tu plataforma. 
 
Si te sirve de estimación provisional; estos son los deslizamientos medios que yo obtuve en 2007 en algunos mercados (sistemas intradía y entradas en stop): 
 
* El deslizamiento medio, para ser estadísticamente significativo, debe ser medido en, al menos, 100 operaciones reales. 
 
- FIBEX: 2,14 ticks (1 contrato) 
- FBUND: 0,21 (3 contratos) 0,39 (12 contratos) 
- FDAX: 1,04 (1 contrato) 
- CL: 0,69 (1 contrato) 
- ZG: 1,03 (1 contrato) 
- YG: 1,98 (3 contratos) 2,06 (5 contratos) 
- ER2: 0,98 (1 contrato) 1,16 (dos contratos) 
 
* ¡Ojo! Es una estimación personal, seguramente cada cual, en función del rango horario elegido para operar (por ejemplo, en los mercados electrónicos USA, fuera del horario regular, la iliquidez es enorme), del tipo y número de órdenes empleadas, de la marcoépoca y de la calidad de sus dispositivos comunicacionales encontraría valores algo distintos.

Corman - Gracias de nuevo

Andrés gracias. La información que nos facilitas e muy importante.

Gustaffson08 - Slippage III

Por lo que nos comentas Andrés (enhorabuena por tu pág., se de buena mano que tienes muchos más lectores que usuarios registrados), los sistemas intradiarios "Hormiga" como yo les llamo, es decir, Stop Loss pequeño, Retirada de beneficios rápida, quedarían totalmente al descubierto e indefensos ante el deslizamiento? 
 
Entonces, xa los que tenemos pocos medios eco., no nos queda otra que abrir el abanico del riesgo, de los Stop Loss xa ir en busca de beneficios mayores? 
 
Gracias

admin - Re: Gustaffson08

Cierto; los gastos de operativa (slippage + comisiones) se dejan notar mucho más en los sistemas intradiarios. De hecho, este es su principal handicap. No recomiendo estrategias en las que el beneficio medio por op. sea inferior a 2 veces gastos. 
 
De cualquier manera, con una adecuada selección de activos (aquellos con rango más favorable) y eligiendo muy bien el tipo de órdenes, sí se puede trabajar en intradía de forma viable. 
 
En mi caso, para combatir el deslizamiento estoy probando actualmente (serie VT26) entradas con StopLimt. Por ejemplo, si fijas el limit en un 1 tick por encima o por debajo del stop (según sea compra o venta) no perderás demasiadas operaciones (al menos en los mercados que yo trabajo) y compensa saber que el deslizamiento máximo será de 1 tick. Cuando trabajaba con VC, el Direct Access me jugó alguna mala pasada, pero ahora, con el tandem Ninja + TWS observo que este tipo de órdenes van muy bien.  
 
Sobre lo último que comentas: Evidentemente: “...Sin riesgo no hay beneficio”. Y el los escenarios de volatilidad salvaje que tenemos ahora, con stops muy ceñidos lo único que se consigue es que te salten a cada momento. Un buen stop debe ser dinámico y vinculado a la volatilidad media del mercado. En días como estos solo hay dos alternativas; o te quedas en casa o sales al mercado casi, casi a pecho descubierto.

flyscalper - Aclaración

Andrés,  
 
sólo una pequeña aclaración. Cuando dices: "En diversos art?los ( y en base a mi experiencia personal) he recomendado no considerar viables aquellos sistemas cuyo BMO no supere en backtest, al menos en un factor x 2, los gastos de operativa (comisiones + deslizamiento medio).", entiendo entonces que en el backtest no incluyes no comisiones ni deslizamientos? 
 
Un saludo, 
 
Pablo

admin - Comisiones y deslizamientos

En todo modelo de backtest se deben incluir comisiones y deslizamientos. De lo contrario, obtendremos unos resultados muy poco realistas. Pero, con todo, el BMO dista mucho de ser estable en operativa real; experimenta cambios continuos en el tiempo, por lo que parece razonable pedir un margen de seguridad de, al menos, dos veces gastos.

Añadir comentario

 
Modificado por TradingSys (AndG) - 8 Mar 2008
 
 

Secciones

 
 

Entradas recientes

 
 

Enlaces