Acceder
Blog Redes neuronales
Blog Redes neuronales
Blog Redes neuronales

Predicción futuro dax con red neuronal: estrategia a seguir

Por Javier Oliver Muncharaz

Al margen de la serie de posts que iré escribiendo en relación a la parte teórica de las redes neuronales, qué son, cómo funcionan,..etc, voy a escribir otra serie de posts en los que aplicaré las redes neuronales con un sencillo ejemplo.  En este se describen  los parámetros principales utilizados en la construcción de dicha red así como las estrategias a seguir con la información que nos facilite esta. Indicar que tanto la red que se va a construir y las estrategias a plantear serán muy simples. La idea es observar qué resultados podemos obtener en la compraventa del contrato de futuro del DAX. Se utilizarán datos diarios.

Para la red neuronal se han establecido como inputs los datos de apertura, máximo, mínimo, cierre, volumen, punto medio (también llamado centro) y radio (distancia desde el punto medio hasta el máximo o mínimo) de las tres últimas sesiones. Como outputs , es decir, los datos que queremos predecir, el precio de cierre, el centro, el radio y apertura.

Se han escogido datos desde enero del 1997. Durante el proceso de aprendizaje, la red irá creando patrones que relacione los datos de entrada (inputs) con los de salida (outputs). Una vez entrenada la red, se realizará predicción para la sesión siguiente de los outputs.  

La construcción de la red es una red neuronal Backpropagation, con parámetro alfa (0,4-0,1), momentum (0,4-0,1), hasta  3 capas ocultas en su estructura,  hasta 50 nodos por capa, funciones de transferencia utilizadas (lineal,  logística y tangente hiperbólica), presentación de los datos a la red entre  1 y 10 veces,  criterio de selección de las redes: exactitud relativa con los outputs y la utilización de algoritmo genético para todo el proceso de cambios en la optimización de los parámetros (cambios en la estructura, muerte y transformación de neuronas,…).

ESTRATEGIA I :          Sobre la predicción del precio de cierre que nos da la red neuronal  aplicaremos el siguiente ajuste para tener en cuenta el error de predicción que comete la red. El ajuste será la diferencia entre la apertura real de la sesión actual y la predicción de la apertura que nos da la red. Es decir,  Precio cierre estimado+(Apertura real-Apertura estimada).

Con este “precio de cierre estimado y corregido”  (Cec) se operará de la siguiente forma. Comparamos este punto con la apertura real. Si Apertura> Cec entonces vendemos a la apertura y se cierra posición a Cec si llega a ese punto las cotizaciones, en caso contrario a precio de cierre de sesión. Si Apertura<Cec entonces compramos a la apertura y cerramos posición  a Cec si llega a ese punto, en caso contrario a precio de cierre de sesión.

ESTRATEGIA II :   Sobre la predicción del precio de cierre que nos da la red neuronal se aplicará el siguiente ajuste:  el error que comete esta red en la predicción del cierre, centro y radio en la sesión anterior y el error en la predicción de la apertura de la sesión actual. Sumamos estos cuatro errores de predicción y dividimos entre cuatro, obteniendo así un “error medio”, que es el que aplicaremos al precio de cierre estimado por la red.

La operativa es idéntica a la estrategia uno, es decir, si el precio de apertura de sesión  es mayor que el precio de cierre estimado y corregido, entonces  venderemos en la apretura y se cierra posición al precio de cierre estimado y corregido o el precio de cierre de sesión en caso que no llegará a tocarse ese punto  durante la sesión. Para el caso que la Apertura fuera menor que el precio de cierre estimado y corregido la estrategia sería la contraria.

Para ambas estrategias: Si en la sesión anterior la diferencia entre la apertura y el cierre es igual o inferior a 10 puntos, no se opera en la sesión actual ya que es una diferencia tan pequeña que la red puede fallar en sus resultados porque no tendría clara qué dirección pueden tomar los precios para la sesión actual.

Está claro que se trata de dos estrategias muy simples y que no se tiene en cuenta  otros factores importantes. Por ejemplo,  el drawdown intradiario que pueda darse durante la sesión, entre otros.

En la medida de lo posible iré actualizando  los resultados “teóricos” obtenidos con ambas estrategias para cada sesión.

Ver resultados

Saludos y buen trading.

 

*En ningún momento se está recomendando la compraventa en mercado real. Estos ejemplos sirven únicamente para estudiar el comportamiento de las redes neuronales en los mercados financieros. El autor no se responsabiliza del uso de esta información.

1
¿Te ha gustado mi artículo?
Si quieres saber más y estar al día de mis reflexiones, suscríbete a mi blog y sé el primero en recibir las nuevas publicaciones en tu correo electrónico
Lecturas relacionadas
¿Qué son las redes neuronales y qué ventajas pueden ofrecernos?
¿Qué son las redes neuronales y qué ventajas pueden ofrecernos?
Machine Learning aplicado al trading
Machine Learning aplicado al trading
Trading Algorítmico con redes neuronales
Trading Algorítmico con redes neuronales
  1. Nuevo
    #1
    28/01/13 20:34

    Hola Javier , estoy trantando de implementar la red neuronal con matlab , tu con que la hiciste? y que tipo de red has elegido, estoy tratando de conseguir algo rentable pero o no estoy programandola bien o los inputs que cojo no son los mejores, a ver si me puede echar una mano.
    Gracias

Te puede interesar...
  1. ¿Qué son las redes neuronales y qué ventajas pueden ofrecernos?
  2. Redes neuronales: supervisadas y no supervisadas
  3. Cómo clasificar cuentas nóminas con redes neuronales
  4. Aplicación de las redes neuronales a las finanzas, Javier Oliver
  5. Predicción futuro dax con red neuronal: estrategia a seguir
  1. Redes neuronales: supervisadas y no supervisadas
  2. Aplicación de las redes neuronales a las finanzas, Javier Oliver
  3. Cómo clasificar cuentas nóminas con redes neuronales
  4. ¿Qué son las redes neuronales y qué ventajas pueden ofrecernos?
  5. Predicción futuro dax con red neuronal: estrategia a seguir