Caractéristiques du langage mql5, subtilités et techniques - page 154
![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
Bien que traduit en byte-code, Java possède sa propre machine d' exécution virtuelle (JVM).
De plus, le langage est strictement typé, contrairement à d'autres langages avec un interprète.
Il est fort probable que le typage strict et la JVM soient à l'origine de la rapidité d'exécution et de transmission des instructions au matériel.
Les terminaux de trading américains sont écrits en Java pour une raison. Le CME Group de Chicago fournit officiellement un terminal écrit en Java.
Un programmeur m'a dit un jour que Java avait ses racines dans les télécommunications.
Et l'industrie des télécommunications, dès le départ, exige la rapidité du traitement et du transfert des données.
Et Oracle a sa propre communauté pour le développement de ce langage.
Le langage est donc bien vivant, et il est affiné par la communauté Oracle.
Par ailleurs, la marque Quik et le langage LUA ont également été développés par les Américains.
Mais dans les années 90, elle a été vendue avec succès à la Fédération de Russie.
À l'époque, les Américains avaient déjà compris que LUA n'avait pas d'avenir.
Et ils ont réussi à le vendre à la Fédération de Russie, où un marché des changes commençait tout juste à se former après l'effondrement de l'Union soviétique.
Le modèle est le même que pour .Net : le code source est compilé en bytecode, qui sera également l'interprète, et le déballage du bytecode sur un PC donné générera déjà du code natif pour l'environnement virtuel dans lequel il sera exécuté, c'est-à-dire qu'il s'agira déjà d'un code compilé.
https://habr.com/ru/post/107585/
google "compilateur ou interpréteur java" pour Java - il y aura des articles similaires
Merci.
Je suis fondamentalement conscient de tout cela, mais je ne m'attendais pas à voir une si grande différence entre Java et MQL5 (trois fois plus en faveur de Java) :
Le graphisme n'est peut-être pas le meilleur sujet de comparaison. Mais il y a une mathématique là.
Vous êtes-vous déjà demandé combien de temps il faut au démarrage, combien de mémoire est consommée et combien de threads la JVM exécute pour compiler des octets de code ? J'ai lancé un monstre qui compile hello world à la volée, et il s'est retrouvé avec les deux natifs. Sauf que le monstre C n'en a pas. Et à propos de Python.
C'est bien d'acheter une machine à calculer multicore avec un wagon de RAM et de dire que mon java/sharp/... ...sont très cool dans ce test, et restent discrets sur la charge globale. Ils ne rattraperont jamais C. Progrès, prenez le tetris des années 80, réécrivez-le en sharpe, et faites la course aussi vite qu'avant, mais avec un CPU de 60 cœurs)).
ZS : semblable à la façon dont deux threads dans Elbrus sont seulement impliqués dans la traduction des instructions x86. BELAZ (Belarus) : un colis.
C et Java sont, pour une raison bien précise, les deux leaders égaux dans le classement des langages de programmation.
Vous avez peut-être raison dans une certaine mesure, mais vous semblez être en retard sur votre temps.
Je dois admettre que je n'ai réalisé que récemment à quel point j'étais en retard lorsque j'ai commencé à étudier pour devenir un programmeur.
Je pensais en savoir beaucoup, mais avec l'établissement de nouvelles connexions neuronales, mon estime de soi a chuté.
Merci.
Je suis fondamentalement conscient de tout cela, mais je ne m'attendais pas à voir une si grande différence entre Java et MQL5 (trois fois en faveur de Java) :
Les graphiques ne sont peut-être pas le meilleur sujet de comparaison. Mais il n'y a qu'une seule mathématique ici.
Qu'attendez-vous de MQL5 ? Vous ne pouvez pas obtenir le contexte du périphérique, alors vous dessinez en utilisant un logiciel d'émulation sur des cartes.
Au fait, en ce qui concerne Sharp, il semble qu'il soit possible de compiler directement en code natif. Je n'ai pas encore essayé, mais c'est censé être cool.
J'adore le hubr, surtout pour les commentaireshttps://habr.com/ru/company/microsoft/blog/265889/
https://docs.microsoft.com/ru-ru/dotnet/framework/net-native/
Qu'attendez-vous de MQL5 ? Vous ne pouvez pas obtenir le contexte du dispositif, n'est-ce pas ? Donc vous dessinez en utilisant l'émulation logicielle sur les graphiques.
Je ne pense pas que ce soit le cas.
Je pense que le contexte est lié lors de l'exécution de
C et Java sont, pour de bonnes raisons, les deux leaders à égalité dans le classement des langages de programmation.
Vous avez peut-être raison sur certains points, mais vous semblez être en retard sur votre temps.
Il est vrai que je n'ai moi aussi réalisé que récemment à quel point j'étais en retard lorsque j'ai commencé à étudier la programmation.
Je pensais en savoir beaucoup, mais avec l'établissement de nouvelles connexions neuronales, mon estime de soi a chuté.
Peut-être. Von sharp fait bouger Microsoft, son windows store (voilà la compilation en nativ), c'est à la mode après tout. Nous devons le faire en tant que troupeau.
Le modèle est le même que pour .Net : le code source est compilé en bytecode, qui sera également l'interprète, et le déballage du bytecode sur un PC donné générera déjà du code natif pour l'environnement virtuel dans lequel il sera exécuté, c'est-à-dire qu'il s'agira déjà d'un code compilé.
https://habr.com/ru/post/107585/
à propos de Java, recherchez sur Google "compilateur ou interpréteur Java" - vous trouverez des articles similaires.
Bon sang, Igor, cet article date de 2010. Beaucoup de choses ont changé en 9 ans.
Bon sang, Igor, cet article date de 2010. Beaucoup de choses ont changé en 9 ans.
Qui peut dire que les choses changent, on ne voit même plus les compilateurs Borland, et il y a 10 ans, ils tournaient tous sur le runet )))).
je n'ai jamais été intéressé par le java, peut-être sur 4pd quand ils avaient un téléphone en java
Mais la façon dontils fonctionnent est que .Net etJava étaient semblables et que la précompilation au moment de l'exécution les rendait portables sur toutes les plateformes.
Qui peut dire que les choses changent, on ne voit même plus de compilateurs Borland, il y a 10 ans tout le monde les utilisait sur le runet )))).
Je veux dire les principes, je n'ai jamais été intéressé par Java, peut-être sur 4pd quand ils avaient un téléphone en Java.
Mais la façon dontils fonctionnent est que .Net etJava étaient semblables et que la précompilation au moment de l'exécution les rendait portables sur toutes les plateformes.
Merci.
J'en suis conscient, mais je ne m'attendais pas à voir une si grande différence entre Java et MQL5 (trois fois plus en faveur de Java) :
Les graphiques ne sont peut-être pas le meilleur sujet de comparaison. Mais il faut faire des calculs.
un peu trompeuse. Dans le code MQL, à chaque image, la fonction ChartChanged(), très coûteuse, est appelée. Sans elle, le gain de Java ne serait pas de 3, mais de 2 fois.
Si le code MQL fait la même chose (également 8 cents de gravité), mais sans tableaux, la vitesse en Java et MQL5 sera égale.
J'ai remarqué depuis longtemps que MQL5 n'est pas convivial avec l'accès aux tableaux. L'accès à un élément de tableau est disproportionné. Je pense que les développeurs doivent travailler sur certaines choses.
J'ai trouvé une étude intéressante datant d'il y a deux ans, qui compare l'efficacité de différentes langues.
https://greenlab.di.uminho.pt/wp-content/uploads/2017/09/paperSLE.pdf