Que faudrait-il pour que tout le monde passe enfin à MT5 ? (collecte d'opinions) - page 35

 
Makar Anoshin:

Au moins, il ne présente pas de problème au démarrage sur les anciens PC et ordinateurs portables. MT5 est extrêmement inconfortable à cet égard... Je ne parle pas de l'optimisation et du travail avec les conseillers experts et les indicateurs. Tout est plus compliqué là-bas... Donc, dans ces conditions, vous choisissez involontairement ce qui est le plus facile... (MT4)

Qu'en pensez-vous ?

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Est-il judicieux de passer de MT4 à MT5 ? Pourquoi passer à MT5 ?

Renat Fatkhullin, 2019.02.08 23:07

Je veux vous rapprocher de la réalité compte tenu des discussions du fil de discussion Que faut-il faire pour que tout le monde passe enfin à MT5 ? (recueil d'opinions):

  1. MetaTrader 5 est plus rapide dans le trading

    L'architecture de 5 est un ordre de grandeur plus efficace que celle de 4. Tous les processus sont réorganisés pour permettre des échanges avec des délais minimaux.

    Avec (ou sans) les opérations asynchrones, vous pouvez atteindre un maximum de plusieurs milliers de transactions par seconde. Tout est conçu pour la vitesse, y compris la hiérarchisation des transactions.

    C'est loin d'être fait en 4.

  2. Dans MetaTrader 5, les robots fonctionnent jusqu'à 20 fois plus vite.

    Cela est dû au fait que 5 utilise un compilateur de niveau C++ qui rend le code extrêmement efficace. F4 utilise l'ancien système d'exécution sans optimisation du code.

    Une vitesse plus rapide signifie une réduction de la latence et une amélioration de la qualité d'exécution.

  3. Avec MetaTrader 5, vous pouvez gérer d'énormes quantités de données.

    Ceux qui sont engagés dans le développement profond connaissent la taille des données stockées dans les répertoires des cinq. Il y a souvent des dizaines de gigaoctets de données historiques, y compris les données complètes des tick.

    Le stockage et l'affichage des données de tick complètes de Five est une fonctionnalité non exclue. Ne commettez pas l'erreur de penser que parce que les données tick ne sont pas affichées sur le graphique, cela signifie qu'elles n'existent pas.

    Voici un code simple exécuté sur un compte réel chez le courtier Otkritie et le symbole RTS Splice, qui est un assemblage de tous les contrats à terme sur indice RTS sur plusieurs années :
    void OnStart()
      {
       MqlTick ticks[];
       int     records=CopyTicks(Symbol(),ticks,COPY_TICKS_ALL,0,1000000000);
    //---
       Print(Symbol()," ticks ",records);   
      }
    
    il produit 472 millions de ticks :
    RTS Splice ticks 472 111 564
    
    Oui, 472 millions de tiques en une seule requête. Faites ce que vous voulez avec eux ensuite.

    Il vous donne un contrôle absolu sur les données. Vous pouvez aussi attraper des milliards de tiques. Il suffit de donner un coup de pied au courtier pour qu'il s'occupe des données historiques. C'est SON ŒUVRE DIRECTE ET SON MANDAT.

    Deux lignes de code et toutes les données sont entre vos mains. Qui parle de la complexité de MQL5 ?

    Il n'y a pas de telle chose dans le 4.

  4. MetaTrader 5 dispose d'un testeur multi-symboles très précis à la milliseconde près

    Cela vous permet d'exécuter des stratégies très complexes et d'avoir plus de garanties que votre stratégie ne s'autodétruit pas.

    Vous écrivez directement le code et le testeur se charge de toute la complexité de la modélisation de toute la variété du marché.

    Périodiquement, les commerçants se vantent de pouvoir écrire leur simple testeur plusieurs fois plus vite, mais tout cela se situe au niveau d'une exécution bon marché du cycle pour les bars. Sans parler de l'exclusion totale de toute la variété des conditions de marché, des instruments et des exigences de marge.

    Et nous disposons non seulement de la modélisation la plus détaillée, y compris la conversion précise de tous les bénéfices dans la devise du bilan, mais aussi de la collecte de toutes les informations statistiques ainsi que de l'historique des modifications des fonds propres flottants/des fonds propres.

    Ce n'est même pas proche de ce que nous avons dans MetaTrader 4.

  5. Dans le testeur MetaTrader 5, il existe une fonction étonnante de comptabilité d'exécution différée.

    Le mode de trading avec un décalage donné nous permet de disqualifier complètement la plupart des stratégies scalper qui sont fabuleuses dans le testeur, mais désastreuses dans l'environnement de trading réel.



    Même l'ajout de 50 à 100 ms de retard serait suffisant pour dégrader considérablement de nombreuses stratégies.

    La puissance de cette fonction repose sur une simulation précise de l'environnement du marché, lorsque même le sommeil (ms) dans le testeur fonctionne comme dans la réalité. Nous sommes en mesure de paralléliser le développement du marché en créant des délais pour le conseiller expert lui-même, ce qui lui permet d'effectuer une exécution réelle de manière qualitative.

    Vous pouvez simplement jouer avec le délai de votre réseau et l'augmenter plusieurs fois pour tester la robustesse de votre robot. Vérifiez la qualité des requêtes et des rebonds en même temps.

    Vous l'avez en 4 ? Non, bien sûr que non.

  6. Le système 64 bits de Five vous permet de travailler avec une quantité énorme de graphiques et un historique profond.

    C'est très important lorsque vous effectuez une analyse complexe ou que vous balayez plusieurs symboles et horizons temporels. Vous pouvez détenir et exploiter des milliers de graphiques (symbole + période) et être sûr qu'ils sont disponibles instantanément.

    Certains traders disent qu'ils n'ont pas besoin de beaucoup et que les données dérisoires des quatre leur suffisent. Mais en réalité, les enjeux de l'analyse des données ne cessent d'augmenter.

    À mon avis, la quantité de données dans un cinq n'est toujours pas suffisante. Nous nous efforçons constamment d'améliorer l'efficacité et la rapidité de la transmission des données. Nous améliorons constamment les performances afin que les données volumineuses soient toujours à portée de main et rapidement disponibles à partir de MQL5.

  7. Utilisation d'un testeur multithread, de serveurs de calcul et de serveurs cloud.

    Le principal coût du développement de la stratégie est l'optimisation des stratégies. C'est le domaine dans lequel nous avons beaucoup investi.

    Vous pouvez utiliser tous vos cœurs locaux, construire une ferme de calcul dans votre région ou connecter le réseau de nuages MQL5. Cela vous permet d'accélérer l'optimisation par des dizaines ou des centaines de fois.


  8. MetaTrader 5 dispose de piles et d'une exécution sur une multitude de passerelles

    Les traders ne le savent pas très bien, mais MetaTrader 5 dispose d'un puissant système d'agrégation de différents fournisseurs de liquidités et d'un système flexible de transfert de transactions vers différents fournisseurs.

    ECN, le moteur d'agrégation et d'appariement des liquidités permet d'exécuter efficacement les stratégies d'exécution au meilleur prix et de prendre en charge plusieurs marchés à partir d'un seul compte.

  9. Cinq n'a pas de limitation de volume de données

    Vous pouvez demander d'énormes volumes de données graphiques historiques (limités à 1970) et l'historique des transactions.

    Vous avez un million de transactions dans l'historique de votre compte ? Pas de problème. Il suffit d'ajouter de la mémoire.

  10. Un architecte graphique et une gestion des objets totalement différents

    Vous pouvez gérer votre graphique de manière beaucoup plus efficace, et désactiver complètement le graphique pour le bien de vos constructions.

    Utilisez la fenêtre comme vous le souhaitez avec des objets graphiques ou des kanvas.

  11. Énorme bibliothèque standard

    Voici la bibliothèque standard de MQL5. Il y a les mathématiques au niveau du langage R, les collections de données, OpenCL, les graphiques, etc.

    La plupart des traders ne savent pas que nous avons implémenté des centaines de fonctions mathématiques et statistiques du paquet R dans le code source. Ils vous permettent d'effectuer un grand nombre de calculs complexes beaucoup plus rapidement (5 à 50 fois plus rapidement) que ce qui est disponible dans R.

    Oui, les programmes écrits dans le code source de MQL5 font exploser la vitesse de l'implémentation C++ de R jusqu'à 50 fois.

  12. Symboles personnalisés, piles personnalisées, symboles synthétiques et importation simple de données

    Dans Five, vous pouvez facilement créer vos propres symboles, y compris des piles de prix. Créez-les à partir du code MQL5 et introduisez-les dans rltime à partir du code MQL5. Vous pouvez construire des symboles synthétiques à l'aide de formules.

    En d'autres termes, MetaTrader 5 est depuis longtemps une plateforme analytique indépendante où vous pouvez analyser n'importe quelle autre donnée. Tout programme MQL5 peut gérer les flux de données.

  13. Et beaucoup d'autres caractéristiques décrites à plusieurs reprises.



Il faut s'en rendre compte :

  • La technologie évolue constamment, et ceux qui s'en tiennent au vieux mantra de la suffisance sont laissés pour compte.

  • Oui, c'est une course à la technologie. Et tout d'abord pour les commerçants

  • Les langages MQL4 et MQL5 sont absolument identiques en termes de complexité.

    Il est vraiment amusant d'entendre des déclarations sur la simplicité de MQL4, alors que la complexité de MQL5 est exactement la même. LA COMPLEXITÉ DE MQL5 EST EXACTEMENT LA MÊME.

    Ou alors il faut admettre que quelques paramètres supplémentaires sont un problème universel pour un programmeur. Non, bien sûr que non. C'est une belle légende pour ceux qui piétinent les anciens.

  • Je l'ai dit maintes fois et je le répète : les programmes sont écrits par des développeurs professionnels.

    Moins de 2% des utilisateurs utilisent l'éditeur de code. La majorité des traders téléchargent des produits prêts à l'emploi sur le marché et sur kodobase sans analyser le code.

    Les histoires concernant le simple MQL4 sont exceptionnellement ridicules. Les discussions sur la POO sont hors limites, d'autant plus qu'elle est présente dans MQL4 depuis longtemps. De nos jours, tout programmeur doit connaître la POO par défaut.

    Seul un programmeur suffisamment compétent peut créer un programme de qualité acceptable. Ne vous laissez pas berner par la possibilité d'"écrire un code acceptable sans connaissances en programmation".

    J'ai passé 28 ans à programmer quotidiennement et je sais que mon affirmation est une réalité.

  • Un nombre suffisant de nos partenaires technologiques et de nos développeurs tiers sont directement intéressés à ce que MetaTrader 4

    Parce que cette plateforme présente de nombreux défauts technologiques, ils se sont attelés au créneau des modules complémentaires/trous et s'en nourrissent directement.

    Oui, ils dépensent beaucoup de ressources pour convaincre les courtiers et les traders que "MetaTrader 4 est meilleur". Parce que leurs affaires vont s'effondrer. Et voilà qu'ils se présentent sous le nom de commerçants indépendants, travaillant en opposition.

    Nous n'avons pas la capacité de lutter contre cela de manière agressive, bien que nous soyons particulièrement zélés et que nous sachions très bien ce qu'ils disent aux courtiers et aux négociants et comment ils le font.

    Par exemple, rappelez-vous le tollé que les fournisseurs d'antivirus ont soulevé pendant 10 ans lorsque Microsoft a rendu sa plate-forme plus sûre et a supprimé ses fonctions de sécurité. Juste une colère justifiée et beaucoup de relations publiques.

  • Le progrès est inarrêtable.

 
Artyom Trishkin:

Que pensez-vous de cela ?


Tout cela est bien, bien sûr, mais en pratique, hélas... pour une raison quelconque, tout fonctionne plus lentement depuis le démarrage, le chargement des citations et les tests approfondis des programmes MQL sur les données historiques.

Pour une raison impensable, malgré les avantages mentionnés ci-dessus, tout fonctionne et se teste plus rapidement sur mon ordinateur et mon serveur VPS que sur Mt4. Et acheter un ordinateur de jeu moderne spécifiquement pour le trading du FOREX, eh bien, où est la commodité et la pratique ?

 
Artyom Trishkin:

Que pensez-vous de cela ?


Je pense que c'est dérisoire si l'optimisation est presque 4 fois plus lente, et si vous n'avez que des fichiers eX5 alors ils se bloquent probablement, sans aucune possibilité d'écrire du code pour interrompre la passe d'optimisation !!!

Le même problème avec le rendu des ordres en attente, et si la stratégie est basée sur eux, alors kaput....

 
Renat Akhtyamov:

cela dépend de la stratégie

Ce n'est pas seulement la vitesse qui compte, mais aussi le prix au moment de l'ordre d'ouverture de la transaction.

Une maison de courtage "intelligente" ne vous laissera jamais prendre de l'avance...

 
Makar Anoshin:

Tout cela est bien, bien sûr, mais dans la pratique, hélas... pour une raison quelconque, tout fonctionne plus lentement depuis le lancement, le chargement des cotations et les tests approfondis des programmes MQL sur les données historiques.

Pour une raison impensable et contraire aux avantages ci-dessus, tout fonctionne et se teste plus rapidement dans MT4 (personnellement sur mon ordinateur et mon VPS). Et acheter spécialement pour le trading sur le FOREX un ordinateur de jeu moderne, eh bien, où est ce que c'est commode et pratique ?

Je travaille sur un simple ordinateur portable. Il ne peut jouer à aucun jeu en qualité normale. Et je n'ai que 5 Go de mémoire. Et j'en ai assez pour travailler quotidiennement sur mes projets en cinq. Et d'une certaine manière, ça ne ralentit pas comme vous le prétendez. Même en faisant un indicateur qui prend des données sur tous les symboles de la revue du marché et sur toutes les périodes de temps de chaque symbole, je n'attends que la première exécution. Seconds pendant cinq secondes pour échanger l'historique manquant par symbole et par période. Après cela, tout fonctionne rapidement et sans délai.

Et laissez-moi vous dire un secret, si vous commencez à écrire correctement des programmes en mql4, vous aurez presque autant de code qu'en mql5. Les gars se sont habitués à l'idée qu'une fois que vous avez les données, vous pouvez immédiatement les intégrer dans des calculs, en oubliant de vérifier complètement : qu'est-ce que j'ai là ? Et s'ils se trompent, ils doivent traiter un tel résultat, et non le mettre dans des calculs. C'est à partir de cette approche négligente de la programmation que les gens commencent à demander sur tous les forums comment mettre à jour l'indicateur de façon permanente, parce qu'il montre toujours des choses étranges, et que seul le renouvellement manuel du graphique ou la recompilation du code de l'indicateur ramène ses lectures à une forme acceptable. Avez-vous déjà vu une telle demande pour une telle béquille ? Non ? Eh bien, je l'ai fait plusieurs fois. Mais dès que vous regardez le code, que vous ajoutez toutes les vérifications nécessaires, le code mql4 devient miraculeusement aussi gros que le code mql5, et il commence à fonctionner sans plantage et sans béquilles avec mise à jour forcée.

Ainsi, la plupart de ces plaintes concernant "l'horrible mql5" ne sont que des plaintes de non-programmeurs qui, pendant leur temps libre, ont créé leur propre petit outil à partir de morceaux épars collectés sur le réseau. Et dès que ces personnes ont été empêchées de faire circuler tranquillement leur travail aux masses, elles ont crié - oh, comme tout est compliqué. Ce n'est pas compliqué. Ceux qui avaient écrit correctement sur les quatre, n'ont pas remarqué la différence. Juste les fonctions supplémentaires.

Donc je suis tout à fait pour. Rien pour remplir l'espace avec du code qui ne fonctionne pas.

 
xxz:

Le problème est que si l'optimisation est presque 4 fois plus lente, et si vous n'avez que des fichiers eX5 alors ils se bloquent probablement, sans aucune possibilité d'écrire du code pour interrompre la passe d'optimisation !!!

Le même problème avec le rendu des ordres en attente, et si la stratégie est basée sur eux, alors kaput....

Des preuves. Veuillez fournir une preuve comparative ici. Le même code multiplateforme et ses résultats d'optimisation. Les mêmes paramètres avec les mêmes réglages - les résultats d'optimisation sur quatre, et les résultats d'optimisation sur cinq - temps passé sur toutes les passes d'optimisation. Sans tout cela, vos mots ne sont qu'une ébauche.

 
Artyom Trishkin:

Je travaille sur un simple ordinateur portable. Il ne peut jouer à aucun jeu en qualité normale. Et il n'y a que 5 Go de mémoire. Et c'est suffisant pour que je puisse travailler sur mes projets à 5 tous les jours. Et d'une certaine manière, ça ne ralentit pas comme vous le prétendez. Même en faisant un indicateur qui prend des données sur tous les symboles de la revue du marché et sur toutes les périodes de temps de chaque symbole, je n'attends que la première exécution. Seconds pendant cinq secondes pour échanger l'historique manquant par symbole et par période. Après cela, tout fonctionne rapidement et sans délai.

Et laissez-moi vous dire un secret, si vous commencez à écrire correctement des programmes en mql4, vous aurez presque autant de code qu'en mql5. Les gars se sont habitués à l'idée qu'une fois que vous avez les données, vous pouvez immédiatement les intégrer dans des calculs, en oubliant de vérifier complètement : qu'est-ce que j'ai là ? Et s'ils se trompent, ils doivent traiter un tel résultat, et non le mettre dans des calculs. C'est à partir de cette approche négligente de la programmation que les gens commencent à demander sur tous les forums comment mettre à jour l'indicateur de façon permanente, parce qu'il montre toujours des choses étranges, et que seul le renouvellement manuel du graphique ou la recompilation du code de l'indicateur ramène ses lectures à une forme acceptable. Avez-vous déjà vu une telle demande pour une telle béquille ? Non ? Eh bien, je l'ai fait plusieurs fois. Mais dès que vous regardez le code, que vous ajoutez toutes les vérifications nécessaires, le code mql4 devient miraculeusement aussi gros que le code mql5, et il commence à fonctionner sans plantage et sans béquilles avec mise à jour forcée.

Ainsi, la plupart de ces plaintes concernant "l'horrible mql5" ne sont que des plaintes de non-programmeurs qui, pendant leur temps libre, ont créé leur propre petit outil à partir de morceaux épars collectés sur le réseau. Et dès que ces personnes ont été empêchées de faire circuler tranquillement leur travail aux masses, elles ont crié - oh, comme tout est compliqué. Ce n'est pas compliqué. Ceux qui avaient écrit correctement sur les quatre, n'ont pas remarqué la différence. Juste les fonctions supplémentaires.

Donc je suis tout à fait pour. Rien pour remplir l'espace avec du code qui ne fonctionne pas.

Nous avons compris que l'essentiel n'est pas de souligner le manque de concision du langage comme dans le mql4.

DayOfWeek_p=DayOfWeek();

MqlDateTime str1;
TimeToStruct(TimeCurrent(),str1);
DayOfWeek_p=str1.day_of_week;
 
Artyom Trishkin:

...

Donc je suis tout à fait pour. Il n'y a rien pour remplir l'espace avec du code qui ne fonctionne pas.


Exactement ! Refaites vous-mêmes - devenez un programmeur professionnel ! Si vous ne pouvez pas devenir un professionnel - sortez d'ici !))

ZS. Je veux dire la convivialité. C'est hors normes.))

 
Реter Konow:


Exactement ! Refaites-vous une image - devenez un programmeur professionnel ! Si vous ne pouvez pas devenir un professionnel - sortez carrément d'ici).

C'est à moi que tu parles ? Merci, c'est drôle.

 
Artyom Trishkin:

C'est à moi que tu parles ? Merci, c'est drôle.

Je veux dire la position vis-à-vis des utilisateurs. C'est un peu dur. Est-ce une sélection naturelle ? Comme si vous étiez un faible codeur et que vous ne compreniez pas mql5 ? - Vous n'avez pas votre place parmi nous, professionnels. Prenez votre... votre travail et sortez d'ici.