Discussion de l'article "Simulink : un guide pour les développeurs d'Expert Advisors"

 

Un nouvel article Simulink : un guide pour les développeurs d'Expert Advisors a été publié :

Je ne suis pas un programmeur professionnel. Et donc, le principe de « passer du simple au complexe » est d’une importance capitale pour moi lorsque je travaille sur l’élaboration d’un système de trading. Qu’est-ce qui est précisément simple pour moi? Tout d’abord, il s’agit de la visualisation du processus de création du système et la logique de son travail. En outre, il s’agit d’un minimum de code manuscrit. Dans cet article, je tenterai de créer et de tester le système de trading, basé sur un package Matlab, puis écrire un Expert Advisor pour MetaTrader 5. Les données historiques de MetaTrader 5 seront utilisées pour le processus de test.

Avec Simulink, l’utilisateur peut créer un modèle à partir de zéro ou modifier un modèle déjà existant. Le package prend en charge l’ élaboration de systèmes linéaires et non linéaires, qui sont créés sur la base d’un comportement discret, continu et hybride.

Les principales propriétés du package sont présentées sur le site de titlehttp://www.mathworks.com/products/simulink/description1.htmltitle du développeur :

  • Bibliothèques étendues et extensibles de blocs prédéfinis;
  • Éditeur graphique interactif pour l’assemblage et la gestion de schémas fonctionnels intuitifs;
  • Capacité à gérer des conceptions complexes en segmentant les modèles en hiérarchies de composants de conception;
  • Explorateur de modèles pour naviguer, créer, configurer et rechercher tous les signaux, paramètres, propriétés et code généré associés à votre modèle ;
  • Interfaces de programmation d’applications (API) qui vous permettent de vous connecter à d’autres programmes de simulation et d’incorporer du code manuscrit ;
  • Embedded MATLAB™ Les blocs fonctionnels pour intégrer les algorithmes MATLAB dans Simulink et les implémentations de systèmes embarqués
  • Modes de simulation (Normal, Accélérateur et Accélérateur Rapide) pour exécuter des simulations de manière interprétative ou à des vitesses de code C compilées à l’aide de solveurs à pas fixes ou variables;
  • Débogueur graphique et profileur pour examiner les résultats de la simulation, puis diagnostiquer les performances et le comportement inattendu dans votre conception ;
  • Accès complet à MATLAB pour analyser et visualiser les résultats, personnaliser l’environnement de modélisation et définir les données de signal, de paramètre et de test ;
  • Outils d’analyse et de diagnostic des modèles pour assurer la cohérence des modèles et identifier les erreurs de modélisation.

Commençons donc l’examen immédiat de l’environnement Simulink. Il est initialisé à partir d’une fenêtre Matlab déjà ouverte de deux des manières suivantes :

  1. en utilisant la commande Simulink dans la fenêtre de commande ;
  2. à l’aide de l’icône Simulink dans la barre d’outils.

Figure 1. Initialisation de

Auteur : Denis Kirichenko

 

Seulement quelque chose ne fonctionne pas votre Expert Advisor, il n'ouvre pas du tout les trades((()

 
ZahvatkiN:

Mais votre EA ne fonctionne pas, il n'ouvre pas de transactions du tout((.

Pouvez-vous être plus précis ? S'agit-il de l'EA qui se trouve dans le fichier mts.mq5 ?

L'avez-vous testé sur l'historique ?

Dossiers :
mts.mq5  11 kb
 

Oui, j'ai téléchargé l'Expert Advisor et un autre fichier, je l'ai lancé sur l'historique et il n'a pas ouvert un seul trade, je l'ai essayé sur différents timeframes, peut-être que j'ai raté quelque chose... Et tout fonctionne ?

 
ZahvatkiN:

Oui, j'ai téléchargé l'Expert Advisor et un autre fichier, je l'ai lancé sur l'historique et il n'a pas ouvert un seul trade, je l'ai essayé sur différents timeframes, peut-être que j'ai raté quelque chose...Est-ce que ça marche pour vous ?

ZahvatkiN, veuillez relire les sections :

2. description de la stratégie de trading

4. Implémentation de la stratégie dans MQL5

Téléchargez l'historique... tout fonctionne pour nous...

Modifier les paramètres d'entrée pour des raisons d'intérêt...

 

Je n'ai copié que 2 fichiers, l'Expert Advisor Experts\mts.mq5 compilé sans erreurs et le fichier Scripts\testclose.mq5, qui à la compilation a donné 8 avertissements, les paramètres dans les propriétés ont changé, comme les niveaux de stop et take et les muwings, tous les mêmes sur n'importe quel time frame pulse est absent))). Le scan des erreurs est joint.

Dossiers :
1.jpg  490 kb
 
ZahvatkiN:

Je n'ai copié que 2 fichiers, l'Expert Advisor Experts\mts.mq5 compilé sans erreurs et le fichier Scripts\testclose.mq5, qui à la compilation a donné 8 avertissements, les paramètres dans les propriétés ont changé, comme les niveaux de stop et take et les muwings, tous les mêmes sur n'importe quel time frame pulse est absent))). L'analyse des erreurs est jointe.

Cause de l'erreur 4756

 

Où peut-on regarder/télécharger la vidéo ?

 

Bonjour !

Comment puis-je ajouter l'ouverture du lot initial à l'Expert Advisor, afin de ne pas avoir à l'ouvrir tout le temps ?

 

Encore un article qui est très bien, sauf que la traduction est un peu difficile.

Se contenter de tout passer par un programme est certes rapide, mais inutile dans le domaine des commandes informatiques.

[ema21, ema55] = movavg(close, 21, 55, 'e');

est traduit par

[ema21, ema55] = gltDurch(schließen, 21, 55, 'e');

Ce qui ne peut évidemment pas fonctionner.

J'espère que cela a été oublié.

 

Les fichiers ne seront exécutables que si vous recréez les deux bus virtuels (InputBus) avec les 4 signaux open,ema21,ema55,num

et (OutputBus) avec les 10 autres signaux. Ceux-ci ne sont pas enregistrés dans le fichier Simulink car il se trouve dans l'espace de travail.

Il faut donc les créer puis enregistrer l'espace de travail.


J'ai réussi à créer et à simuler le projet avec Matlab 2016b et à créer une DLL à partir de ce projet, mais uniquement via le codeur embarqué car la communication ne fonctionne pas.

avec Visual Studio produit des erreurs. Cette communication est très bancale. Sur certains ordinateurs, tout se passe bien et VS démarre avec le projet chargé, sur d'autres, il se bloque.

Si je réussis à créer une stratégie via Simulink sous forme de dll et que je peux ensuite l'intégrer dans le MT5, je vous en parlerai.