Les réseaux neuronaux. Questions des experts. - page 18

 
lasso:

Je n'ai même pas demandé le code source, juste la dll et l'en-tête.

Je ne sais pas ce que vous voyez dans dll lui-même, mais s'il vous plaît, ne faites pas attention... Mais Joo avait tout à fait raison, peut-être pas une lime, mais une râpe est nécessaire. La source demandera de saisir les entrées manuellement, je devrais le refaire pour le batch input, c'est ce que j'ai fait, mais je l'ai déjà oublié).
Dossiers :
knpr.rar  18 kb
 
Figar0:
Je ne sais pas ce que vous voyez dans le dll lui-même, mais s'il vous plaît, ce n'est pas une pitié... Mais Joo avait tout à fait raison, peut-être pas une lime, mais une râpe est nécessaire ici. La source demandera d'entrer les entrées manuellement, vous devez la refaire pour l'entrée par lot, ce qui est en fait ce que j'ai fait, mais j'ai déjà oublié).
Dossier. Un fichier est plus frais. Une râpe est presque une scie.
 
Figar0:
Je ne sais pas ce que vous voyez dans le dll lui-même, mais s'il vous plaît, ce n'est pas une pitié... Mais Joo avait tout à fait raison, peut-être pas une lime, mais une râpe est nécessaire ici. La source demandera d'entrer les entrées manuellement, vous devez la refaire pour l'entrée par lot, ce qui est en fait ce que j'ai fait, mais j'ai déjà oublié).

)) Merci pour le dll nu. Je ne vous ennuierai plus...

 
lasso:

)) Merci pour le dll nu. Je ne vous ennuierai plus...



Eh bien, je vous ai dit tout de suite qu'il n'y a plus de source)))
 
Figar0:

Je vous ai dit tout de suite qu'il n'y avait plus de sources )))).

Comment appelle-t-on les fonctions dans cette dll ?

Montrez-moi l'emballage aussi ;)))

 
lasso:

Comment appelle-t-on les fonctions de cette dll ?

Montrez-moi aussi l'emballage.)


Quel wrapper ? Juste un appel de l'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:


Quel genre d'emballage ? Juste un appel de l'EA :

Merde. Piégé dans le stéréotype à nouveau. )

Dans mon esprit, la bibliothèque de réseaux neuronaux est quelque chose comme Fann2MQL.dll, avec formation, etc.

Et vous, désolé, vous n'avez pas du tout de bibliothèque, juste une petite brochure...))

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

Eh bien, c'est parfait. Au moins, nous avons compris qu'il n'y a pas de sortie facile et transparente de Statistics 6/8.

Seulement en dansant avec des tambourins...

Je vais essayer de décrire ma danse un peu plus tard... Peut-être que quelqu'un le trouvera utile....

 
lasso:

Et vous, excusez-moi, vous n'avez pas du tout de bibliothèque, juste un petit livret...)


J'ai juste ce que cette "statistique" donne) La préparation des données, leur prétraitement, l'interprétation des résultats, tout cela dans le conseiller expert, c'est plus facile, plus pratique et plus compréhensible (dans l'exemple, c'est simplement omis). J'ai même réussi à créer des comités de réseaux neuronaux assez importants à partir de telles "brochures". En fait, je n'ai besoin de rien d'autre. Nous avons construit le réseau, l'avons formé assez rapidement dans un environnement spécialement préparé et l'avons mis à profit. Que faut-il faire d'autre ? Le remaniement n'est vraiment pas compliqué, sinon je n'aurais pas pu le faire moi-même.

Et Fann2MQL est une bibliothèque écrite à la main, bien sûr, elle a tout, c'est pourquoi elle a été écrite. Mais, premièrement, c'est un niveau de programmation complètement différent, professionnel. Deuxièmement, affûter (merci à (sans sarcasme) tara pour un débriefing sur la variété de ces outils abrasifs) le même code de statistiques est un peu plus facile, que de simplement comprendre comment utiliser une bibliothèque similaire à Fann2MQL. Eh bien, c'est comme ça pour moi personnellement.

 
Figar0:


J'ai exactement ce que cette "statistique" donne) La préparation des données, leur prétraitement, l'interprétation des résultats NS sont tous dans l'Expert Advisor, c'est plus facile, plus pratique et plus compréhensible (dans l'exemple, tout cela est simplement omis). J'ai même essayé de créer des comités de réseaux neuronaux assez importants à partir de telles "brochures". En fait, je n'ai besoin de rien d'autre. Nous avons construit le réseau, l'avons formé assez rapidement dans un environnement spécialement préparé et l'avons mis à profit. Que faut-il faire d'autre ? Le remaniement n'est vraiment pas difficile, sinon je n'aurais pas pu le faire moi-même.


joo:
Mais vous devez toujours fouiller dans le code, et chaque fois après la formation.

Non, les gars, je suis trop "paresseux" pour le faire à chaque fois. .... ))

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

C'est ma faute pour ne pas avoir exprimé mes objectifs.

Je pose les questions et je ne sais pas ce que je veux. Je me suis trompé.

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

But : -- à partir d'un NS de classification très simple de format 1:1-N-1:1, où N est le nombre de neurones dans la couche cachée (de 3 à 7), chacun étant responsable de son propre "modèle",

créer un comité de réseaux qui donnerait une sortie pondérée (prédiction).

-- Un EA doit être construit selon le principe du "tout-en-un".

Par exemple : 1999-2000 sur M15 en ouvrant les prix nous trouvons quelques "modèles", créons un ensemble d'exemples d'entraînement (TI), entraînons les réseaux, les sauvegardons dans un fichier.

Puis nous lançons l'Expert Advisor sur 2001-2010.

Pendant l'initialisation : 1. il charge les réseaux préparés dans le programme spécial à partir du fichier (c'est-à-dire que la fonction fann4MT_create_standard n'est pas utilisée),

2. charge les OP sur lesquels les filets ont été appris.

C'est tout. C'est là que s'arrête l'intervention de l'utilisateur. Aucune optimisation.

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

Pendant le fonctionnement, le conseiller expert :

-- Exécuter des opérations commerciales

-- accumule de nouveaux PO en même temps

-- effectue un réentraînement lorsque des événements spécifiques se produisent.

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

Si les résultats de son travail pendant 10 ans, nous sommes satisfaits, alors nous lui donnons un ticket pour la vie. (Et un sanatorium pour nous))

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

Et le plus important :

la question "Où est la limite... ?" n'aura plus à être posée !

 
lasso:

Peu importe. Au moins, nous avons compris qu'il n'existe pas de sortie facile et conviviale de Statistics 6/8.

Seulement en dansant avec des tambourins...

Un peu plus tard, je vais essayer de décrire ma danse... Peut-être que quelqu'un le trouvera utile....

Alors... Un rapide paragraphe par paragraphe. Si un point peut intéresser quelqu'un, je le décrirai plus en détail.

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

Tâche :

Transfert du réseau créé pour les tâches de classification dans le paquet "Statistics 6|8" vers l'environnement MQL4|5.

Un exemple pour la tâche de classification dans le contexte du commerce est ici. (cinquième poste en partant du bas)

La danse :

1) J'ai décidé d'implémenter le réseau neuronal dans le conseiller expert MT4 basé sur la bibliothèque fann2MQL.dll.

2) J'ai choisi fannExplorer comme adaptateur graphique (sélection complète ici)

3) Créez un nouveau réseau dans fannExplorer et en utilisant les paramètres que nous connaissons à partir de "Statistics", sélectionnez le nombre de couches, le nombre de neurones par couche, les fonctions d'activation jusqu'à un neurone spécifique, etc.

4) Préparer le fichier d'exemples d'entraînement (TFS) pour fannExplorer, en se rappelant que le TFS lui-même est le même que pour "Statistics 6", mais que le format des données est différent.

5) J'ai fait la même chose avec les exemples de test mais je les ai enregistrés dans un fichier séparé avec l'extension *.test

6) Entraîner et tester le réseau dans fannExplorer, sur la base des résultats obtenus dans "Statistiques".

7) Enregistrez la configuration requise (ou plusieurs configurations) dans un fichier pour un chargement ultérieur et une utilisation dans le programme MQL.

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

Il y a quelques avantages dans fannExplorer qui ne sont pas disponibles dans fann2MQL.dll, mais il y a aussi quelques inconvénients.

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

P.S. J'aimerais connaître l'avis des personnes qui utilisent le NSDT, car j'imagine que tout y est plus facile et plus simple.

Est-il possible dans NSDT de créer et d'exporter vers DLL un réseau de classification ? Qu'il produirait immédiatement des sorties nominales {1;-1} par exemple.

Puisque dans FANN c'est un problème certain....