Ce qui n'est pas intuitif, c'est que les tableaux de paramètres et de noms renvoient des tailles différentes, parce qu'il n'y a pas de paramètre null dans les noms, qui représente le nom du conseiller expert.
J'aimerais également connaître le type réel des paramètres, car "string" est renvoyé partout. Je ne sais pas comment le faire - de manière frontale : analyser le contenu de la chaîne et sa réductibilité à un nombre à virgule flottante ou à un entier, mais si le paramètre stocke "0", son type ne peut pas être identifié.
Ce qui n'est pas intuitif, c'est que les tableaux parameter et name renvoient des tailles différentes parce qu'il manque dans les names un paramètre null représentant le nom du conseiller expert.
Oui, ce n'est pas très agréable. Peut-être aurions-nous dû créer un faux élément null pour Names[].
J'aimerais également connaître le type réel des paramètres, car pour l'instant, c'est "string" qui est renvoyé partout. Je ne sais pas comment fournir cela - la façon de le faire frontalement : analyser le contenu de la chaîne et sa réductibilité à un nombre à virgule flottante ou à un entier, mais si le paramètre stocke "0", vous ne pouvez pas identifier son type.
J'ai considéré que ce n'était pas nécessaire dans la bibliothèque, car il y a toujours des ENUMs personnalisés. De plus, je n'ai pas vu de tâche où cela pourrait être nécessaire.
Je créais mon propre optimiseur automatique. Ce n'était pas utile dans ce cas.
Oui, ce n'est pas très joli. Peut-être auriez-vous dû créer un faux élément null pour Names[].
J'ai considéré que ce n'était pas nécessaire dans la bibliothèque, parce qu'il y a aussi des ENUMs personnalisés. De plus, je n'ai pas vu de tâche où cela pourrait être nécessaire.
Je créais mon propre optimiseur automatique. Il n'était pas utile dans ce cas.
Les fonctions ParameterGetRange/ParameterSetRange ne sont définies que pour les types long et double, de sorte que la boucle de paramètres ne doit analyser et modifier les paramètres que pour les nombres.
Les fonctions ParameterGetRange/ParameterSetRange ne sont définies que pour les types long et double, respectivement, la boucle sur les paramètres exige d'analyser et de modifier les paramètres uniquement pour les nombres.
C'est normal. Il n'est pas normal que tout soit désormais représenté par des chaînes de caractères et qu'il soit impossible de distinguer les vraies chaînes.
C'est normal. Il n'est pas normal que tout soit désormais représenté par des chaînes de caractères et qu'il soit impossible de trier les véritables chaînes.
Les paramètres à optimiser sont numérotés à l'avance. Il n'y a donc aucune chaîne de caractères parmi eux. On peut donc s'en servir comme d'un filtre.
Bonjour, je n'arrive pas à comprendre comment ouvrir sur un expert avec un trade autorisé
ce code s'ouvre normalement avec les entrées que je passe.
Params[0].string_value = "Experts\\Shared Projects\\luipaulo89\\experts\\PullbackEA_v2.ex5";
// Le premier paramètre d'entrée du conseiller expert
Params[1].type = TYPE_STRING;
Params[1].string_value = "Hello World!";
Params[2].type = TYPE_INT;
Params[2].integer_value = 0;
// Sur un nouveau graphique, lancer l'Expert Advisorif (inpFirst==1) EXPERT::Run(ChartOpen(_Symbol, _Period), Params);
Si j'utilise ce code
Params[0].string_value = "Experts\\Shared Projects\\luipaulo89\\experts\\PullbackEA_v2.ex5";
Params[0].string_value += "\nexpertmode=5";
// Le premier paramètre d'entrée du conseiller expert
Params[1].type = TYPE_STRING;
Params[1].string_value = "Hello World!";
Params[2].type = TYPE_INT;
Params[2].integer_value = 0;
// Sur un nouveau graphique, lancer l'Expert Advisorif (inpFirst==1) EXPERT::Run(ChartOpen(_Symbol, _Period), Params);
il s'ouvre avec le trade autorisé mais ne passe pas de paramètres.
La tâche est d'ouvrir le même Expert Advisor sur un nouveau graphique.
input group "EA Settings"inputint inpFirst = 1;//première instance ;
Pour que seul le premier Expert Advisor puisse en ouvrir de nouveaux, je passe 0 aux nouveaux, mais malheureusement, dans la deuxième variante (lorsque le commerce est autorisé), aucun paramètre n'est passé (ou passé de manière incorrecte).
Ce qui n'est pas intuitif, c'est que les tableaux de paramètres et de noms renvoient des tailles différentes, parce qu'il n'y a pas de paramètre null dans les noms, qui représente le nom du conseiller expert.
J'aimerais également connaître le type réel des paramètres, car "string" est renvoyé partout. Je ne sais pas comment le faire - de manière frontale : analyser le contenu de la chaîne et sa réductibilité à un nombre à virgule flottante ou à un entier, mais si le paramètre stocke "0", son type ne peut pas être identifié.
Ce qui n'est pas intuitif, c'est que les tableaux parameter et name renvoient des tailles différentes parce qu'il manque dans les names un paramètre null représentant le nom du conseiller expert.
Oui, ce n'est pas très agréable. Peut-être aurions-nous dû créer un faux élément null pour Names[].
J'aimerais également connaître le type réel des paramètres, car pour l'instant, c'est "string" qui est renvoyé partout. Je ne sais pas comment fournir cela - la façon de le faire frontalement : analyser le contenu de la chaîne et sa réductibilité à un nombre à virgule flottante ou à un entier, mais si le paramètre stocke "0", vous ne pouvez pas identifier son type.
J'ai considéré que ce n'était pas nécessaire dans la bibliothèque, car il y a toujours des ENUMs personnalisés. De plus, je n'ai pas vu de tâche où cela pourrait être nécessaire.
Je créais mon propre optimiseur automatique. Ce n'était pas utile dans ce cas.
Oui, ce n'est pas très joli. Peut-être auriez-vous dû créer un faux élément null pour Names[].
J'ai considéré que ce n'était pas nécessaire dans la bibliothèque, parce qu'il y a aussi des ENUMs personnalisés. De plus, je n'ai pas vu de tâche où cela pourrait être nécessaire.
Je créais mon propre optimiseur automatique. Il n'était pas utile dans ce cas.
Les fonctions ParameterGetRange/ParameterSetRange ne sont définies que pour les types long et double, de sorte que la boucle de paramètres ne doit analyser et modifier les paramètres que pour les nombres.
Les fonctions ParameterGetRange/ParameterSetRange ne sont définies que pour les types long et double, respectivement, la boucle sur les paramètres exige d'analyser et de modifier les paramètres uniquement pour les nombres.
Lestypes entiers sont bool, enums.
Lestypes entiers sont bool, enums.
C'est normal. Il n'est pas normal que tout soit désormais représenté par des chaînes de caractères et qu'il soit impossible de distinguer les vraies chaînes.
C'est normal. Il n'est pas normal que tout soit désormais représenté par des chaînes de caractères et qu'il soit impossible de trier les véritables chaînes.
Les paramètres à optimiser sont numérotés à l'avance. Il n'y a donc aucune chaîne de caractères parmi eux. On peut donc s'en servir comme d'un filtre.
Bonjour, je n'arrive pas à comprendre comment ouvrir sur un expert avec un trade autorisé
ce code s'ouvre normalement avec les entrées que je passe.
Si j'utilise ce code
il s'ouvre avec le trade autorisé mais ne passe pas de paramètres.
La tâche est d'ouvrir le même Expert Advisor sur un nouveau graphique.
Pour que seul le premier Expert Advisor puisse en ouvrir de nouveaux, je passe 0 aux nouveaux, mais malheureusement, dans la deuxième variante (lorsque le commerce est autorisé), aucun paramètre n'est passé (ou passé de manière incorrecte).
dans le fichier tpl, l'en-tête est créé parfaitement, mais pour une raison quelconque, il ne passe pas le paramètre
qui devrait être inpFirst=0
Mettre à jour la bibliothèque.
Tester le conseiller expert.
Exemple1.
Exemple2.