Besoin d'aide de la part des développeurs et programmeurs MT4

 

Bonjour.

Les nouvelles versions du terminal MT4 ne désinitialisent pas et ne réinitialisent pas les EA lorsque l'utilisateur modifie les valeurs des paramètres d'entrée. Cela conduit à une incompatibilité fondamentale des EAs existants avec les nouvelles versions de MT4. L'incompatibilité se produit dans les EA les plus optimisés où tous les calculs uniques sont placés dans le bloc init().

On en arrive même au ridicule : pour garantir le remplacement de la valeur d'un paramètre d'entrée, l'utilisateur doit retirer le conseiller expert du graphique et le remettre en place. (Je n'ai pas essayé de charger les paramètres d'un fichier SET à l'aide d'un bouton, mais je soupçonne que cela équivaut à remplacer les valeurs des paramètres manuellement).

Je demande instamment aux développeurs de MT4 de ramener l'appel des fonctions deinit(), init() au bon sens.

Sincèrement.

PS Si quelqu'un connaît le mécanisme de détermination programmatique du moment et du fait de la modification des valeurs des paramètres d'entrée par l'utilisateur, veuillez l'écrire ici.

 
au moins montrer le fusil comme preuve.
 

Version : 4.00 Build 670

(4 juillet 2014)

 
Wex:


Les nouvelles versions du terminal MT4 ne désinitialisent pas et ne réinitialisent pas les EA lorsque l'utilisateur modifie les valeurs des paramètres d'entrée. Cela entraîne une incompatibilité principale des EA existants avec les nouvelles versions de MT4. Les Expert Advisors les plus optimisés, où tous les calculs uniques sont placés dans le bloc init(), sont sujets à l'incompatibilité.

Je les ai. Construire 670. Vérifiez avec des imprimantes simples.
 
Wex:

Bonjour.

Les nouvelles versions du terminal MT4 ne désinitialisent pas et ne réinitialisent pas les EA lorsque l'utilisateur modifie les valeurs des paramètres d'entrée. Cela conduit à une incompatibilité fondamentale des EAs existants avec les nouvelles versions de MT4. L'incompatibilité se produit dans les EA les plus optimisés où tous les calculs uniques sont placés dans le bloc init().

Cela devient même ridicule : afin de garantir le remplacement de la valeur d'un paramètre d'entrée, l'utilisateur doit retirer le conseiller expert du graphique et le remettre en place. (Je n'ai pas essayé de charger les paramètres d'un fichier SET à l'aide d'un bouton, mais je soupçonne que cela équivaut à remplacer les valeurs des paramètres manuellement).

Je demande instamment aux développeurs de MT4 de ramener l'appel des fonctions deinit(), init() au bon sens.

Sincèrement.

PS Si quelqu'un connaît le mécanisme de détermination programmatique du moment et du fait de la modification des valeurs des paramètres d'entrée par l'utilisateur, veuillez l'écrire ici.

Il s'agit d'un stratagème des teneurs de marché :-7 pour dévaloriser les EA établies.
 
IvanIvanov:
Il s'agit d'un stratagème des teneurs de marché :-7 pour dégonfler les conseillers établis.
+
 
N'est-il pas possible de réécrire l'EA?
 

PS. (Je n'ai pas l'air d'être très doué pour les virelangues sur le forum). EA ci-joint. Essayez de changer la valeur du paramètre A1 ou A2 à la volée. Le temps "passe" et l'EA ne "voit" pas les nouvelles valeurs des paramètres. Cependant, vous pouvez l'initialiser en appuyant deux fois sur le bouton "AutoTrading". Bien sûr, c'est plus rapide que de retirer l'EA du graphique et de le réinstaller. Cependant, c'est en quelque sorte illogique. Cependant, c'est à vous de décider.

Bien sûr, il m'est beaucoup plus facile d'apporter des modifications dans mon conseiller expert que d'attendre au bord de la mer. Par conséquent, je poserai une fois de plus une simple question. Quelqu'un sait-il comment obtenir des informations sur un utilisateur qui a modifié la valeur d'un paramètre d'entrée à la volée ? Je veux dire le fait que la valeur a changé et le moment dans le temps.

Les nouvelles versions du terminal MT4 sont vraiment meilleures que les anciennes. Dans ce cas, la valeur du paramètre est modifiée lors de l'exécution de la fonction Sleep(). C'est un progrès, en effet. Les anciennes versions ne permettaient pas de changer les valeurs du tout, ou plutôt ne permettaient même pas à l'utilisateur d'obtenir la fenêtre avec les paramètres d'entrée. J'ai dit aux clients qu'ils devaient d'abord désactiver les EA à l'aide du bouton situé sur le panneau du terminal, modifier leurs paramètres, puis réactiver les EA. Mais maintenant l'utilisateur n'a aucun obstacle, il a l'illusion que les paramètres d'entrée ont été modifiés. De plus, le nouvel exemple montre que non seulement les copies obtenues dans le bloc init(), mais aussi les paramètres d'entrée originaux ne sont pas modifiés dans le Conseiller Expert, mais qu'ils sont modifiés dans la fenêtre des propriétés sur l'onglet Entrées. La divergence est évidente.

Dossiers :
PROBLEM.mq4  2 kb
 
Wex:

PS. (Je n'ai pas l'air d'avoir beaucoup de tordus de la langue sur le forum. EA ci-joint. Essayez de changer la valeur du paramètre A1 ou A2 à la volée. Le temps "passe" et l'EA ne "voit" pas les nouvelles valeurs des paramètres. Cependant, vous pouvez l'initialiser en appuyant deux fois sur le bouton "AutoTrading". Bien sûr, c'est plus rapide que de retirer l'EA du graphique et de le réinstaller. Cependant, c'est en quelque sorte illogique. Cependant, c'est à vous de décider.

Bien sûr, il est beaucoup plus facile pour moi d'apporter des modifications dans mon conseiller expert que d'attendre au bord de la mer. Par conséquent, je poserai une fois de plus une simple question. Quelqu'un sait-il comment obtenir des informations sur un utilisateur qui a modifié la valeur d'un paramètre d'entrée à la volée ? Je veux dire le fait de changer la valeur et le moment dans le temps.

Vraiment, les nouvelles versions du terminal MT4 sont bien meilleures que les anciennes. Dans ce cas, la valeur du paramètre est remplacée lors de l'exécution de la fonction Sleep(). C'est un progrès, bien sûr. Les anciennes versions ne permettaient pas de changer les valeurs du tout, ou plutôt ne permettaient même pas à l'utilisateur d'obtenir la fenêtre avec les paramètres d'entrée. J'ai dit aux clients qu'ils devaient d'abord désactiver les EA à l'aide du bouton situé sur le panneau du terminal, modifier leurs paramètres, puis réactiver les EA. Mais maintenant l'utilisateur n'a aucun obstacle, il a l'illusion que les paramètres d'entrée ont été modifiés. De plus, le nouvel exemple montre que non seulement les copies obtenues dans le bloc init(), mais aussi les paramètres d'entrée originaux ne sont pas modifiés dans le Conseiller Expert, mais qu'ils sont modifiés dans la fenêtre des propriétés sur l'onglet Entrées. La divergence est évidente.

Et avez-vous essayé d'utiliser les raisons de désinitialisation?

UninitializeReason()
REASON_PARAMETERS

Peut-être que je lisais en diagonale... Mais j'utilise...

 
Wex:

PS. (Je n'ai pas l'air d'avoir beaucoup de tordus de la langue sur le forum. EA ci-joint. Essayez de changer la valeur du paramètre A1 ou A2 à la volée. Le temps "passe" et l'EA ne "voit" pas les nouvelles valeurs des paramètres. Cependant, vous pouvez l'initialiser en appuyant deux fois sur le bouton "AutoTrading". Bien sûr, c'est plus rapide que de retirer l'EA du graphique et de le réinstaller. Cependant, c'est en quelque sorte illogique. Toutefois, c'est à vous de décider.

Bien sûr, il m'est beaucoup plus facile d'apporter des modifications dans mon conseiller expert que d'attendre au bord de la mer. Par conséquent, je poserai une fois de plus une simple question. Quelqu'un sait-il comment obtenir des informations sur un utilisateur qui a modifié la valeur d'un paramètre d'entrée à la volée ? Je veux dire le fait que la valeur a changé et le moment dans le temps.

Les nouvelles versions du terminal MT4 sont vraiment meilleures que les anciennes. Dans ce cas, la valeur du paramètre est modifiée lors de l'exécution de la fonction Sleep(). C'est un progrès, en effet. Les anciennes versions ne permettaient pas de changer les valeurs du tout, ou plutôt ne permettaient même pas à l'utilisateur d'obtenir la fenêtre avec les paramètres d'entrée. J'ai dit aux clients qu'ils devaient d'abord désactiver les EA à l'aide du bouton situé sur le panneau du terminal, modifier leurs paramètres, puis réactiver les EA. Mais maintenant l'utilisateur n'a aucun obstacle, il a l'illusion que les paramètres d'entrée ont été modifiés. De plus, le nouvel exemple montre que non seulement les copies obtenues dans le bloc init(), mais aussi les paramètres d'entrée originaux ne sont pas modifiés dans le Conseiller Expert, mais qu'ils sont modifiés dans la fenêtre des propriétés sur l'onglet Entrées. La divergence est évidente.

Le même code, mais sans la boucle dans start() fonctionne bien. Ce doit être le problème.
Dossiers :
PROBLEM.mq4  2 kb
 
Wex:

PS. (Je n'ai pas l'air de faire beaucoup de bruit sur le forum.


Tout à fait.

1. Le langage MQL4 est dédié à un forum spécial. Pas celui-là.

2. Vous n'avez pas lu la documentation de MQL4, qu'elle soit ancienne ou nouvelle.

Raison: