Aprendiendo sobre Inversiones

un blog de Aprendiendo sobre Inversiones
Este artículo ha sido marcado como molesto Deshacer
ivangv
00:18 el 03 septiembre 2015

Sistema de Inversión de Medio Plazo - Sistema Weinstein

Este va a ser el primero de una serie de post dedicados al sistema de inversión de medio plazo que el genial Stan Weinstein describe en su libro “Los secretos de ganar dinero en los mercados alcistas y bajistas”, allá por los años 80.

Un sistema de inversión que aún hoy en día funciona. Posteriormente Javier Alfayate analizó y optimizó el sistema introduciendo nuevos conceptos que explica en su libro “Aleta de Tiburón”, también muy recomendable.

Este sistema es el que yo utilizo en mi operativa de medio plazo y que describo en mi libro “Guía Práctica para la Inversión de Medio Plazo”. En él encontrarás también Market Timing, Gestión de Capital y más.

El objetivo de este post es mostrar los principios básicos del sistema y ponerlo a prueba con valores europeos y americanos.

Vamos primero a realizar un índice con todos los temas que vamos a ver en esta colección de post:

  1. Principios básicos del sistema Weinstein.
  2. Parámetros a optimizar.
  3. Optimización del sistema para una selección de valores en Europa.
  4. Optimización del sistema para una selección de valores en USA.
  5. El sistema sólo con posiciones largas.
  6. El sistema con posiciones largas y cortas.
  7. Análisis de Montecarlo.
  8. Prueba del sistema fuera del periodo de optimización.
  9. Combinación con un sistema de corto plazo, el PPLC (Patrón de Precios).

1 PRINCIPIOS BÁSICOS DEL SISTEMA WEINSTEIN

Los valores elegidos tendrán que seguir la tendencia principal del mercado. Buscaremos preferentemente valores que nos muestren un cambio de etapa 1 a etapa 2, o de 3 a 4, en ambos casos cambiando de tendencia. ETAPAS WEINSTEIN

En caso de que el mercado se encuentre dentro de una tendencia ya instaurada, buscaremos valores que estén generando señal de fuga tras un periodo lateral.

Los valores tienen que mostrarse mejor que mercado.

Si encontramos valores que hasta ahora se habían comportado peor que el mercado y que pasan a ser más fuertes que éste, mejor que mejor.

El volumen de negociación tiene que ser elevado con respecto a las últimas semanas.

El precio del valor tiene que estar en máximos anuales o cerca de este nivel.

Evitaremos valores que tengan resistencias por encima.

El valor tiene que pertenecer a un sector que lo está haciendo mejor que el mercado de referencia (el Sp500). Esta condición aún no he sido capaz de programarla en Amibroker por lo que los resultados mostrados en este post no tienen en cuenta el sector.

Veamos los parámetros que forman el sistema:

  • Cpm – Capital proporcional medio
  • Konkorde - Mano Fuerte
  • Distancia a máximos y mínimos
  • Media de 30 semanas
  • Distancia a la media de 30 semanas
  • Fuerza Relativa del valor.

No me voy a parar a describir estos parámetros. Si quieres más información puedes consultarlo en el libro.

El sistema está diseñado para una operativa en tendencia alcista y bajista. Él mismo adopta posiciones cortas cuando se producen los cambios de tendencia.

Me explico un poco mejor, el sistema cada viernes realiza una búsqueda de valores aptos para ser incorporados a la cartera. Si hay hueco se realiza la compra o venta al descubierto (corto) el lunes en la apertura. Cuando se produce un cambio de tendencia los valores que tenemos en cartera comienzan a dar señal de salida y poco a poco la cartera se va vaciando. Mientras tanto el buscador semanal deja de mostrar compras y comienzan a aparecer poco a poco oportunidades de posiciones cortas. Por lo tanto el mismo sistema detecta los cambios de tendencia.

El programa utilizado para realizar el análisis ha sido Amibroker. Como he dicho antes, de momento no soy capaz de introducir en el código del programa la fuerza relativa del sector (si algún buen samaritano que sepa de Amibroker sabe cómo hacerlo…). Por lo tanto NO se tendrá en cuenta la fuerza del SECTOR.

2 PARÁMETROS A OPTIMIZAR

Vamos a ver las condiciones iniciales de entrada / salida:

Entrada largos

  1. Cpm > 0
  2. Distancia del precio a Máximos anuales < 3%
  3. Fuerza relativa > 0
  4. Mano Fuerte > 2
  5. Pendiente de la Media de 30 semanas (mm30) positiva
  6. Cierre por encima de mm30
  7. Distancia del precio a la mm30 < 9%
  8. Capitalización >1.000.000
  9. Última vela alcista
  10. Datos históricos del valor de más de dos años

Salida largos

  1. Media Cpm < -20
  2. Fuerza Relativa < 0
  3. Salida por stop loss

Entrada Cortos

  1. Cpm < 0
  2. Distancia del precio a Mínimos anuales < 3%
  3. Fuerza relativa < -0.6
  4. Mano Fuerte < -2
  5. Pendiente de la Media de 30 semanas (mm30) negativa
  6. Cierre por debajo de mm30
  7. Distancia del precio a la mm30 < 9%
  8. Capitalización >1.000.000
  9. Última vela bajista
  10. Datos históricos del valor de más de dos años

Salida Cortos

  1. Media Cpm > 4
  2. Fuerza Relativa > 0.1
  3. Salida por stop loss

A continuación probaremos con estas condiciones qué habría ocurrido de haber aplicado este sistema sobre un conjunto de algo más de 500 valores en Europa entre el 1 de enero de 2002 y el 31 de diciembre de 2012.

Se trata de ver cómo variando alguno de los parámetros influimos en el resultado final.

Trataremos de optimizar el CPM, la FR, Mano fuerte y Stop loss. Con un ordenador muy potente se podrían analizar todos juntos, pero al no ser este el caso iré optimizando de dos en dos.

Nota:

En todos los test se consideran posiciones de 5.000€ por operación y no se reinvierten los beneficios.

No se consideran comisiones ni dividendos.

ANÁLISIS INDIVIDUALIZADO

Primeramente se van a analizar más de 500 valores de forma individualizada, aplicando los filtros arriba indicados.

Si se cumplen las 10 condiciones necesarias para la entrada, el sistema comprará el lunes en apertura.

Se van a comprobar todas las señales de entrada y salida que el sistema genera entre el 1 de enero de 2002 y el 31 de diciembre de 2012.

Veamos los resultados.

tabla resultados sin optimizar individualizadao

Esto r esulta de operar cada valor por separado.

Por ejemplo, veamos el resultado de operar este sistema con ACS.

tabla ejemplo ACS

El sistema funciona en un 66% de los valores, y tiene un porcentaje de acierto del 42%.

No se han aplicado stop loss.

SIMULACIÓN DE CARTERA DE 10 POSICIONES

Ahora vamos a simular la operativa entre 2002 y 2012 para una cartera de 50.000€ con posibilidad de abrir hasta 10 operaciones a la vez y por valor de 5.000€ cada posición.

No se reinvierten los beneficios ni se aplica gestión de capital.

Esta vez, establecemos un stop loss a 1% de la media de 30 semanas.

Posteriormente estudiaremos un poco más a fondo el stop loss.

Los resultados obtenidos se han pasado a Excel para analizar con más detalle.

Resumiendo vemos una tabla con las operaciones realizadas anualmente y el rendimiento obtenido. Vemos que el sistema ofrece una rentabilidad anual media del 4% y que según el año es más rentable.

En la siguiente tabla se pueden ver las estadísticas del sistema. De momento no parece muy esperanzador...

Habrá que trabajar en la optimización.

estadisticas sistema sin optimizar

Antes de pasar a la optimización quiero mostrar cómo la curva de capital del sistema evoluciona con el mercado.

En este caso he comparado la evolución de la curva de capital con el DAX. Ya hemos visto que los resultados del sistema son muy "normalitos". Seguro que tenemos margen para mejorarlo.

Si nos fijamos el sistema es rentable cuando el mercado está en tendencia. Cuando se produce un cambio de tendencia, bien sea de alcista a bajista, o de bajista a alcista, es cuando se producen las mayores rachas perdedoras. Evolución Capital vs DAX 2002 a 2012 Portfolio 10posiciones

3 OPTIMIZACIÓN DEL SISTEMA EN EUROPA

Vamos a intentar optimizar el sistema. Mi intención es mejorar en los siguientes puntos:

  1. Optimización de Entradas: siendo más selectivos a la hora comprar o ponernos cortos.
  2. Optimización de Salidas: buscaremos los parámetros que mejor indican salida del mercado.
  3. Optimización de Stop loss: trataremos de mejorar la ubicación del stop loss, incluir toma de beneficios, trailing stop, etc.

En este apartado vamos a estudiar cada caso.

OPTIMIZACIÓN DE ENTRADAS

ENTRADA EN POSICIONES LARGAS

Veremos cómo cambian los resultados en función del CPM y Fuerza Relativa  que pongamos como filtro. Preparamos una optimización conjunta de tal forma que se analizarán todas las combinaciones posibles variando CPM y Fuerza Relativa de la siguiente forma:

  • CPM: Variable de -20 a 20 con un paso de 1.
  • Fuerza Relativa: Variable de -0.4 a 1 con un paso de 0.05.

Se analizan más de 1.100 combinaciones de CPM-FR. Exportando los datos obtenidos a un archivo excel podemos crear una tabla con colores que nos muestre la rentabilidad anual que obtendríamos operando con cada una de las combinaciones analizadas. tabla optimizacion entrada largos   Al optimizar vemos cómo la opción inicial (cpm>0 y FR>0) no está entre las más rentables. De hecho, está dentro de uno de los dos recuadros que muestran las peores rentabilidades.

Se observan que hay dos zonas señaladas en verde oscuro como zonas con mayores rentabilidades.

La mayor rentabilidad se obtiene para CPM>6 y FR>0,60.

Cualquiera podría pensar en escoger estos límites como los mejores para nuestro sistema, sin embargo estos picos pueden deberse a que el ordenador haya encontrado algún caso excepcional. No olvidemos que los ordenadores a la hora de optimizar buscan entre todas las combinaciones posibles la mejor, y a veces se trata de error en los datos históricos, o una operación casual con un elevadísimo beneficio. Esto no es lo suyo.

Lo suyo es buscar zonas de confort, donde variando algo los parámetros FR y CPM veamos que los resultados se mantienen.

Pero no sólo podemos dimensionar el sistema en función de la CAR. Hay que mirar otros parámetros como el máximo drawn down (MDD) que es la pérdida máxima (consecutiva) que experimenta el sistema, o como la CAR/MDD que nos muestra la capacidad que tiene el sistema para recuperarse de las pérdidas.

En la tabla siguiente (mucho más reducida) vemos cómo en la zona donde antes encontrábamos la mayor rentabilidad tenemos un MDD muy elevado (zona con FR=0,6 y CPM=4). Trataremos de minimizar este parámetro. tabla mdd La CAR/MDD la podemos ver en la siguiente tabla. tabla car-mdd Después de lo visto hasta ahora parece lógico seleccionar como criterio de entrada

  • CPM >14
  • Fuerza Relativa > 0,30

Hasta aquí el primer post de la colección "Trabajando con el Sistema Weinstein".

Publicar Ocultar ¿Quieres hacer públicos tus favoritos? Publicar No por el momento
2 comentarios
1 vez compartido

Genial el trabajo Ivan. Voy a retocar mis screeners con tus optimizaciones. En ProRealTime es muy facil programar el screener, excepto el tema de la Fuerza Relativa que hay que construir el indicador el resto es muy facil.

Buenas Chema!

Ojo, que el estudio aún no está terminado el estudio. Faltan muchos aspectos a considerar antes de admitir que cpm>14 y FR>0.30 es la mejor opción para entradas largas.

En los próximos post veremos cómo cambia al optimizar las entradas cortas, las salidas de largos y cortos, y la modificación de los stop loss. Al final hay que coger todos los parámetros y evaluarlos en global.

En fin, espero ir publicando una parte cada semana o dos semanas. Tengo muchos frentes abiertos :)

PD: recuerda que la influencia del sector tampoco está inlcuida en el backtest.

Únete al grupo de Aprendiendo sobre Inversiones en Finect para comentar. 

¡Regístrate y forma parte de la comunidad líder de finanzas en España!

Regístrate

Últimos artículos

Top Autores

Enbolsa
388º 31 Artículos
ivangv
224º 26 Artículos
Kaloxa
28 Artículos
Artedeinvertir
25º 25 Artículos

Más comentados

¿Con quien debo operar?
38 Comentarios
Bolsa básica: ¿Qué son los soportes y resistencias?
42 Comentarios
Thanksgiving Day: ¿A quiénes darías tú las gracias?
38 Comentarios
PLAN DE PENSIÓN /AHORRO FISCAL Y COSTE DE OPORTUNIDAD
35 Comentarios
Artículos de ayuda para inversores que quieren aprender
36 Comentarios

app version

Wed Nov 02 13:34:35 CET 2016

2221

79dd84889bae13e7769f41dc060a3ba472981ca5