Redes neuronales - página 7

 
Cyclesurfer:
¡Awsome New Digital! Voy a mirar el material en unos minutos ... tengo que romper el ruso ... que no es tan grande, pero creo que junto con AltaVista será capaz de hacer un intento decente. Actualmente estoy codificando en CORTEX sobre otras Redes Neuronales (NN de ahora en adelante) y estoy planeando convertirlas en MQ4... Creo que DEFINITIVAMENTE deberíamos mantener este hilo porque (y esto es una opinión) las NN son EL futuro del análisis técnico. Las NN's, para aquellos que no son lo suficientemente geek como para saberlo... son básicamente algoritmos que imitan al cerebro (no necesariamente al cerebro humano... porque eso sería muy complicado) en el sentido de que aprenden sobre la marcha. Estoy escribiendo los EAs para dar consejos sobre si o no tomar una señal particular sobre la base de pequeños patrones que han llegado antes cuando se dio una señal similer. Eso es lo que hacen la mayoría de las redes neuronales, buscan en los datos pequeños patrones que no tendrían sentido para nosotros, o incluso para otros algoritmos, y ven lo que hacen esos patrones con el tiempo. El primer EA tendrá la característica de Brain Trend. Pido a todo el mundo que tenga paciencia, la codificación de CORTEX lleva tiempo... más bien, lleva tiempo entrenar las NNs y perfeccionarlas. Si alguien aquí está familiarizado con CORTEX o la conversión de código, cualquier ayuda sería apreciada. Entiendo por qué el foro ruso iría comercial ... NNs son el estilo actual con los comerciantes de dinero grande. Así que... ¿qué dicen ustedes?

He movido tu mensaje a este hilo donde encontrarás algunas personas relacionadas con este software. Uno de ellos es citado arriba.

 

Red neuronal usando Matlab y Metatrader

¡Hola!

Estoy utilizando Matlab y he desarrollado una red neuronal para varios pares, pero tengo problemas para reprogramar la NN de Matlab a mql4.

Para una prueba, he creado una pequeña red neuronal que predice el precio del USDJPY a partir del precio en i+10 e i+20. Tiene 2 entradas, 3 ocultas, 1 salida. La función de activación de la capa oculta es tansigmoide, para la salida es lineal.

Si grafico la salida de la NN con el precio real, muestra que la NN funciona, pero con el código que hice, definitivamente no funciona.

Los pesos calculados de la capa oculta son :

[13.8525 -43.4534;

-11.2084 18.4331;

-0.30603 0.01022]

Los pesos de la oculta a la salida son :

[0.0020021 0.0047956 -3.4143]

Sesgo de la capa oculta :

[13.876;

2.644;

0.083215]

Sesgo de la salida

[0.27514]

El problema debe estar en la función de activación que debe ser tan sigmoide. Como el precio es superior a 100, el MathExp(-100) me da algo muy pequeño...

Aquí está la parte interesante del código :

>>

double a1=iClose("USDJPY",0,i+10);

double a2=iClose("USDJPY",0,i+20);

//Nodo (1,1)

double Suma_nodo_1_1=13,8525*a1 -43,4534*a2+13,876;

double Sigmoide_node_1_1=(1-MathExp(-Sum_node_1_1))/(1+MathExp(-Sum_node_1_1));

//Nodo (1,2)

double Sum_node_1_2=-11.2084*a1+18.4331*a2+2.644;

double Sigmoide_nodo_1_2=(1-MathExp(-Suma_nodo_1_2))/(1+MathExp(-Suma_nodo_1_2));

//Nodo (1,3)

double Sum_node_1_3=-0.30603*a1+0.01022*a2+0.083215;

double Sigmoide_nodo_1_3=(1-MathExp(-Suma_nodo_1_3))/(1+MathExp(-Suma_nodo_1_3));

//---- Valor de salida -----

double Sum_node_2_1=(0.0020021*Sigmoide_node_1_1+0.0047956*Sigmoide_node_1_2-3.4143*Sigmoide_node_1_3+0.27514);

<<

¡Gracias por su ayuda!

 

Aquí hay un ejemplo para ilustrar mi problema construyendo una red neuronal bajo Matlab. La imagen que publiqué ilustra el valor objetivo (X) y la salida de la red neuronal (Y) para el EURGBP. Así que en el peor de los casos, para un precio real de 0,7, la salida de la NN está entre 0,68 y 0,73 (¡bastante mal, pero era sólo una prueba!).

Si utilizo los pesos de la NN para calcular el valor de salida a mano, obtengo un 0,75, que es imposible para 0,7... Así que debo estar equivocado en alguna parte del cálculo de mi salida... Esta es la fórmula :

-1.1261*tansig(-1.6589*0.6964+1.4776*0.6936+4.5965)

-0,013796*tansig(-2,6065*0,6964+ 4,3402 *0,6936+0,30321)

+1.2166*tansig( 0.88612*0.69669364+0.11309 *0.6936+0.055821)+1.1116

Los pesos :

-Pesos de la capa de entrada

[-1.6589 1.4776;

-2.6065 4.3402;

0.88612 0.11309]

-Pesos de la capa

[-1.1261 -0.013796 1.2166]

-Preferencia a la capa 1

[4.5965;

0.30321;

0.055821]

-Disposición a la capa 2

[1.1116]

Los 2 precios de entrada utilizados para calcular la salida son :

0.6964

0.6936

La Red es de 2 entradas/3 ocultas/1 salida con activación sigmoidea Tangente para la oculta y activación lineal para la salida.

¡¡¡GRACIAS!!!

Archivos adjuntos:
captureplot.jpg  23 kb
 

Además de eso, la función de activación sigmoide Tangente correcta estaba mal en mi código mql4. La función correcta es : 2/(1+MathExp(-2* x ))-1

¡Saludos!

 

Primeros resultados

este hilo parece un poco muerto, pero espero que todavía haya gente interesada en las redes neuronales. ¡Así que por favor, comparte tu experiencia con las redes neuronales aquí!

Ya he probado algunas combinaciones de factores para comprobar el poder de predicción de las redes neuronales.

Como he leído en diferentes artículos y posts, el uso de la combinación anterior de alto-bajo-abierto-cerrado parece totalmente ineficaz. La NN está totalmente perdida en la oscuridad... El gráfico de ajuste del valor real frente a la salida de la NN es horizontal (1ª imagen Open-Low-High-Close.jpg), lo que significa que no puede predecir nada en absoluto. Es el mismo resultado que tratar de encontrar los números loterie con un NN He probado diferentes entradas y valores de salida, normalizado o no, el resultado es el mismo.

Entonces, ¿qué es peor para mirar? Parece que los indicadores técnicos funcionan mucho mejor. Probé una mezcla de indicadores clásicos como entradas para predecir el precio absoluto. El gráfico de ajuste no es el mejor, pero no está mal (2 ª foto - Factores técnicos inputs.jpg). También creo que el uso de valores absolutos es una muy mala idea.

El uso de la pendiente de la media móvil para predecir la pendiente futura da resultados interesantes para identificar posibles retrocesos (3rd pic MA Slope.jpg).

Otra forma interesante de investigación es utilizar una NN para evaluar las buenas condiciones de trading. Así que creé una puntuación normalizada claculada a partir del cierre actual y su distancia a los máximos y mínimos futuros. Si la puntuación es alta, significa que en los próximos 4 periodos, la distancia entre el cierre actual y los máximos futuros es alta (beneficios de compra por delante) y la distancia a los mínimos es baja (no hay reducción significativa). Por el momento no he tenido éxito con este método.

¡Espero tener algunos comentarios y compartir experiencias muy pronto!

Archivos adjuntos:
 

Felicidades Webesa

THX Querida Webesa,

esos son buenos resultados,

pero una pregunta: ¿no es mejor usar una NN más grande (más entradas+ más capas+ más neuronas) para aproximar una mejor relación entre las velas?

 

de red neuronal a dll

Hola,

¿alguien tiene experiencia con la integración de una dll que contiene una red neuronal entrenada desde Matlab o Neurosolutions en un script mq4?

 
webesa:
¡este hilo parece un poco muerto, pero espero que todavía haya gente interesada en las redes neuronales por aquí! ¡Así que por favor, comparte tu experiencia con las redes neuronales aquí!

Ya he probado algunas combinaciones de factores para comprobar el poder de predicción de las redes neuronales.

Según he leído en diferentes artículos y posts, el uso de la previa Alta-Baja-Apertura-Cierre parece totalmente ineficaz. La NN está totalmente perdida en la oscuridad... El gráfico de ajuste del valor real frente a la salida de la NN es horizontal (1ª imagen Open-Low-High-Close.jpg), lo que significa que no puede predecir nada en absoluto. Es el mismo resultado que tratar de encontrar los números de lotería con un NN

He probado diferentes entradas y valores de salida, normalizados o no, el resultado es el mismo.

Entonces, ¿qué es peor para mirar? Parece que los indicadores técnicos funcionan mucho mejor. Probé una mezcla de indicadores clásicos como entradas para predecir el precio absoluto. El gráfico de ajuste no es el mejor, pero no está mal (2 ª foto - Factores técnicos inputs.jpg). También creo que el uso de valores absolutos es una muy mala idea.

El uso de la pendiente de la media móvil para predecir la pendiente futura da resultados interesantes para identificar posibles retrocesos (3ª foto MA Slope.jpg).

Otra forma interesante de investigación es utilizar una NN para evaluar las buenas condiciones de trading. Así que creé una puntuación normalizada claculada a partir del cierre actual y su distancia a los máximos y mínimos futuros. Si la puntuación es alta, significa que en los próximos 4 periodos, la distancia entre el cierre actual y los máximos futuros es alta (beneficios de compra por delante) y la distancia a los mínimos es baja (no hay reducción significativa). Por el momento no he tenido éxito con este método.

¡Espero tener algunos comentarios y experiencias compartidas muy pronto!

¿Cuáles fueron exactamente tus entradas/salidas para el NN que utilizó las medias móviles?

 
 

Supongo que tienes razón en que si no tienes que reciclar continuamente, no necesitas la dll.

¿Quieres compartir una plantilla para eso?

Razón de la queja: