Version bêta de l'IDE MetaTrader 4 comprenant un nouveau compilateur et un nouvel éditeur MQL4 - page 11
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
Ce mois-ci.
Y aura-t-il une place de marché dans cette version ? Sera-t-il mis en œuvre comme dans MT5 (je veux dire la possibilité de tester la version de démonstration avant d'acheter) ?
Il serait bien que dans la nouvelle version du langage toutes les GlobalVariables soient appelées Variables Terminales pour éviter l'éternelle confusion des "variables globales". Les commandes "Global- " pourraient encore fonctionner pour la compatibilité des versions.
C'est le poids que nous portons depuis les trois. Où il n'y avait pas de concept de fonctions.
Malheureusement, lorsque nous sommes passés à quatre, nous n'avons pas pu nous débarrasser du terme "variables globales". Toutefois, le nom officiel "variables globales du terminal du client" est assez proche du terme "variables du terminal" (qui n'est pas parfait non plus).
Ce mois-ci.
Regardez la version de MT5 qui a été publiée hier. Il dispose d'un nouveau compilateur et éditeur MQL4 à part entière. Nous allons bientôt lancer le terminal MT4, ce qui n'est pas une mince affaire quand on pense à l'énorme quantité de fonctionnalités transférables depuis MT5.
La question est de savoir pourquoi transférer cette fonctionnalité si nous pouvions simplement ajouter MQL5 comme second langage à MT4 et laisser MQL4 tel quel, inchangé, pour la compatibilité avec les anciens programmes. Alors les moutons seraient mangés et les loups nourris. Tous les nouveaux programmes seront écrits en MQL5, puissant et pratique, tandis que les anciens programmes, écrits en MQL4, fonctionneront également correctement. Puis, en l'espace de quelques années, mettre progressivement fin à la prise en charge de l'ancien langage, afin de laisser aux gens le temps de refaire leurs anciens développements en toute tranquillité.
Mais au lieu de cela, un hybride de MQL4-MQ5 est créé qui n'est pas 100% compatible avec l'ancienne norme (déjà discuté dans ce fil). De plus, d'après ce que je comprends, cet hybride ne sera pas non plus entièrement compatible avec MQL5. Je parle de la syntaxe du langage elle-même, pas de l'API sous forme de fonctions.
Cela signifie qu'il y aura toujours deux langues, deux normes. Et les développeurs devront prendre en charge les deux. La question est de savoir pourquoi on fait tant d'histoires à ce sujet. L'option que j'ai décrite dans le premier paragraphe est beaucoup plus logique et pratique pour tous. Si nous avions une seule norme MQL5 + une seule norme MQL4 (qui deviendra peu à peu obsolète), il ne nous resterait plus que la norme MQL5.
Encore une fois, par norme linguistique, j'entends exactement sa syntaxe. Toutes les fonctions du terminal et les variables d'environnement ne sont pas liées à la langue.
...........
Au lieu de cela, ils créent un hybride de MQL4-MQ5 qui n'est pas 100% compatible avec l'ancienne norme (déjà discuté dans ce fil).
De plus, d'après ce que je comprends, cet hybride ne sera pas non plus entièrement compatible avec MQL5. Je parle de la syntaxe du langage elle-même, pas de l'API en tant que fonctions.
Cela signifie qu'il y aura toujours deux langues, deux normes. Et les développeurs devront prendre en charge les deux. La question est de savoir pourquoi on fait tant d'histoires à ce sujet. L'option que j'ai décrite dans le premier paragraphe est beaucoup plus logique et pratique pour tous. Si nous avions une seule norme MQL5 + une seule norme MQL4 (qui deviendra peu à peu obsolète), il ne nous resterait plus que la norme MQL5.
Encore une fois, par norme linguistique, j'entends exactement sa syntaxe. Toutes les fonctions possibles du terminal et les variables d'environnement ne sont pas liées à la langue.
Pouvez-vous nous en dire plus ? // Je n'en ai jamais entendu parler.
Plus de détails ? // Je n'ai rien entendu à ce sujet.
Alors, qu'y a-t-il à entendre ? Ce n'est pas parce que l'ancien MQL4 sera mis à jour avec de nouvelles fonctionnalités qu'il deviendra le MQL5.
Par norme linguistique, j'entends sa syntaxe. Et toutes sortes de fonctions terminales et de variables d'environnement ne font pas partie du langage.
La question est de savoir pourquoi transférer cette fonctionnalité si l'on peut simplement ajouter MQL5 à part entière comme deuxième langage à MT4 et laisser MQL4 tel quel, inchangé, pour la compatibilité avec les anciens programmes.
La variante la plus logique est d'étendre MQL4 à MQL5 qui devrait être complètement liquidé en tant que méthode de test et de débogage qui n'a pas trouvé sa place sur le marché. Le terminal dispose également d'une solution simple pour la compensation, de sorte que les transactions soient toujours effectuées par un seul ordre sur le serveur. Sinon, nous devrons faire du désordre et conserver deux versions équivalentes pour le reste de notre vie, ce qui deviendra tôt ou tard ennuyeux en raison de l'absence de sens.
Pour ce faire, nous devons déclarer notre propre logique comme étant la plus correcte, tandis que toutes les autres logiques doivent être ignorées en raison de leur absence de sens.
P.S. Et ne réduisez pas le monde au primitivisme du "la logique est ou n'est pas". :)