Une bibliothèque rapide et gratuite pour MT4, pour le plus grand plaisir des neuralnetworkers. - page 17

 
lasso >> :

Je comprends, mais je n'ai pas cette fonction pour une raison quelconque. Je pensais que c'était vos ajouts personnels à cet inluder. N'est-ce pas ?

C'est un inluder étendu, mais je l'ai obtenu à partir de codebase.

 
VladislavVG писал(а) >>

Vérifié - mes valeurs sont différentes et dispersées presque uniformément. Voici l'une des initialisations :

...........

J'ai ajouté une réinitialisation du générateur aujourd'hui - je ne sais pas si cela a un effet.

lasso a écrit >>

Vos pondérations sont plus que correctes, mais quelles sont les valeurs de sortie des réseaux avec le même vecteur d'entrée ?

Les valeurs de sortie sont différentes - c'est bien.

Mais. Les réseaux sont initialisés avec des poids aléatoires...., mais les mêmes poids à chaque fois. Vérifié.

En d'autres termes.

-- Le répertoire ANN est propre.

-- Je lance EA et enregistre les profils de réseau immédiatement après l'initialisation (16 réseaux). Je les enregistre dans le répertoire ANN_1

-- Je vide à nouveau le répertoire ANN.

-- Exécutez à nouveau EA et enregistrez les profils de réseau juste après l'initialisation (16 réseaux).

-- comparer les profils de ANN et ANN_1 -- ils sont les mêmes.

On dirait que quelque chose ne va pas avec srand()...

 
lasso >> :


Il semble y avoir un problème avec srand()...

C'est vrai - je me suis souvenu d'un "truc", qui était utilisé à la "préhistoire" (vers 1991 :) - j'avais oublié cette subtilité). J'ai jeté un coup d'œil à l'aide - et elle le conseille. :).

Je l'ai corrigé, en général. Essayez cette option - elle devrait être correcte.

D'une manière ou d'une autre, "_2" a collé au nom - il suffit de le renommer.

 
VladislavVG писал(а) >>

Pour une raison quelconque, le "_2" est collé au titre - il suffit de le renommer.

C'est vrai. Parce que _1 était déjà là. ))

 

Vladislav, juste un cercle vicieux.....

Avec vgTALib_2.dll l'initialisation initiale était normale, mais ensuite les sorties sont devenues les mêmes que dans FANN2MQL :-(

Ensuite, je ne change rien, j'écris à nouveau vgTALib_1.dll dans l'inline, les sorties sont différentes. Baffle....

Quelque part dans la bibliothèque des sources se trouve une petite, mais très importante morve. Et on dirait qu'ils ne l'ont pas mis là par hasard.....

 
Reshetov писал(а) >>

Vous pouvez obtenir le code et la description de la bibliothèque dans l'article : Utilisation des réseaux neuronaux dans MetaTrader

Merci à l'auteur !

La bibliothèque s'est avérée fonctionner !

Merci à l'auteur - pas de doute, même pour une bibliothèque qui ne fonctionne pas !

L'auteur du sujet a-t-il des commentaires à faire sur ce problème ?

Il est peut-être temps de changer le titre du fil de discussion en "Sur le malheur des neuralnetworkers, bibliothèque rapide et gratuite POUR SLIVE........" ? ???

Il est peut-être temps pour les modérateurs de retirer l'article ci-dessus de la vue ? Pour ne pas entrer dans la tentation. Et commentez sur.....

 
Pourquoi être si radical... Il y a un petit problème avec les pondérations quasi-aléatoires - rien de grave. L'essentiel est que le réseau fonctionne et donne des résultats. Et en plus, il est facile à manipuler et à utiliser. Il dispose également d'un ensemble d'utilitaires qui sont tout à fait utilisables. Au fait, je recommande FannTool. Un outil très intéressant pour étudier et optimiser les réseaux FANN.
 
Henry_White писал(а) >>
Pourquoi être si radical... Il y a un petit problème.

Je suis un peu fatigué. Des problèmes à la maison... Je suis hors service pendant trois jours...

Il n'y a pas de petit problème dans le commerce... La bibliothèque a été compromise. Nous devrons nous débrouiller.

Au secours !

 
lasso >> :

Je suis un peu fatigué. Des problèmes à la maison... Je suis hors service pendant trois jours...

Il n'y a pas de petit problème dans le commerce... La bibliothèque a été compromise. Nous devons régler ça.

Au secours !


int StartTick=GetTickCount() ;
for (int i = 0 ; i < AnnsNumber ; i++)
{
while(GetTickCount()==StartTick){}
AnnsArray[i] = ann_load (ANN_PATH+AnnFullName+ "." + i + ".net") ;
StartTick=GetTickCount() ;
}

 
vetalaxob писал(а) >>

int StartTick=GetTickCount() ;

Merci. Ça marche.

La bibliothèque elle-même semble avoir implémenté son propre délai lors de la création des réseaux (environ 1000/64 ms), mais sans les lignes que vous avez suggérées, ce mécanisme ne fonctionne pas pour une raison quelconque...