Version bêta de l'IDE MetaTrader 4 comprenant un nouveau compilateur et un nouvel éditeur MQL4 - page 13

 

L'éditeur doit être capable de traiter le texte du programme non seulement en C, mais aussi en Assembleur. Si la compilation au moyen du compilateur ordinaire n'est pas mise en œuvre, vous pouvez permettre l'utilisation d'un compilateur externe. Eh bien, s'il n'y aura pas de compilation, alors faites au moins la coloration du texte (par exemple, comme dans le plugin-e FarColorer à Far Manager, voir figure) (les couleurs doivent être configurables).

 
zdd:

L'éditeur doit être capable de travailler avec le texte du programme non seulement en C, mais aussi en Assembleur. Si la compilation au moyen du compilateur ordinaire n'est pas mise en œuvre, vous pouvez permettre l'utilisation d'un compilateur externe. Eh bien, s'il n'y aura pas de compilation, alors faites au moins la coloration du texte (par exemple, comme dans le plugin-e FarColorer à Far Manager, voir figure) (les couleurs doivent être configurables).

Nostalgie de MS DOS ?
 
artmedia70:
Nostalgique de MS DOS ?
ZEUS sur ZX
 

Une autre version de la bêta de l'IDE a été téléchargéeà l'ancienne adresse.

Ce qui est nouveau :

1. Perception correcte des valeurs des énumérations avec les mêmes noms dans MQL4/MQL5 (cependant, les membres des énumérations MQL4 peuvent avoir des valeurs différentes des mêmes membres de ces énumérations dans MQL5)

2. Puisque dans le terminal client MT4 des graphiques autonomes avec n'importe quelle période sont possibles, la variable _Period dans MQL4 n'est pas de type enum et la fonction Period() ne retourne pas le type enum. Au lieu du type ENUM_TIMEFRAME, le type int est utilisé. De même, toutes les fonctions du système MQL4 qui acceptent une valeur de délai comme paramètre, l'acceptent comme type int.

Correction du traitement des appels de certaines fonctions de même nom dans MQL4/MQL5, mais avec des paramètres différents.

4. Ajout de la fonction MQL4 FileOpenHistory

Un avertissement est généré en cas d'utilisation simultanée de AND et OR logiques dans une même expression et sur le même niveau. En raison des changements dans les priorités des opérations logiques dans MQL4. Cet avertissement est généré à la fois dans MQL4 et MQL5, de la même manière que dans le Lint standard.

 
Stringo :

L'ancienne adresse est Laid out the next beta version of the IDE.

Ce qui est nouveau :

1. Valeur correctement perçue des transferts de même nom pour MQL4/MQL5 (dans ce cas les membres des transferts MQL4 peuvent différer en valeur des mêmes noms que les membres de ces transferts dans MQL5)

En raison du fait que le terminal client MT4 permet des graphiques autonomes avec n'importe quelle période de temps, dans MQL4 la variable _Period n'est pas le type enum, et la fonction de Period () ne retourne pas le type enum. Au lieu du type utilisé ENUM_TIMEFRAME type int. De même, toutes les fonctions du système MQL4, prenant la valeur timeframe comme paramètre, la prennent comme un int.

Correction de la gestion des appels de certaines fonctions du même nom dans MQL4/MQL5, mais avec des paramètres de composition différents.

4. Ajout de la fonction MQL4 FileOpenHistory

5. Un avertissement lors de l'utilisation des logiques AND et OR dans la même expression, et sur le même niveau. En raison de l'évolution des priorités des opérations logiques dans MQL4. L'avertissement est présent dans MQL4, et MQL5, tout comme le standard Lint

Le fichier ne peut pas être téléchargé.
 
angevoyageur:
Le fichier ne peut pas être téléchargé.
Correction de
 
1. Le menu Fenêtre dispose d'une fonction "Nouvelle fenêtre" qui, d'après ce que j'ai compris, est censée fonctionner dans un fichier en même temps à différents endroits.

Но это функция не работает. Второе окно открывается. Переходишь к нужному месту, а по возврату в первое окно, оно прокручивается к тому же месту, что и второе.

Cette fois encore, deux fenêtres affichent la même chose.

2. Je suggère que nous changions l'ordre (tri par priorité) de sortie des messages lors de la compilation. Chaque fois que nous compilons, nous devons faire défiler la liste parce qu'il y a des lignes comme 'stderror.mqh', 'stdlib.mqh' en haut.

Je préférerais voir d'abord les erreurs, puis les avertissements, et seulement après les messages informatifs et cognitifs.

3. Lorsqu'une erreur de syntaxe se produit pendant la compilation, allez directement à l'endroit où l'erreur s'est produite (ou à la première erreur s'il y en a plusieurs). Il est très pratique et implémenté dans tous les IDE professionnels.

Mais maintenant, nous devons faire défiler la liste des messages, cliquer deux fois sur l'erreur et seulement ensuite passer à la correction des erreurs.

4. je veux vraiment un Intellisense indépendant de la casse.

5. Ce serait bien si cette liste avait ses propres variables.

6. J'aimerais voir les paramètres du stylisateur, afin que vous puissiez personnaliser votre propre code de style.

7. Une petite chose, mais quand même. Dans le code, lorsque vous appuyez sur la touche Fin, il est logique d'aller jusqu'au dernier caractère de la ligne (code), même si après le code il y a encore beaucoup d'espaces en fin de ligne. Ceci est déjà mis en œuvre avec la touche Home.

8. Lors de la suppression de lignes vides avec la touche Del (pour faire remonter le code). D'abord, les espaces dans la ligne sont supprimés (même si la ligne est vide - sans code), et seulement ensuite la ligne elle-même sera supprimée. Il serait plus pratique que la ligne sans code soit supprimée immédiatement, quel que soit le nombre d'espaces qu'elle comporte. Juste pratique. Ou ajoutez une chaîne de suppression par raccourci clavier, comme Ctrl+L ou Ctrl+Y.


Y aura-t-il un débogueur pour MT4 ? Si tel est le cas, il serait bon d'ajouter une infobulle indiquant la valeur de la variable lorsque l'on place le curseur de la souris sur le nom de la variable. Ce serait très utile. Vous devez l'ajouter à WatchList chaque fois que vous en avez besoin.

Et mes suggestions ?
 
zdd:

L'éditeur doit être capable de travailler avec le texte du programme non seulement en C, mais aussi en Assembleur. Si la compilation au moyen du compilateur ordinaire ne sera pas mise en œuvre, vous pouvez permettre l'utilisation d'un compilateur externe. Eh bien, s'il n'y aura pas de compilation, alors faites au moins la coloration du texte (par exemple, comme dans le plugin-e FarColorer à Far Manager, voir figure) (les couleurs doivent être configurables).

Pourquoi c'est un assembleur de support ne le sera jamais, et si vous avez besoin d'un éditeur de texte avec la fonctionnalité qui vous intéresse, vous pouvez les trouver sur Internet en abondance,

pour tous les goûts et toutes les couleurs.

 

J'ai lu le fil de discussion, mais je n'ai pas trouvé la réponse à mes questions :

1. un fichier compilé avec la nouvelle version du compilateur fonctionnera-t-il plus rapidement ?

2. Sera-t-il possible de compiler le code par choix dans MT4 ou MT5, ou cela fonctionnera-t-il automatiquement dans MT5 ? Et si non, peut-être faire une aide à la compatibilité ?

3. Si je comprends bien, il y a un grand risque que l'ancien code ne soit pas compilé, ce qui est très frustrant pour moi :

3.1 Je ne suis pas un programmeur et il me sera impossible d'apporter de simples modifications au code s'il comporte des erreurs critiques dues à l'incompatibilité ;

3.2 Je vais devoir payer à nouveau les programmeurs pour le travail qu'ils ont déjà effectué, et c'est l'un des principaux inconvénients.

Il est donc peut-être judicieux de conserver l'ancien compilateur comme alternative de choix, puisque vous garantissez que les anciens fichiers compilés fonctionneront ?

Hors sujet, pourquoi est-il si difficile de passer à MT5, est-ce l'interface ou les fameuses locs ? Ou bien les DCs ne veulent-ils rien changer ?

Документация по MQL5: Программы MQL5 / Ошибки выполнения
Документация по MQL5: Программы MQL5 / Ошибки выполнения
  • www.mql5.com
Программы MQL5 / Ошибки выполнения - Документация по MQL5
 

1. Le compilateur a d'autres objectifs.

2. Ça n'arrivera pas. L'aide est déjà en partie là.

3. Vous avez déjà le code compilé, l'ancien compilateur que vous pouvez enregistrer vous-même sur votre ordinateur.

Raison: