Une bibliothèque rapide et gratuite pour MT4, pour le plus grand plaisir des neuralnetworkers. - page 14
![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
J'ai maintenant testé l'EA et j'ai trouvé ceci
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:28 2009.09.04 13:00 n5_test EURUSD,H1 : 1024
2009.12.24 23:04:27 2009.09.04 12:00 n5_test EURUSD,H1 : 1023
2009.12.24 23:04:26 2009.09.04 11:00 n5_test EURUSD,H1 : 1022
Ces chiffres sont ceux que le code renvoie :
a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);
Print(a);
L'ID de la grille passe donc à 1024 et le système refuse ensuite de créer une nouvelle grille.
La fonction f2M_destroy(ann[i]) ne détruit aucune grille ! C'est l'hypothèse...
Cependant, la fonction f2M_destroy(ann[i]) ne détruit aucune grille ! C'est l'hypothèse...
Alexander, avez-vous essayé f2M_destroy_all_anns() ;
Peut-être y aura-t-il une différence dans les performances ?
Oui, je l'ai essayé maintenant, on dirait qu'un problème a été localisé...
I. - J'ai mis static int AnnsNumber = 1027 dans EA ;
- J'ai tout supprimé du dossier ANN et nettoyé le journal.
- Je peux voir dans le journal que des réseaux avec des indices de 7 à 1024 sont créés.
- Les réseaux sont enregistrés dans des fichiers dont les numéros vont de .1017.net à .0.net.
J'ai répété cette séquence plusieurs fois et rien ne change.
Je joins le journal de la première variante.
.
===========================
II. J'ai inséré f2M_destroy_all_anns() ; au début de init() ; et la situation a cardinalement changé pour le mieux, seul un dysfonctionnement est apparu à la fin
22:44:41 2008.07.31 23:59 FANN-EA_tmp USDJPY,M5 : f2M_save(1, E:\ANN\USDJPY-870.1.net) returned : 0
22:44:41 2008.07.31 23:59 FANN-EA_tmp USDJPY,M5 : f2M_destroy(1) returned : 0
22:44:41 2008.07.31 23:59 FANN-EA_tmp USDJPY,M5 : f2M_save(0, E:\ANN\USDJPY-870.0.net) returned : -1
22:44:41 2008.07.31 23:59 FANN-EA_tmp USDJPY,M5 : f2M_destroy(0) returned : -1
La grille zéro n'a pas été sauvegardée, alors que 1024.net l'a été. Mais ce sont les petites choses ))))
Quelqu'un a décomplémenté toutes les options. Il n'y a pas de telles erreurs dans le code provenant du CVS.
Question : Qui a déployé FANN2MQL comment ?
Par l'installateur ? A la main depuis le site officiel ? Par d'autres moyens ?
Peut-être que nous sommes tous victimes d'une conspiration anti-réseaux ? )
Je vais aussi ajouter à la liste des bizarreries de FANN...
Pour les besoins de l'expérience, j'ai décidé d'entraîner un comité de 46 réseaux de dimension 30/N/N/1 par bruteforcing (c'est-à-dire sur chaque barre : ~300k).
Veuillez clarifier. Chacun des 46 réseaux a-t-il des sorties différentes ?
Quelle est la gamme des échelles ?
Si possible, joignez le profil d'une grille de comité.
J'ai maintenant testé l'EA et j'ai trouvé ceci
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:29 2009.09.04 14:00 n5_test EURUSD,H1 : -1
2009.12.24 23:04:28 2009.09.04 13:00 n5_test EURUSD,H1 : 1024
2009.12.24 23:04:27 2009.09.04 12:00 n5_test EURUSD,H1 : 1023
2009.12.24 23:04:26 2009.09.04 11:00 n5_test EURUSD,H1 : 1022
Ces chiffres sont ceux que le code renvoie :
a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);
Print(a);
L'ID du réseau passe donc à 1024 et le système refuse ensuite de créer un nouveau réseau
La fonction f2M_destroy(ann[i]) ne détruit aucune grille ! C'est une hypothèse...
C'est donc défini dans la bibliothèque elle-même :
La fonction f2M_destroy(ann[i]) ne détruit aucun réseau ! Voici une telle hypothèse...
La fonction elle-même :
La mémoire est libérée.
Bonne chance.
Le problème peut se poser si vous détruisez les filets dans un ordre aléatoire ou du premier au dernier. Vous devez le faire du dernier au dernier, c'est-à-dire dans l'ordre inverse de la façon dont les filets ont été créés.
Le problème peut se poser si vous détruisez les filets de manière aléatoire ou du premier au dernier. Elle doit se faire du dernier au dernier, c'est-à-dire dans l'ordre inverse de la création des filets.
Permettez-moi d'ajouter. Ou en cas de crash terminal. Mais la solution semble avoir été trouvée.
La question est différente. Vladislav, je pense que tu lis le code C++ sans "intermédiaires".
Pourriez-vous commenter le problème des réponses identiques des comités de grille et de l'initialisation correcte des valeurs de pondération ? (détaillé ici et aussi les journaux, et ici une question sur les poids)
lasso et VladislavVG
Merci beaucoup
Veuillez clarifier. Les résultats de chacun des 46 réseaux sont-ils différents ?
Quelle est la gamme de tailles des poids ?
Si possible, joignez le profil d'une grille de comité.
Oui. Les entrées sont différentes pour chaque grille, bien que cela ne soit pas crucial. Vous pouvez prendre un signal standard, par exemple le même RSI et une grille, et obtenir des valeurs négatives en force brute pour toutes les entrées.
Initialisation des poids -1, 1.
A propos du profil... Voulez-vous dire le fichier résultant du réseau formé ?