Redes neuronales. Preguntas de los expertos. - página 18

 
lasso:

Ni siquiera he pedido el código fuente, sólo la dll y la cabecera.

No sé qué ves en dll mismo, pero por favor, no te preocupes... Pero Joo tenía toda la razón, tal vez no una lima, pero se necesita una escofina. La fuente pedirá que se introduzcan las entradas manualmente, debería rehacerlo para la entrada por lotes, eso es lo que hice, pero ya lo he olvidado).
Archivos adjuntos:
knpr.rar  18 kb
 
Figar0:
No sé qué ves en el propio dll, pero por favor, no es una pena... Pero Joo tenía toda la razón, tal vez no una lima, pero una escofina es necesaria allí. La fuente pedirá que se introduzcan las entradas manualmente, hay que rehacerla para la entrada por lotes, que es en realidad lo que hice, pero ya lo he olvidado)
Archivo. Un archivo está más fresco. Una escofina es casi una sierra.
 
Figar0:
No sé lo que ves en el propio dll, pero por favor, no es una pena... Pero Joo tenía toda la razón, tal vez no una lima, pero una escofina es necesaria allí. La fuente pedirá que se introduzcan las entradas manualmente, hay que rehacerla para la entrada por lotes, que es en realidad lo que hice, pero ya lo he olvidado)

)) Gracias por lo de "bare dll". No te molestaré más...

 
lasso:

)) Gracias por el dll desnudo. No te molestaré más...



Bueno, ya te dije que no queda ninguna fuente ))))
 
Figar0:

Te dije enseguida que no quedaban fuentes ))))

Bueno, ¿cómo se llaman las funciones en esta dll?

Muéstrame también el envoltorio )))

 
lasso:

¿Cómo se llaman las funciones de esta dll?

Muéstrame también el envoltorio ))


¿Qué envoltura? Sólo una llamada de la EA:

#import "KNpr.dll"
double research(double arrayohlc[]);
#import

int start()
{
   double inputs[20], result;
   for (int i=0;i<20;i++)
   {
     inputs[i]=Open[i]-Open[i+1];
   }          
   result=research(inputs);
   if (result>0) Открываем бай
   if (result<0) Открываем селл 
....
}
 
Figar0:


¿Qué tipo de envoltura? Sólo una llamada de la EA:

Mierda. Otra vez atrapado en el estereotipo. )

En mi opinión, la biblioteca de redes neuronales es algo como Fann2MQL.dll, con entrenamiento, etc.

Y tú, lo siento, no tienes ninguna biblioteca, sólo un pequeño folleto...)

.........................

Bueno, está bien. Por lo menos nos hemos dado cuenta de que no hay una salida fácil y transparente de las estadísticas 6/8.

Sólo a través del baile con panderetas...

Un poco más tarde intentaré describir mi baile... Tal vez alguien lo encuentre útil....

 
lasso:

Y tú, perdona, no tienes ninguna biblioteca, sólo un librito...)


Tengo justo lo que da esta "estadística") La preparación de los datos, su preprocesamiento, la interpretación de los resultados todo en el Asesor Experto, es más fácil, conveniente y comprensible (en el ejemplo simplemente se omite). Incluso he conseguido crear comités de redes neuronales bastante grandes a partir de esos "folletos". Básicamente, no necesito nada más. Hemos construido la red, la hemos entrenado con suficiente rapidez en un entorno especialmente preparado y la hemos puesto en práctica. ¿Qué más hay que hacer? El retoque no es realmente complicado, de lo contrario no podría haberlo hecho yo mismo.

Y Fann2MQL es una librería manuscrita, por supuesto, tiene de todo, para eso se escribió. Pero, uno, esto es un nivel de programación completamente diferente, profesional. Dos, afilar (gracias a (sin sarcasmo) tara por un informe sobre la variedad de esas herramientas abrasivas) el mismo código estadístico es un poco más fácil, que incluso sólo averiguar cómo utilizar una biblioteca similar a Fann2MQL. Bueno, así es para mí personalmente.

 
Figar0:


Tengo exactamente lo que da esta "estadística") La preparación de los datos, su preprocesamiento, la interpretación de los resultados NS están en el Asesor Experto, es más fácil, conveniente y comprensible (en el ejemplo, todo esto simplemente se omite). Incluso he intentado crear comités de redes neuronales bastante grandes a partir de esos "folletos". En realidad, no necesito nada más. Hemos construido la red, la hemos entrenado con suficiente rapidez en un entorno especialmente preparado y la hemos puesto en práctica. ¿Qué más hay que hacer? El retrabajo allí realmente no es difícil, de lo contrario no podría haberlo hecho yo mismo tampoco.


joo:
Pero todavía hay que rebuscar en el código, y cada vez después del entrenamiento.

No, hermanos, soy demasiado "vago" para hacerlo cada vez.... ))

.......................

La culpa es mía por no expresar mis objetivos.

Hago las preguntas y no sé lo que quiero. Me corrijo.

......................

Objetivo: -- a partir de un NS clasificador muy simple de formato 1:1-N-1:1, donde N es el número de neuronas en la capa oculta (de 3 a 7), cada una responsable de su propio "patrón",

crear un comité de redes que dé una salida ponderada (predicción).

-- Una EA debe construirse con el principio de "todo en uno".

Por ejemplo: 1999-2000 en M15 abriendo precios encontramos algunos "patrones", creamos un conjunto de ejemplos de entrenamiento (TI), entrenamos las redes, las guardamos en un archivo.

Luego lanzamos el Asesor Experto en el rango de 2001-2010.

Durante la inicialización: 1. carga las redes preparadas en el programa especial desde el archivo (es decir, no se utiliza la función fann4MT_create_standard),

2. carga las OP en las que se aprendieron las redes.

Eso es todo. Aquí termina la intervención del usuario. No hay optimizaciones.

.....................

Durante el funcionamiento, el Asesor Experto:

-- Ejecuta las operaciones comerciales

-- acumula nuevos OPs al mismo tiempo

-- realiza el reentrenamiento cuando se producen los eventos especificados.

.....................

Si los resultados de su trabajo durante 10 años, estamos satisfechos, entonces le damos un billete para la vida. (Y un sanatorio para nosotros))

.....................

Y lo más importante:

¡la pregunta "¿Dónde está la línea...?" no tendrá que ser respondida!

 
lasso:

Lo que sea. Por lo menos, nos hemos dado cuenta de que no hay una salida fácil y sencilla de Statistics 6/8.

Sólo a través del baile con panderetas...

Un poco más tarde intentaré describir mi baile... Tal vez alguien lo encuentre útil....

Así que... Un rápido párrafo por párrafo. Si algún punto es de interés para alguien, lo describiré con más detalle.

.................................

Tarea:

Transferir la red creada para las tareas de clasificación en el paquete "Statistics 6|8" al entorno MQL4|5.

Un ejemplo para la tarea de clasificación en un contexto comercial está aquí. (quinto puesto desde abajo)

Bailando:

1) Decidí implementar la red neuronal en MT4 Expert Advisor basado en la biblioteca fann2MQL.dll

2) He elegido fannExplorer como adaptador gráfico (selección completa aquí)

3) Crear una nueva red en fannExplorer y con los parámetros que conocemos de "Estadísticas" seleccionar el número de capas, número de neuronas por capa, funciones de activación hasta una neurona concreta, etc.

4) Preparar el archivo de ejemplos de entrenamiento (TFS) para fannExplorer, recordando que los propios TFS son los mismos que para "Statistics 6", pero el formato de los datos es diferente.

5) Hice lo mismo con los ejemplos de prueba pero los guardé en un archivo separado con la extensión *.test

6) Entrene y pruebe la red en fannExplorer, basándose en los resultados obtenidos en "Estadísticas".

7) Guarde la configuración requerida (o varias configuraciones) en un archivo para su posterior carga y uso en el programa MQL.

..............................

Hay algunas cosas buenas en fannExplorer que no están disponibles en fann2MQL.dll, pero también hay algunos inconvenientes.

................................

P.D. Quiero saber de gente que utilice NSDT, porque imagino que allí todo es más fácil y sencillo.

¿Y es posible en NSDT crear y exportar a la red de clasificación DLL? Que produzca inmediatamente salidas nominales {1;-1} por ejemplo.

Ya que en FANN esto es un problema definitivo....