Caractéristiques du langage mql5, subtilités et techniques - page 140

 
Konstantin:

alors pourquoi réinventer votre propre lisepad quand il existe déjà une fonction productive ?

ArrayFill remplit un tableau avec une seule valeur. Et ici, nous parlons de remplir un tableau avec des données.
Si la conjonction "remplir un tableau statique, puis le copier dans un tableau dynamique à l'aide d'ArrayCopy" fonctionne plus rapidement que le simple "remplir un tableau dynamique", il est logique d'inventer un tel tableau. fonctionne plus rapidement que le simple "remplissage d'untableau dynamique", alors il est logique d'inventer un tel "lisapedo".

 
Nikolai Semko:

ArrayFill remplit un tableau avec une seule valeur. Et ici, nous parlons de remplir un tableau avec des données.
Si la conjonction - "remplir un tableau statique, puis le copier dans un tableau dynamique via ArrayCopy" - fonctionne plus rapidement que "remplir un tableau avec des données". fonctionne plus rapidement que le simple "remplissage d'un tableau dynamique", alors il est logique d'inventer un tel "lisapedo".

Dans ce cas, vous devez demander aux développeurs d'implémenter ce mécanisme dans la classe CCanvas de la bibliothèque standard.

 
Définissez les propriétés de volume du symbole personnalisé dans cette séquence
SYMBOL_VOLUME_STEP
SYMBOL_VOLUME_MAX
SYMBOL_VOLUME_MIN
 

Dans les deux plateformes, les fichiers EX peuvent servir de conteneurs d'indicateurs.

Ces indicateurs peuvent être appelés dans des iCustom et des modèles tiers. Le conteneur EX lui-même ne doit pas être lancé à cette fin.

 
fxsaber:

Dans les deux plateformes, les fichiers EX peuvent servir de conteneurs d'indicateurs.

Ces indicateurs peuvent être appelés dans des iCustom et des modèles tiers. Il n'est pas nécessaire de lancer le conteneur EX pour cela.

Je me demande si vous pouvez montrer un exemple d'un tel lancement ?

 
Aleksey Vyazmikin:

Je me demande si vous pouvez me montrer un exemple d'un tel lancement ?


c'est probablement ça :

Utiliser ses propres ressources et celles de tiers


Par exemple, si l'indicateur SampleIndicator.ex5 est inclus dans l'Expert Advisor SampleEA.ex5 en tant que ressource, alors le chemin d'accès à lui-même, spécifié lorsqueiCustom() est appelé dans la fonction d'initialisation de l'indicateur personnalisé, ressemblera à ceci "\Experts\\\\SampleEA.ex5::Indicateurs\\\\Nde l'échantillon.ex5". Si ce chemin est spécifié explicitement, l'indicateur personnalisé SampleIndicator.ex5 sera étroitement lié à SampleEA.ex5 et perdra sa capacité à travailler indépendamment.

 
Aleksey Vyazmikin:

Je me demande si vous pouvez me montrer un exemple d'un tel lancement ?

Quand je serai prêt, je l'écrirai.

 
Vladislav Andruschenko:


probablement ceci :

Utiliser vos propres ressources et celles de tiers


Par exemple, si l'indicateur SampleIndicator.ex5 est inclus dans l'Expert Advisor SampleEA.ex5 en tant que ressource, alors le chemin d'accès à lui-même, spécifié lorsque iCustom() est appelé dans la fonction d'initialisation de l'indicateur personnalisé, ressemblera à ceci "\Experts\\\\SampleEA.ex5::Indicateurs\\\\Nde l'échantillon.ex5". Si ce chemin est spécifié explicitement, l'indicateur personnalisé SampleIndicator.ex5 sera étroitement lié à SampleEA.ex5 et perdra sa capacité à travailler indépendamment.

Je viens de comprendre qu'il est possible d'utiliser les indicateurs de cet ex5 dans d'autres EAs, mais pas dans celui où il est une ressource.

 
fxsaber:

J'écrirai quand je serai prêt.

OK, je m'en réjouis.

 

Il s'agit d'une fonctionnalité du testeur MT5, mais j'ai décidé de la publier dans ce fil, car elle est indirectement liée à ce sujet.

Pour accéder à l'onglet d'optimisation invisible, vous devez sélectionner la force brute totale, sans paramètres à optimiser.

no optimized parameter selected, please check input(s) to be optimized and set start, step and stop values