¿Nos visitas desde USA? Entra a tu página Rankia.us.
Oscar Cagigas

Gestión del capital, ondas de Elliott y sistemas de trading

El spread peso/maiz. ¿Dónde poner el stop?

Buenos días! Hace tiempo que llevo trabajando con los Spreads. Son una técnica que no tiene dependencia de la dirección del mercado (riesgo direccional = 0) y que, con muy poca volatilidad permiten conseguir buenos beneficiosEntre las muchas ventajas tenemos su alto factor de beneficio y el también alto porcentaje de aciertosPero no todo son ventajas. Los Spreads también tienen desventajas. A saber:
  • Al funcionar con dos mercados dependen demasiado de los datos. Un simple cambio de contrato y todas las estadísticas de pareja cambian completamente.
  • No es fácil sacar las estadísticas. Hay que hacerlo todo por parejas, “a mano”, para tener en cuenta que nos importa el resultado conjunto de la pareja y no el individual.
  • No hay stop loss. Si lo hubiera entonces saltaría en una pata antes que en la otra y nos dejaría expuestos al riesgo direccional.
  • Hay que apalancarse más de lo que haríamos direccionalmenteSi el spread se sigue abriendo no hay límite para el riesgo (precisamente porque no hay stop).

Hace unos meses que estoy trabajando en los últimos dos inconvenientes, que en realidad es el mismo: no hay stop.

En el informe de hoy le voy a contar los nuevos Spreads (en especial el que abrimos ayer) y también el estudio que he realizado para intentar solucionar el difícil problema de dónde o cómo poner un stop loss a un Spread. En la tabla de debajo le muestro los nuevos Spreads, en azul. La simulación es del 2000 al 2014. Los que tienen el nombre en negro son los que ya estábamos haciendo hasta ahora. Están ordenados por estadístico t o intervalo de confianza para la ganancia media. Es decir, el primero (DOLARNZD o AUD/NZD) tendría el valor correspondiente a 4.8 que es 99.97% de confianza.

tabla spread
 
Este porcentaje se obtiene de las tablas del estadístico t (también lo calcula Excel) y lo único que hace es decirte la confianza que tendrías en terminar en ganancias si repites el experimento. Me explico, para el caso del primer Spread con Prob = 99.97% (t=4.8) sería así:
Si repetimos 10.000 veces el experimento que da lugar a los datos; es decir, hacer 10.000 veces el Spread AUD/NZD durante 15 años (o 10 operaciones), entonces en 9.997 ocasiones la ganancia media sería mayor que cero, y solo en 3 ocasiones sería menor que cero.

Como vemos en estadística es imposible estar seguros de nada. Podemos estar “confiados” de que de 10.000 veces el spread dará ganancias a largo plazo en 9.997 ocasiones, pero no siempre. Entender esto ayuda a no pasarse con el riesgo.

La tabla anterior está ordenada por estadístico t para mostrar más arriba los Spreads más fiables estadísticamente. El primero (AUD/NZD) solo tiene un inconveniente, y es que las operaciones duran mucho (175 barras), y no es una pega menor porque habría que considerar los roll-over (y el coste) y que siempre es mejor ganar 1000 dólares en un mes que 2000 en 6 meses. Por esta razón me gusta mucho el segundo Spread. Y me resulta curioso (los nuevos no los diseñé yo sino que un amigo probó más de 100 y me envió los mejores para revisar) y es que se trata del ZUMO DE NARANJA con el REAL BRASILEÑO. Eu não posso crer!

Esto del Zumo de Naranja me recuerda a la película “Trading Places” o “Entre Pillos Anda El Juego” de Eddie Murphy, Dan Aykroyd y Jamie Lee Curtis.

No sé si aún quedará alguien que haga trading y no haya visto la película (alguno muy joven…) pero si es el caso le recomiendo que la vea, que está muy simpática.

El zumo de naranja es un mercado más y aquí lo abriríamos como Spread con el Real brasileño. En este caso las operaciones son más rápidas (85 barras o 4 meses y una semana) y con un 87% de aciertos! Casi nada…

En teoría uno debería quedarse con los mejores Spreads. Por ejemplo aquellos con t > 2.5 que significa Prob > 99%. Pero ojo, como digo los spreads son muy sensibles a los datos (por ser dos mercados) y es solo actualizar al nuevo contrato y todas las estadísticas cambian, así que de la tabla de 20 iremos viendo en cada momento si nos interesa abrir el Spread que marque entrada.

Para ello habrá que considerar varias cosas:

  • Si la cartera está ya muy cargada o por el contrario podemos permitirnos un pequeño riesgo extra.
  • Si hay conflicto entre los componentes del Spread y posiciones abiertas (p.e. sistema Crude y CAD/CRUDE).
  • Actualizar al último contrato y ver si las estadísticas se mantienen.
  • Que los umbrales de entrada y salida de la correlación se mantengan en niveles lógicos (el de entrada siempre debe ser menor que el de salida)
  • Muchas cosas más de tipo práctico como que los mercados sean líquidos, estén disponibles con vencimientos similares, etc, etc, etc.

Revise bien la tabla de la página 2 porque será la base de nuestra operativa en Spreads. Precisamente gracias a esto abrimos ayer el Spread Maíz/Peso Mejicano.

maiz-peso

En la figura anterior vemos que la correlación ya está subiendo. Esto es bueno porque quiere decir que el Spread se va cerrando. En la tabla de la página 2 se puede ver que este nuevo Spread tiene unas estadísticas más que decentes, y t=2.5 significa un nivel de confianza del 99% que no está nada mal.

Vamos ahora con lo que le comentaba al comienzo del informe.

¿Dónde poner el Stop loss?

Lo primero que hay que darse cuenta es que el stop debe ser cerrar el Spread cuando haya una determinada pérdida conjunta. No hay opción de cerrar una pata y dejar la otra “suelta”. Esto es evidente porque que una pata esté en fuertes pérdidas puede no ser relevante si la otra está en fuertes ganancias.

El problema que tiene este estudio es que habría que revisar una por una (y día por día) la evolución de las parejas de operaciones para ver en cada día cuanto suman. Esto me resulta prácticamente imposible. Voy a asumir que las excursiones negativas (MAE en adelante) de las patas NO ocurren a la vez, lo cual es bastante realista. Consideraré un escenario desfavorable en el que una pata está en su máxima excursión negativa y la otra no compensa nada. Esta simplificación me ayudará a poner un stop loss y además son cálculos conservadores. Lo normal es que el MAE del Spread sea SIEMPRE menor del MAE de la pata en pérdidas. Las pruebas las voy a realizar con el Spread entre el Peso Mejicano y el Maíz.

Para profundizar en esto vamos a separar los MAEs por el resultado de la operación. MAE de ganadoras  y MAE de perdedoras.

En la figura de debajo se muestra la excursión negativa de las operaciones que terminan en ganancias “el MAE de las ganadoras”. Si ponemos un tope en el nivel 6000 entonces solo hay 2 operaciones que tuvieron una excursión negativa mayor de 6000 dólares y terminaron en ganancias. Podemos poner un stop loss en este punto y no interrumpiremos el normal desarrollo de la operativa.

Pero hay que tener en cuenta que esta es la excursión negativa INDIVIDUAL; es decir, la pareja puede que nunca llegue a experimentar esta excursión negativa. En teoría cuando una pata esté en pérdidas la otra estará en ganancias.

mae ganadoras

En el peor de los casos una pata estará en pérdidas y la otra a cero, sin ganancias, así que como digo, estos son cálculos conservadores

Debajo vemos el MAE de las perdedoras. Esta parte nos interesa especialmente. Se trata de ver cuánto pierde una operación durante su desarrollo antes de cerrarse con una pérdida (individual).

Como uno nunca puede saber si la operación en curso va a terminar como ganancia o como pérdida pues he puesto el umbral en el mismo punto (-6000) y se puede ver que 5 operaciones que van a ser pérdidas pues se cerrarían por excursión negativa.

Pero seguimos teniendo el problema de que el MAE del Spread y el MAE individual no tienen mucho que ver.

mae perdedoras

Veamos algunos datos resultado de simular:

  • El MAE promedio de las perdedoras es de 3510 dólares.
  • El MAE promedio de las ganadoras es de 1637 dólares.
  • El MAE promedio de TODAS las operaciones es de 2393 dólares.

El MAE promedio de todas las operaciones es una suma de los MAEs de ganadoras y perdedoras multiplicados por su probabilidad individual.

total mae

Hay que tener en cuenta que no hay un 50% de ganadoras y perdedoras porque los históricos nunca empiezan a la vez y siempre habrá más operaciones en el histórico que empiece antes. Esto hay que corregirlo a mano. Una vez hecho, y a efectos prácticos podemos considerar lo siguiente:

MAE (TODAS) = MAE_Gan/2 +MAE_Per/2

O lo que es lo mismo:

2 x MAE(Todas) = MAE_Gan +MAE_Per

Esto me viene muy bien porque ahora puedo acotar el MAE de las perdedoras de esta forma:

mae per

Si consigo un código (esto ya lo tengo, jeje) que me calcule el MAE promedio, en dólares, de todas las operaciones pues entonces solo tengo que multiplicar esta cifra por 2 y así tengo una estimación y un límite superior para el MAE de las perdedoras.

En el caso que nos ocupa podríamos decir que el MAE de las perdedoras será menor que 2*2393 = 4.786 dólares.

Ya casi está…

Tenemos ya una estimación para el MAE PROMEDIO de las perdedoras. Pero nos interesan valores extremos (buscamos un stop loss) así que ahora le remito unos párrafos más arriba donde vemos que unos 6000 dólares es un umbral bastante bueno que solo deja fuera 2 operaciones ganadoras individuales.

Por esta razón yo creo que el Stop Loss de un Spread debe ser un múltiplo del MAE promedio de las operaciones. Evidentemente un múltiplo mayor de 2, que no entre en juego nada más que en casos excepcionales y por tanto no impida a las operaciones seguir su curso normal.

Tras varias pruebas he llegado a la conclusión empírica de que el Stop Loss de un spread debe estar situado a 3 MAEs promedio. Sería el equivalente de un stop loss a 3ATRs para una posición direccional. Así, cada Spread tiene su stop loss que depende de su riesgo intrínseco, como debe ser.

En el caso que nos ocupa (Peso/Maiz) el stop loss es el valor 3x2.393 = 7.200 dólares o 5.400 euros en números redondos. Una vez que el Spread tenga una pérdida CONJUNTA mayor que 5.400 euros deberíamos cerrarlo porque es evidente que se estarían dando circunstancias excepcionales.

Si ahora reviso las operaciones veo que solo 7 (de 104) tuvieron un MAE individual mayor de 7.200 dólares. Cerraríamos aquellas en las que el MAE conjunto superase esta pérdida de 7.200.

Es decir, haciendo las cosas de esta manera me aseguro de que COMO MUCHO solo interfiero en un 6.7% de las operaciones, y lo más probable es que sean menos porque como expliqué un MAE individual alto no significa nada si la otra pata está en fuertes ganancias.

Es posible que haya otras maneras de calcular el stop loss adecuado para un Spread, pero a mí solo se me ha ocurrido ésta. Para ello he tenido que hacer alguna simplificación que me parece razonable porque los cálculos son conservadores, y prefiero pasarme de prudente que de arriesgado. Después de todo las miles de pruebas que he realizado con sistemas me dicen que cuanto menos interfiera uno en el desarrollo de una operación, pues mucho mejor.

En este aspecto el Stop Loss está lejos pero es equivalente a los otros sistemas (3 MAEs resulta en un importe similar que 3 ATRs en una posición direccional). Si un Spread se nos abre más de 3 MAEs habrá que liquidarlo; no queremos un riesgo ilimitado.

Gracias a este estudio también podemos añadir al Spread cuando la excursión negativa supere los 2 MAEs, porque sabremos que el spread está excepcionalmente abierto y entonces el riesgo es muy limitado y la expectativa de ganancia muy alta.

Si vd está avanzado en Amibroker le servirá el anexo que he preparado con el código que calcula el MAE promedio en dólares. El código se proporciona “tal cual, sin compromisos” y le recuerdo que el soporte de Amibroker lo da Amibroker

ANEXO.

CÓDIGO AMIBROKER PARA MAE PROMEDIO

//------------------------------------------

// <AvgMAE.afl> 29 JULIO 2014

// FICHERO A AÑADIR A LA CARPETA INCLUDE // PARA QUE EL REPORTE INCLUYA

// EL MAE PROMEDIO EN DÓLARES // OSCAR G. CAGIGAS.

//------------------------------------------

SetCustomBacktestProc("");
/* Now custom-backtest procedure follows */
if( Status("action") == actionPortfolio )
{
   bo = GetBacktesterObject();
   bo.Backtest(); // run default backtest procedure
  SumMAE = 0;
  NumTrades = 0;
    // iterate through closed trades first
  for( trade = bo.GetFirstTrade(); trade; trade = bo.GetNextTrade() )
  {
    // here we sum up maximum adverse excursions
     SumMAE = SumMAE +
0.01*trade.GetMAE()*trade.PointValue*trade.EntryPrice;
        NumTrades++;
   }
   // iterate through eventually still open positions
   for( trade = bo.GetFirstOpenPos(); trade; trade = bo.GetNextOpenPos() )
   {
     SumMAE = SumMAE +
 0.01*trade.GetMAE()*trade.PointValue*trade.EntryPrice;
        NumTrades++;
   }
   averageMAE = SumMAE / NumTrades;
   bo.AddCustomMetric( "AvgMAE", averageMAE );
}
 
¡Que pase un buen día!
 

Información sobre el curso intermedio de Sistemas de Trading

  • Curso online intermedio sobre Sistemas Automáticos de Trading
  • Ponente: Oscar Cagigas
  • Fecha: Del 6 al 9 de Octubre de 19:30 a 22:00 horas
  • Precio: 190€ (IVA incluido)
 
  1. #2

    Oscar Cagigas

    en respuesta a David Snchz
    Ver mensaje de David Snchz

    Sí, gracias. Está muy interesante. Como ves yo busco un punto donde poner el stop loss al spread y me parece que 3 veces la máxima excursión negativa promedio (3xAvgMAE) es un punto lo suficientemente alejado como para que no interfiera demasiado.

    Saludos,

  2. #3

    Ramset

    Buenos días Óscar.

    Me ha encantado la solución que has encontrado para el problema del distanciamiento de las patas de los spreads.Simple e ingeniosa.

    Saludos.