MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 38

 
Renat:

La conversation porte donc sur les variables, et non sur les graphiques. En outre, les graphismes sont excellents dans MT5 - vous pouvez faire n'importe quoi, jusqu'aux jeux d'ordinateur. Mt4 arrive aussi.

Comment transmettre dans un programme quelconque une centaine de paramètres qu'un utilisateur doit modifier lui-même à tout moment ? Uniquement avec un tableau des paramètres d'entrée. Cela ne dépend pas du type de programme.

De toute façon, des centaines de paramètres, c'est le chemin du programmeur qui ne mène nulle part. Nous devons appliquer des méthodes de contrôle automatique intelligentes pour réduire le nombre de paramètres d'un facteur dix. Dès que vous commencez à y penser, les solutions viennent immédiatement.

Les méthodes de contrôle automatique s'appliquent. Les constructions graphiques sont différentes des calculs de "séries" mathématiques sous la forme de stochastiques moyennes....., etc. Avant de pouvoir programmer quoi que ce soit, il faut faire un travail de fond. C'est-à-dire que vous devez d'abord créer des graphiques. Ensuite, nous devons voir comment tout cela fonctionne. Cela prend beaucoup de temps. Il faut analyser beaucoup de ce qui a été fait correctement, et ce qui doit être écarté. Ensuite, je dois effectuer une sorte d'optimisation-automatisation. Mais je ne vois pas l'intérêt, pour le moment, de se contenter d'essayer d'analyser les situations et de rechercher les paramètres optimaux à l'aide de dessins graphiques. C'est-à-dire que je ne vois pas de possibilité de faire fonctionner dans le testeur et de faire de l'automatisme au stade actuel avec des dessins graphiques. C'est pourquoi la situation optimale aujourd'hui est celle où certaines opérations sont automatisées, et d'autres sont effectuées manuellement. En d'autres termes, le programme doit permettre à la fois une automatisation dans une fourchette raisonnable pour le moment, et la possibilité d'une construction manuelle. Dans l'ancien МТ4, il était impossible de gérer sans beaucoup de paramètres externes lors d'opérations manuelles. Comment ce sera dans le nouveau, nous verrons. Il existe des propositions visant à ajouter de nouveaux outils graphiques à l'arsenal du langage, qui semblent être absents de MT5. Mais ce n'est pas le cas maintenant. Pour l'instant, vous avez beaucoup de travail de routine à faire pour transformer MT4.
 

nen:

............

Utilisez des fichiers texte .ini. C'est très pratique lorsque vous avez beaucoup de paramètres. Et c'est très rapide.

// Même pendant l'optimisation : il n'est en fait lu sur le disque que pour la première fois, puis il est stocké dans la RAM - le tampon d'enroulement.

Ne laissez que les paramètres optimisables dans les variables externes (d'entrée).

imha.

 
VOLDEMAR:

J'ai écrit au bureau de service, réinitialisé les codes et téléchargé une vidéo également.



Merci, mec.

Nous travaillons sur votre demande.

 
ForexMoneyMaker:

MT4 Bild 536, ME 872.

L'inversion des périodes a provoqué une erreur dans le tampon de l'indicateur : tableau hors de portée dans 'Bears.mq4' (106,24). Il n'y a pas d'erreurs sur la version 509.

Lorsque vous travaillez avec un autre indicateur, le message suivant est apparu : appel de fonction d'importation non résolu.


Merci. Nous le vérifierons et le corrigerons.

PS. Il ne fonctionne pas sur la dernière version.

Veuillez vérifier

 
artmedia70:
Si dans les paramètres de l'indicateur, dans l'onglet Couleurs, appuyez sur le bouton Réinitialiser,

alors toutes les couleurs de tous les tampons ne sont pas réinitialisées à leur état original, qui est spécifié dans #property indicator_colorN, mais à une couleur transparente, c'est-à-dire que les tampons ne sont pas affichés sur le graphique.
Auparavant, le comportement était différent - il était réinitialisé à la couleur initiale spécifiée dans #property indicator_colorN.

Le comportement sera-t-il corrigé ou restera-t-il tel quel ?


Il sera corrigé. Aller à

PS. Corrigé par

 
MetaDriver:

Renat, Stringo, Unicode restera-t-il pour de bon ?

Oui.

"Pourquoi la Tunisie ?" - "Où d'autre ??" (c) Le jour des élections.

 
Publication de la version 537 avec les corrections.
 

J'ai écrit à Servicedesk au sujet de l'erreur - #881866,

En 537m, il apparaît également .

 

Les EA avec des bibliothèques d'utilisateurs ne fonctionnent pas.

se ferme au démarrage du testeur.

et EA compilent avec succès, il y a des avertissements http://joxi.ru/2g2BUtg5CbBJURb38Ls.

J'ai vérifié plusieurs EAs basés sur les fonctions de ma bibliothèque, le terminal réagit sans ambiguïté, il se ferme (bien que si ces fonctions sont utilisées sans la bibliothèque, cela fonctionne).

Je ne vois rien à ce sujet dans les journaux.

Où dois-je envoyer le code ?

tableau hors limites dans

Je constate cette erreur dans les conseillers experts après avoir effectué des tests dans le testeur de stratégie.

construire 537.

Il fonctionne, mais il dit des choses étonnantes dans le journal.

http://joxi.ru/1w-BUtg5CbBoUY5XoVs

 
dken1:

Les EA avec des bibliothèques d'utilisateurs ne fonctionnent pas.

La borne se ferme lorsque le testeur démarre.

et EA compilent avec succès, il y a des avertissements http://joxi.ru/2g2BUtg5CbBJURb38Ls.

J'ai vérifié plusieurs EAs basés sur les fonctions de ma bibliothèque, le terminal réagit sans ambiguïté, il se ferme (bien que si ces fonctions sont utilisées sans la bibliothèque, cela fonctionne).

Je ne vois rien à ce sujet dans les journaux.

Où dois-je envoyer le code ?

tableau hors limites dans

Je constate cette erreur dans les conseillers experts après avoir effectué des tests dans le testeur de stratégie.

construire 537.


Les tableaux sont maintenant passés par référence uniquement - & doivent être ajoutés ("array passed by reference only").

Si vous devez passer un tableau à la timeseries par référence, vous devez maintenant utiliser un tableau intermédiaire, par exemple, obtenu en utilisant ArrayCopySeries.

Lors de la copie de tableaux, en particulier ArrayCopy, il ne faut pas oublier le sens d'indexation de ArraySetAsSeries, sinon il peut y avoir des problèmes.

Laconversion de type doit être effectuée avant les opérations qui impliquent des données de types différents ("perte possible de données en raison de la conversion de type").

Les constantes doivent être initialisées après leur déclaration et avant toute opération avec elles ("utilisation possible d'une variable non initialisée").

Les variables non utilisées peuvent également être supprimées ("variable 'X' non utilisée").