Erreurs, bugs, questions - page 813

 
VNIK:
Autre possibilité : créez un nouveau fil de discussion dans la section Systèmes de négociation avec un lien vers le fil existant et continuez là.

Merci. Je pense à... la même chose... comme la partie 1, la partie 2.

Peut-être que quelqu'un de plus méritant aimerait le faire... :-)

 
Rosh:
Malheureusement, cette option n'existe pas.
Pourquoi l'avez-vous cassé ? C'était le cas avant. Après l'apparition de Trading Systems, quelques sujets y ont été déplacés.
 
J'ai voté dans le forum en utilisant Google Chrome avec la traduction en ligne, puis je suis passé à Firefox (je l'utilise toujours) et je peux à nouveau voter dans le même fil de discussion, est-ce un problème de navigateur ou un bug du site ?
 

Question pour les experts en macro-substitution...

Dans le script :

double plot1[],plot2[],plot3[];

#define macr(i) ploti
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   for(int i=0;i<3;i++)
     ArrayResize(macr(i),100);
  }

J'ai besoin de substituer plot1, plot2 et plot3 au lieu de macr(i) dans la boucle for ... Selon ma version, la substitution est comme ploti, ce qui n'est pas du tout nécessaire :-(

Merci d'avance !
 
Ça ne marchera pas. Le préprocesseur MQL5 ne supporte pas la concaténation de tokens via ##. Vous pourriez écrire une suggestion à Servicedesk. Ou utilisez un tableau à deux dimensions au lieu de plusieurs tableaux à une dimension.
 
denkir:

...

J'ai besoin que plot1, plot2 et plot3 soient substitués à macr(i) dans la boucle for ... Selon ma version, la substitution se fait par ploti, ce qui n'est pas du tout nécessaire :-(

Merci d'avance !
Et si vous essayiez de le faire avec un tableau de pointeurs ?
 
Question. Dans l'article Migration de MQL4 à MQL5 dans le tableau "18. Access to Timeseries" dans la rubrique "MQL5", l'auteur utilise un tableau sans dimension Arr[] à l'intérieur des fonctions. Je vois que la fonction renvoie toujours une seule valeur de l'élément zéro du tableau. Quelqu'un sait-il s'il y a un sens caché à utiliser un tableau sans dimension au lieu de Arr[1] ? L'aide indique que, connaissant la taille du tableau, il vaut mieux spécifier ce nombre d'éléments.
 
paladin800:
Question. Dans l'article Migration de MQL4 vers MQL5, le "18. Access to Timeseries" dans la rubrique "MQL5", l'auteur utilise un tableau sans dimension Arr[] à l'intérieur des fonctions. Je vois que la fonction renvoie toujours une seule valeur de l'élément zéro du tableau. Quelqu'un sait-il s'il y a un sens caché à utiliser un tableau sans dimension au lieu de Arr[1]? Ils écrivent dans l'aide que, connaissant la taille du tableau, il faut préciser le nombre d'éléments.

Il y en a.

Dans MQL5, ce tableau est passé en argument aux fonctions qui gèrent sa taille selon leur propre logique,

En d'autres termes, ils redistribuent automatiquement la taille en fonction des paramètres passés : point de départ et quantité de données à copier.

Si vous passez un tableau statique comme argument à la fonction CopyXXX, vous obtiendrez une erreur.

ZZZ Le code vérifie la taille du tableau et prend ensuite une décision en fonction de la taille, donc la taille n'est probablement pas statique.

 

Dans les paramètres externes de l'EA, j'utilise uniquement le paramètre R = 1 ou 2 ou 12 ou 13 (exemple général simple). Vous pouvez vérifier l'exactitude de ce paramètre dans OnInit() et, si un citoyen a saisi un autre numéro par erreur, signaler une erreur. Cependant, il existe des types ENUM_... pour l'entrée. (par exemple ENUM_MA_METHOD), alors que nous pouvons simplement sélectionner une valeur dans la fenêtre étendue.

Question. Existe-t-il une option où il est possible de réaliser une telle construction, de sorte que dans les paramètres externes par analogie avec le ENUM_... n'apparaissent que ce que le programmeur a voulu, sans avoir besoin de vérifier OnInit(). Je ne l'ai pas trouvé dans la documentation. Si non, le souhait est de faire une telle chose.

Общайтесь с разработчиками через Сервисдеск!
Общайтесь с разработчиками через Сервисдеск!
  • www.mql5.com
Ваше сообщение сразу станет доступно нашим отделам тестирования, технической поддержки и разработчикам торговой платформы.
 
paladin800:

Question. Existe-t-il une option permettant de réaliser une telle construction, de sorte que dans les paramètres externes, par analogie avec ENUM_... n'apparaissent que ce que le programmeur a voulu, sans avoir besoin de vérifier OnInit(). Je ne l'ai pas trouvé dans la documentation. Si ce n'est pas le cas, veuillez créer une telle chose.

Veuillez expliquer en d'autres termes. Je ne comprends pas ce que je veux dire.