Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Facebook !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Bibliothèque

Classe de réseau neuronal MLP - bibliothèque pour MetaTrader 5

Vues:
99
Note:
(47)
Publié:
\MQL5\Scripts\MLP\
MQL5 Freelance Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

La classe CNetMLP met en œuvre un perseptron multicouche (MLP).

La particularité de cette classe est que les concepts de vecteur d'entrée et de structure de réseau sont séparés, c'est-à-dire que la description du vecteur d'entrée et celle de la structure du réseau ne sont pas liées l'une à l'autre.

La taille du vecteur d'entrée peut être quelconque dans des limites raisonnables. Les données d'entrée doivent être normalisées, c'est-à-dire comprises entre -1 .... 1 ou 0 ... 1. Selon les données utilisées, différentes fonctions d'activation sont appliquées au réseau : pour une plage de données comprise entre -1 et 1, une tangente hyperbolique doit être utilisée, tandis que pour une plage de données comprise entre 0 et 1, une sigmoïde doit être utilisée.

Le réseau a une structure couche par couche avec une transmission directe des signaux. La structure du réseau est décrite par un tableau unidimensionnel, où la valeur de l'élément du tableau détermine le nombre de neurones dans la couche correspondante. Le nombre de couches et de neurones n'est pas limité. Le réseau peut être constitué d'un seul neurone.

Chaque neurone a plusieurs entrées, déterminées par sa place dans le réseau, et une sortie. Si le réseau doit produire N réponses, la dernière couche doit contenir N neurones. L'algorithme d'apprentissage est iRprop. Les données d'apprentissage d'entrée et de sortie sont disposées dans des tableaux unidimensionnels, vecteur par vecteur. Le processus d'apprentissage est limité soit par le nombre d'époques d'apprentissage, soit par la tolérance d'erreur.

La création du réseau est déclarée par un constructeur de classe paramétrique.

CNetMLP  *net=new CNetMLP(количество слоев, массив структуры сети, размер входного вектора,                           тип активационной функции: 0 - сигмоид, 1 - гиперболический тангенс).

Le réseau est entraîné en appelant la méthode Learn (nombre de motifs d'entraînement, tableau de données d'entrée, tableau de données de sortie, nombre de cycles d'entraînement, erreur d'entraînement admissible). Le résultat de l'entraînement peut être vérifié au moyen des variables de classe : mse - erreur d'entraînement et epoch - nombre de cycles d'entraînement terminés.

La méthode Calculate (tableau de vecteurs d'entrée, tableau de réponse du réseau) est utilisée pour obtenir la réponse du réseau.

Les méthodes Save (handle d'un fichier ouvert avec les drapeaux FILE_WRITE et FILE_BIN) et Load (handle d'un fichier ouvert avec les drapeaux FILE_READ et FILE_BIN) sont utilisées pour enregistrer le réseau dans un fichier et charger le réseau à partir d'un fichier, respectivement. Seule la valeur de l'erreur d'apprentissage et le tableau des poids sont sauvegardés dans le fichier. La correspondance entre le réseau créé et le réseau chargé doit être contrôlée avant d'utiliser la méthode Load (handle).

L'application de cette classe se trouve dans l'exemple ci-joint. Il est entendu que les fichiers de la classe et de l'exemple se trouvent dans le même dossier.

Attention.

Le code de la classe a été mis à jour le 31.08.2012. Correction de l'erreur de calcul de la fonction dans la méthode Learn(...). Merci à her.human!


Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/596

Diriger Diriger

Un indicateur de deux moyennes mobiles (Lead et sa moyenne EMA) sur un graphique tiré du livre de John Ehlers "Cybernetic Analysis for Stocks and Futures : Cutting-Edge DSP Technology to Improve Your Trading" (Analyse cybernétique pour les actions et les contrats à terme : technologie DSP de pointe pour améliorer votre trading).

Filtre Laguerre Filtre Laguerre

Deux indicateurs de moyennes mobiles tirés du livre "Cybernetic Analysis for Stocks and Futures : Cutting-Edge DSP Technology to Improve Your Trading" (Analyse cybernétique pour les actions et les contrats à terme : la technologie DSP de pointe pour améliorer votre trading) de John Ehlers.

Manual Scalping With Keyboard Manual Scalping With Keyboard

Un outil léger pour le scalping manuel dans MT5 à l'aide de raccourcis clavier

AdaptiveTrader Pro EA AdaptiveTrader Pro EA

Cet Expert Advisor (EA) pour MetaTrader s'appuie sur une combinaison d'indicateurs techniques, dont le RSI, l'ATR et les moyennes mobiles, pour identifier les opportunités de trading à forte probabilité. Doté d'un dimensionnement dynamique des lots, de stops suiveurs et d'ajustements basés sur la performance, il est conçu pour optimiser les décisions de trading et gérer efficacement les risques dans des conditions de marché volatiles.