Test du nouveau compilateur MQL5 pour les plateformes x64 - calculs 2 à 10 fois plus rapides ! - page 11

 
Prival-2:

Personnellement, je le fais. Et j'ai renoncé à utiliser MT4/5 il y a longtemps. Il existe d'autres solutions supérieures d'un ordre de grandeur à tout ce qui est mis en œuvre ici. Je les ai montrés ici et je vous en ai parlé. Mes algorithmes qui traitent sur le compte réel ne sont pas fictifs, ils sont rentables, réels, bons et stables (leur efficacité est disponible ici sur le forum, si vous voulez la rechercher). Ils ne peuvent pas être mis en œuvre dans MT4/5, alors bonne chance à vous, je n'ai pas besoin de chance car ce n'est pas la chance qui gagne sur le marché ...

Il veut probablement dire "Ninja" sur le forum, c'est pourquoi il traîne avec Ninja. Mais là encore, soit il n'y a aucune logique dans ce que dit Privalov, soit il déforme intentionnellement la situation.

Et la situation est la suivante.

= vous pouvez également créer votre propre système de trading dans des terminaux de trading alternatifs, mais cela vous coûtera beaucoup plus cher. Le prix du programme lui-même commence à 1000 USD une fois ou 60 USD par mois, et les devis coûteront de 200 USD par mois à 2000 USD par mois. Les courtiers y proposent des comptes de démonstration, mais seulement pour 30 jours. Tout le monde contourne ce problème d'une manière ou d'une autre, mais après la liberté de MT4-MT5, cela semble un peu fou. Si vous êtes un trader, vous devez compter votre argent.

= La création d'un système de négociation dans un autre terminal prendra beaucoup plus de temps, en raison de toutes sortes d'interfaces et de tampons, comme le .NET à moitié mutilé, entre le langage intégré du terminal, les fonctions du système et certaines DLL scientifiques propres ou de quelqu'un d'autre.

= pour les tests et l'optimisation, par exemple Ninja convient également, mais veuillez noter que la vitesse y sera des dizaines de fois plus lente que dans MT4-MT5 - pour diverses raisons : dans .NET, le support de l'accélération SSE2 est apparu relativement récemment, le compilateur lui-même fonctionne beaucoup moins bien que MQL4-MQL5. Vous devez en outre apprendre .NET, le langage C# et ses fonctions ZILLIARD, ce qui n'est pas à la portée de tout le monde et prend des mois. En fait, .NET est une réponse marketing à Java, pour lequel ils ont stupidement attiré Anders Hejlsberg, le principal développeur de Delphi chez Borland. Et voici le résultat - oui, les fenêtres dans Ninji peuvent être un peu plus belles que dans MT4-MT5, mais presque TOUT le reste, y compris la vitesse, est problématique.

= Même la date sur la carte à Ninji ne peut pas être faite par le standard local. Leur support technique écrit aux gens - "et tout fonctionne pour nous !". Ma date dans Ninja est également de travers (en norme américaine) et il n'y a AUCUN moyen de la réparer. C'est ennuyeux et frustrant.

= En fait, Ninja n'a jusqu'à présent qu'un seul avantage technique : si vous voulez négocier uniquement des contrats à terme, en restant assis devant votre écran 10 à 12 heures par jour et en n'utilisant PAS plus de 5 à 10 graphiques, alors Ninja peut être légèrement meilleur. Mais dans presque tout le reste (technique et pour le développement), la comparaison sera toujours en faveur de MT4-MT5 - en termes de vitesse, de rapidité de développement des programmes et de support technique.

L'assistance technique ne vaut même pas la peine d'être comparée à celle de MT4-MT5.

= En ce qui concerne la prise en charge de C# et de .NET, Microsoft est en dessous de la base, comme d'habitude. Vous attendrez pendant des ANNÉES des corrections, ou au moins une clarification. J'ai l'indispensable .NET 3.5 pour Ninji, et il ne veut pas s'installer sur le même ordinateur. Simple et stupide. Des centaines de personnes ont le même bogue, et elles le signalent toutes à Microsoft sur leur blog dédié. Cela fait environ 6 ans que ça dure. Microsoft ne sait pas ce qui ne va pas et c'est tout, ils disent qu'ils ne connaissent même pas un tel numéro de bug.

= En ce qui concerne la mesure dans laquelle la société prend en charge son langage et son terminal NinjaScript, certaines choses sont tout simplement cryptiques : la société écrit carrément "non pris en charge" sur le forum. Par exemple, ils n'ont pas de mode portable, l'installation du terminal ailleurs est problématique. Par exemple, ils n'ont même pas de TICKVALUE - ce qui signifie que vous ne pouvez pas définir la taille de la position automatiquement (en % du solde), vous devez le faire manuellement ou écrire un programme par vous-même (assez compliqué). En d'autres termes, il s'agit d'un mode de négociation manuel sans gestion de l'argent.

= Ninja a un nombre inimaginable de petits pépins non mortels, même dans l'interface visuelle. Pour les éliminer radicalement, une nouvelle version 8.0 a été annoncée. On l'attend depuis plus de deux ans, mais il est toujours absent.

= En ce qui concerne la vitesse de compilation et la fiabilité du compilateur (MQL4), je pense que MT4 n'a pas d'égal dans le domaine du trading.

C'est donc ce que demande Privalov ici - personnellement, je ne le comprends pas du tout. Oui, tous les principaux inconvénients des autres terminaux de trading peuvent être contournés. Mais cela demandera des mois de travail et déformera la pensée du trader, car nous devrons faire face à la logique martienne des développeurs C# et .NET, ou à la logique d'un développeur inconnu. Les terminaux MT4-MT5 présentent également des inconvénients. Mais la vitesse de développement et le coût élevé d'un tel développement pour un trader - d'autres terminaux doivent encore voir un long chemin vers MT4-MT5.

 
L'"erreur de génération de code" en mode Optimize=1, après la mise à niveau vers la build 1114, demeure.
 
Anatoli Kazharski:
L'"erreur de génération de code" en mode Optimize=1, après la mise à niveau vers la version 1114, demeure.
Comment se reproduire ?
 
Alexander:
Comment se reproduire ?
Je fais une recherche. Jusqu'à présent, aucune localisation n'a été possible.
 
Alexander:
Comment se reproduire ?

Le problème se situe dans la fonctionColorToARGB() :

//+------------------------------------------------------------------+
//|                                                        #Test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.0"
#include <Canvas\Canvas.mqh>
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CCanvas canvas;
   if(!canvas.CreateBitmapLabel("TestCanvas",0,0,100,100,COLOR_FORMAT_ARGB_RAW))
     {
      Print("Error creating canvas: ",GetLastError());
      return;
     }
//---
   canvas.Erase(clrBlack);
   canvas.Update();
//---
   canvas.Line(0,0,100,100,ColorToARGB(clrWhite)); // <<< code generation error
  }
 
Anatoli Kazharski:

Le problème se situe dans la fonctionColorToARGB() :

Merci, reproduit.
 

Quand Optimize=1, le test simple de l 'EA (sans optimisation des paramètres) dans le testeur a une erreur

DP      2       12:15:12.565    test    2015.01.01 00:00:00   invalid EX5 file (12)
QI      2       12:15:12.565    Tester  global initialization failed
FR      2       12:15:12.565    Tester  global initialization critical error
GG      2       12:15:12.565    Tester  tester stopped because expert initialization failed
Si Optimize=0, tout est testé normalement, sans erreurs.

Problème similaire lors de l'ajout d'un EA à un graphique.

Win7 x86, MT5 build 1114

Source (modèle ME vide)

//+------------------------------------------------------------------+
//|                                                         test.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   
  }
//+------------------------------------------------------------------+
//| Tester function                                                  |
//+------------------------------------------------------------------+
double OnTester()
  {
//---
   double ret=0.0;
//---

//---
   return(ret);
  }
//+------------------------------------------------------------------+
 
Dmitriy Parfenovich:

Quand Optimize=1, le test simple de l 'EA (sans optimisation des paramètres) dans le testeur a une erreur

Si Optimize=0, tout est testé normalement, sans erreurs.

Problème similaire lors de l'ajout d'un EA à un graphique.

Win7 x86, MT5 build 1114

Source (modèle ME vide)

Merci pour la référence, reproduite
 
Renat Fatkhullin:

La réponse a été donnée plus d'une douzaine de fois.

La durée de vie technologique de MT4 est terminée. Et si vous continuez à ne rien faire, c'est votre propre faute si vous perdez des opportunités. Ce n'est la faute de personne d'autre, mais uniquement la vôtre, y compris celle de vos courtiers.

Si vous pensez que quelqu'un est obligé de maintenir les anciens systèmes simplement parce que quelque chose ne veut pas en sortir, alors vous comprenez très mal les principes de ce monde (ils sont différents de la façon dont un individu voit le monde). Malheureusement, la masse des traders s'est tellement convaincue de MT4 que c'est ridicule à regarder. Il est tellement évident que les gens sont ennemis d'eux-mêmes que cela ne peut être expliqué par des raisons rationnelles.

Je continue à m'asseoir sur MT4 et voici pourquoi.

1. Accélérer les calculs, c'est bien. Mais pourquoi ai-je besoin de ces calculs sur un spread irréel ? J'ai résolu le problème de la coupure du spread sur MT4, mais je ne sais pas quoi faire avec le spread dans le testeur MT5. Cela fait plus d'un an que j'ai suggéré d'introduire la fenêtre de spread comme dans MT4. D'accord, les paires de devises n'ont pas beaucoup souffert. Mais tester l'indice RTS avec un écart de 50-100 est une perversion ! L'écart réel est de 10-20 !!!!!!!!!!

2. Citez-moi au moins un courtier sur MT5 pour le forex ayant une réputation normale. Pourquoi LMAX, RVD, FXCM, DucasCopy etc. n'achètent-ils pas le merveilleux MT5 ?

J'ai un bon courtier mt5, mais je ne veux pas trader dans des conditions inférieures. 3.

3) Aucune envie de s'occuper des petits détails ? Si vous voulez faire un service sur MT5, qui permettra de charger n'importe quel cours au format MT4 avec un écart donné, alors je serai le premier à estimer la vitesse du nouveau compilateur !

 
Dmitiry Ananiev:

Je continue à m'asseoir sur MT4 et voici pourquoi.

1. Accélérer les calculs, c'est bien. Mais pourquoi ai-je besoin de ces calculs sur un spread irréel ? J'ai résolu le problème de la coupure du spread sur MT4, mais je ne sais pas quoi faire avec le spread dans le testeur MT5. Cela fait plus d'un an que j'ai suggéré d'introduire la fenêtre de spread comme dans MT4. D'accord, les paires de devises n'ont pas beaucoup souffert. Mais tester l'indice RTS avec un écart de 50-100 est une perversion ! L'écart réel est de 10-20 !!!!!!!!!!

Le spread dans MT5 est écrit dans chaque barre M1, il n'est donc pas nécessaire de transférer les méthodes de MT4 à MT5. La situation est bien meilleure avec les spreads dans MT5.


2. Citez-moi au moins un courtier en forex MT5 ayant une bonne réputation. Pourquoi LMAX, RVD, FXCM, DucasCopy etc. n'achètent-ils pas un excellent MT5 ?

LMAX a MT4, RVD aussi, FXCM a lancé MT5, et Dukas va jouer dans une course technologique jusqu'à la dernière minute avec un résultat connu.

Vous ne pensez pas que les courtiers sont parfaits et prennent des décisions exceptionnellement saines et raisonnables, n'est-ce pas ? Ce ne sont que des entreprises ordinaires avec tous leurs défauts.


J'ai de très bons courtiers sur MT5, mais je ne veux pas négocier dans des conditions qui sont connues pour être pires.

Le fait est que les conditions de trading financier sur MT5 sont souvent bien meilleures que sur MT4. Et MT5 possède des caractéristiques techniques et des caractéristiques de vitesse plus nombreuses et meilleures pour les traders.


Si vous ne voulez pas vous occuper de petits détails ? Créez un service dans MT5, afin de pouvoir charger n'importe quelle cotation dans MT4. avec un spread donné et je serai le premier à estimer la vitesse du nouveau compilateur !

Nous avons différents niveaux d'informations réelles.

Vous feriez mieux d'admettre que vous n'avez pas utilisé ou testé les capacités de MT5 dans la réalité. D'où la référence constante aux capacités intrinsèquement plus faibles de MT4 et les tentatives de transférer les approches de MT4 à MT5. Mais il suffit d'essayer la même chose dans MT5 pour ne plus jamais revenir à MT4.