L'agonie du choix

 
Bonjour Chers utilisateurs du forum, Je voudrais vous demander votre avis en tant que personnes qui connaissent mon problème de l'intérieur. Je voudrais développer des robots de trading pour MT4, j'ai beaucoup d'idées et de temps. J'ai lu les forums et j'ai remarqué que je peux commencer à écrire des Expert Advisors simples après un mois d'étude de MQL4. J'ai téléchargé des tutoriels vidéo et rassemblé des articles sur la programmation, mais une fonctionnalité spécifique est apparue. La version actualisée de MQL4 ressemble de plus en plus à MQL5 et n'est pas si facile à apprendre (puisqu'il n'y a pas de didacticiels vidéo sur les nouvelles fonctionnalités du langage et qu'il n'y a pas beaucoup d'articles). Je ne veux pas étudier MQL5 parce que MT5 n'est pas populaire auprès des courtiers, ou plutôt pas populaire du tout. À cet égard, une question insoluble se pose : que dois-je faire ?
Est-il possible d'écrire des EA en utilisant l'ancienne fonctionnalité du MQL4 maintenant, et d'apprendre toutes les innovations plus tard (car il y a plus qu'assez de matériel pour son étude) ou est-il nécessaire d'apprendre le MQL4 mis à jour ? Je n'ai aucune connaissance en programmation. Veuillez me conseiller sur la meilleure façon de procéder.
 
the_sphinx:
Bonjour Chers utilisateurs du forum, Je voudrais vous demander votre avis en tant que personnes qui connaissent mon problème de l'intérieur. Je voudrais développer des robots de trading pour MT4, j'ai beaucoup d'idées et de temps. J'ai lu les forums et j'ai remarqué que je peux commencer à écrire des Expert Advisors simples après un mois d'étude de MQL4. J'ai téléchargé des tutoriels vidéo et rassemblé des articles sur la programmation, mais une fonctionnalité spécifique est apparue. La version actualisée de MQL4 ressemble de plus en plus à MQL5 et n'est pas si facile à apprendre (puisqu'il n'y a pas de didacticiels vidéo sur les nouvelles fonctionnalités du langage et qu'il n'y a pas beaucoup d'articles). Je ne veux pas étudier MQL5 parce que MT5 n'est pas populaire auprès des courtiers, ou plutôt pas populaire du tout. À cet égard, une question insoluble se pose : que dois-je faire ?
Est-il possible d'écrire des EA en utilisant l'ancienne fonctionnalité du MQL4 maintenant, et d'apprendre toutes les innovations plus tard (car il y a plus qu'assez de matériel pour son étude) ou est-il nécessaire d'apprendre le MQL4 mis à jour ? Je n'ai aucune connaissance en programmation. Veuillez me conseiller sur la meilleure façon de procéder.
Je n'ai aucune idée de ce qu'il faut en faire.
 
Vinin:
Écrire à l'ancienne et apprendre à la nouvelle
J'ai peur que ça ne marche pas toujours - beaucoup de choses qui marchaient avant ne marchent plus maintenant. Environ 50% des anciens EA refusent tout simplement de fonctionner. En l'absence d'informations judicieuses sur les mises à jour, faire évoluer l'ancien code vers un nouveau look n'est pas une tâche facile, et pour un débutant, c'est presque impossible !

Là encore, tout dépend de ce que vous allez faire exactement. Vous pouvez commencer à apprendre les bases à l'ancienne. Si vous voulez quelque chose de spécifique, vous devrez transpirer un peu !
 

C'est quoi cette histoire de 50%, un problème quelconque et aucune information sur les mises à jour ?

 
Pouvez-vous me dire comment mieux le faire ?

Utilisez MQL4 ou MQL5 - il n'y a pratiquement aucune différence.

Il n'y a pas non plus de complications. Elles ont été inventées à dessein comme des mythes et reproduites par ceux qui veulent gâcher la réputation de nos plateformes de trading. Eh bien, au moins d'une certaine manière, mais au moins d'une certaine manière.

Le langage est très simple et la POO est facultative et ne constitue en aucun cas une complexité dans les langages de programmation. En fait, il n'existe aujourd'hui aucun langage de programmation général qui ne contienne pas la POO.

Regardez les centaines d'articles et les milliers de programmes en code source sur ce site. Ils sont juste soigneusement assemblés pour un apprentissage rapide. Vous pouvez facilement utiliser des programmes existants comme cadres pour les vôtres. Beaucoup ont commencé de cette façon.

 

Pour information, cela pourrait aider à faire un choix :

  • Le développement de MT4 s'est arrêté, la plateforme a 10 ans, elle est obsolète, même si elle résiste bien grâce à la mise à jour cosmétique que nous avons effectuée il y a un an.
  • Dans MT4, nous améliorerons un peu l'intégration avec les services MQL5, mais il n'y aura pas de nouvelles fonctions.
  • Le langage MQL4 est gelé, ainsi que son compilateur
  • MQL5 se développe à la fois en termes de fonctionnalités et de compilateur. Nous publierons bientôt une nouvelle version du compilateur optimiseur, qui génère un code 2 à 4 fois plus rapide. Ce code ne fonctionnera qu'avec les versions 64 bits du terminal, si SSE4.2 est présent.
  • MT5 est déjà devenue la plateforme HFT, et elle vous permet d'effectuer jusqu'à 300-500 transactions par seconde à partir d'un seul terminal dans des conditions normales. Dans nos tests, nous avons atteint jusqu'à 1 800 transactions par seconde à partir d'un terminal avec une latence minimale du réseau en mode asynchrone. Notre service d'hébergement de terminaux virtuels y contribue tout particulièrement. Sur MT4, cela ne se produira pas - l'architecture est ancienne et il n'y a pas d'opérations asynchrones.
  • MT5 est une plateforme multi-marchés et permet de négocier sur les marchés boursiers. Par exemple, vous pouvez facilement négocier sur le MOEX.
  • Sur le plan technologique, MT5 a une longueur d'avance sur MT4.
 

Merci beaucoup pour cette réponse rapide. Je suis d'accord pour dire que MT5 est meilleur, mais très peu de courtiers le proposent et ceux qui le font sont limités à 30 paires de devises + or et argent (corrigez-moi si je me trompe). MT4 est meilleur à cet égard : plus de devises et des CFD sur toutes sortes d'actions, de contrats à terme et d'indices. J'ai l'impression que MT5 n'est pas très bon à la bourse de Moscou, seulement 6 futures plus ou moins liquides et c'est tout (je pense qu'il n'y a pas encore de support pour les actions, je peux me tromper).

Puis-je utiliser un ancien cours et une ancienne vidéo de MQL4 (sans OOP), est-il possible d'étudier MQL4 et est-il très différent des autres versions ?

La fonctionnalité de l'ancienne MQL4 est-elle limitée par la nouvelle version de MT4 ?

Serait-il difficile de migrer de l'ancienne version de MQL4 vers la nouvelle ?

Peut-être existe-t-il une alternative que je n'ai pas envisagée ?

Je m'excuse par avance pour les éventuelles questions stupides, je n'en suis qu'au début.

 

Pourquoi s'embêter avec de telles questions ?

Avez-vous besoin d'apprendre à créer des EA? Alors apprenez. Peu importe que ce soit sur MT4 ou MT5. Une fois que vous en aurez appris un, vous passerez facilement à l'autre, si des limitations vous en empêchent.

Que sont les "anciennes" et les "nouvelles" constructions ? Il y a une construction en cours. C'est là que vous devez écrire. Si une erreur se produit lors de la compilation, utilisez la recherche pour trouver ce qu'il en est et le corriger.

"N'ayez pas peur, ne craignez rien", "Craignez les loups - ne vous promenez pas dans les bois", etc.

 
Renat:

C'est quoi cette histoire de 50%, un problème quelconque et aucune information sur les mises à jour ?

Il ne s'agit pas d'un non-sens mais d'un constat. Certains des indicateurs et conseillers disponibles ont cessé de fonctionner. J'ai corrigé certaines d'entre elles et je suis trop paresseux pour fouiller dans les autres.
 
mmmoguschiy:
Il ne s'agit pas d'un non-sens, mais d'une déclaration de fait. J'ai corrigé certains des indicateurs et EAs, que j'ai en ma possession, mais pas d'autres. J'ai corrigé certaines d'entre elles, mais je suis trop paresseux pour en faire quoi que ce soit.

Ce n'est pas vrai du tout. Si vous êtes un programmeur et que vous écrivez du code, celui-ci est généralement recompilé au moins une fois par mois. Il y a toujours un développement des programmes, l'ajout de fonctionnalités ou le polissage.

Rien n'arrive "soudainement" - il y a une autre situation - vous avez été endormi pendant un an ou deux et puis "soudainement". Vous devez surveiller vos programmes et il n'y aura aucun problème.

 
barabashkakvn:

Ce n'est pas vrai du tout. Si vous êtes un programmeur et que vous écrivez du code, celui-ci est généralement recompilé au moins une fois par mois. Il y a toujours un développement des programmes, l'ajout de fonctionnalités ou le polissage.

Rien n'arrive "soudainement" - il y a une autre situation - vous avez été endormi pendant un an ou deux et puis "soudainement". Vous devez garder un œil sur vos programmes et vous n'aurez aucun problème.

Allez ! !! :) J'avais un programme qui fonctionnait bien et qui était en train d'être peaufiné. Et puis, bang, 600 constructions sont sorties. Et cela ne fait aucune différence - que je l'aie ou non scié auparavant - des changements de métadonnées se sont produits et à ce moment précis, les programmes sciés et non sciés qui utilisaient les données modifiées ont cessé de fonctionner d'un seul coup ! Et ça n'avait pas d'importance si c'était le mien ou celui de quelqu'un d'autre.
Raison: