Me he sumergido en el campo de las redes neuronales y me han cautivado.
Por fin he desarrollado un marco de aplicación para probar sistemas de negociación en bolsa y ahora voy a implementar en él mi primera red neuronal. Una muy simple y primitiva, no pensada para trading real, sólo para empezar.
Sólo quiero saber si mi enfoque es bueno.
Y si ves que me estoy perdiendo algo (o estoy equivocado en algo) o tienes una idea de lo que podría ayudar a un principiante en el campo de las redes neuronales en el comercio de mercado, eso me haría super-feliz :)
Tengo 40 entradas, valores de mercado de la bolsa (S&P e-mini pero eso no es importante).
Para estas 40 entradas, conozco 2 números.
- ¿Cuánto dinero ganaría o perdería con una orden de compra?
- ¿Cuánto dinero ganaría o perdería con una orden de venta?
Debido a cómo funcionan las bolsas de valores, ambos números pueden ser negativos/positivos, lo que indica que puedo perder/ganar dinero tanto en la compra como en la venta (esto se debe a que una operación puede llevar adjuntas órdenes de "limitación de pérdidas" o de "objetivos", como STOP, LIMIT, etc., que se comportan de forma diferente).
Pero si eso ocurre, es una indicación de que no debo colocar ninguna orden, aunque ambas órdenes de compra y venta den números positivos.
Imagino que la mejor función de activación a usar es la ...cosa sigmoidea pero con un rango de -1 a 1 (he encontrado que se llama de muchas maneras en internet...sigmoidea bipolar, tanh, tangente algo...no soy matemático profundo).
Con un aprendizaje por retropropagación enseño a la red que para las 40 entradas, hay 1 salida y esta salida es uno de estos números.
- -1 lo que significa que la orden de venta va a ganar dinero, la compra va a perder dinero
- +1 lo que significa que la orden de compra va a ganar dinero, la venta va a perder dinero
- 0 lo que significa que tanto la compra como la venta van a vender/perder dinero, mejor evitar operar
Estoy imaginando que después del aprendizaje, la salida de la red será siempre algún número cercano a -1, 1 o 0 y sólo depende de mí dónde establezco el umbral para comprar o vender.
¿Es ésta una forma correcta de utilizar una red neuronal?
En todas partes en Internet, la salida para el aprendizaje que la gente está dando a la máquina de aprendizaje de propagación de vuelta son los valores futuros del gráfico de mercado y no el rendimiento esperado de dinero de una entrada de comercio diferente (compra o venta). Considero que es un mal enfoque porque no estoy interesado en los valores futuros del gráfico, sino en el dinero que quiero ganar.
Edita: Mi intención es construir una red neuronal para la negociación automatizada, no para ayudar a tomar decisiones.