Accueil | Automate | Dév. Système | Dév. Spécifique | Formation | Location | Méthode | Téléchargement | NewsLetter | Forum | Contact |

 Table des Matières

Créer des indicateurs personnalisés qui invitent à rentrer des données

La plupart des indicateurs pré-définis dans MetaStock vous invitent à rentrer des données qui sont utilisées dans le cadre de leurs calculs (i.e., periods/unités de temps, percent/pourcentage, points/points, etc...). Vous pouvez donner à votre indicateur personnalisé l’instruction de créer une invite pour que vous rentriez des données en utilisant une fonction spéciale appelée input().

La fonction input() utilise la syntaxe suivante:

input("texte d’invite", valeur minimale, valeur maximale, valeur par défaut);

texte d’invite/prompt text. Ceci définit le texte qui est affiché à côté de la boîte d’entrée. C’est utilisé pour décrire ce qui devrait être saisi.

minimum value/valeur minimale. C’est la plus petite valeur qui peut être entrée. Si vous tentez d’entrer une valeur plus petite que celle-ci, MetaStock affiche un message.

maximum value/valeur maximale. C’est la plus grande valeur qui peut être entrée. Si vous tentez d’entrer une valeur plus grande que celle-ci, MetaStock affiche un message.

default value/valeur par défaut. C’est la valeur par défaut (i.e., la valeur qui apparaît dans la zone d’entrée quand la boîte de dialogue est affichée au départ) . Remarquez que la valeur par défaut est automatiquement utilisée quand une autre formule appelle l’indicateur personnalisé en utilisant la fonction fml() .

Un maximum de 6 fonctions input() (" entrer() ") peuvent être utilisées dans le cadre d’un indicateur personnalisé. MetaStock lance les invites à rentrer toutes les données avant que l’indicateur personnalisé ne soit calculé, et ce quels que soient les endroits où sont retrouvées les fonctions input() dans l’indicateur personnalisé. Vous ne pouvez utiliser la fonction input() que dans les indicateurs personnalisés. Les tests de systèmes, les explorations, et les experts n’accepteront pas de fonction input() .

Si vous utilisez la fonction fml() pour appeler un indicateur personnalisé qui utilise la fonction input(), vous ne serez pas invité à rentrer les données de l’indicateur personnalisé référence. Toutes les données entrées dans le cadre d’un indicateur personnalisé référence utilisent automatiquement leurs valeurs par défaut.

L’indicateur personnalisé suivant vous invitera à entrer le nombre d’unités de temps à utiliser pour la moyenne mobile (i.e., smoothing periods/unités de temps de lissage) du RSI:

SmoothingPeriods:= input("Entrer le nombre d’unités de temps de lissage du RSI",1,9,3);
mov(rsi(14), SmoothingPeriods,s);

Quand un indicateur personnalisé est tracé, le dialogue d’entrée de données suivant apparaîtra pour vous inviter à "Entrer le nombre d’unités de temps de lissage du RSI". Vous remarquerez que si votre indicateur personnalisé avait exigé de multiples entrées, toutes ces données seraient apparues dans la boîte de dialogue.

Dans presque tous les cas vous voudrez attribuer la fonction input() à une variable (comme vu dans l’exemple précédent); autrement son usage sera limité. La fonction input() ne peut pas être imbriquée à l’intérieur d’autres fonctions. Par exemple, l’utilisation suivante de la fonction input() n’est pas autorisée:


mov(clôture, input("Entrer unités de temps",1,39,10), simple);

 

Cependant, ceci peut être réécrit en utilisant une variable comme suit:


maperiods:= input("Entrer unités de temps",1,39,10);
mov(close,maperiods,simple);

Le seul usage potentiel de la fonction input() utilisée seule est de tracer une ligne horizontale correspondant à une valeur précise de l’axe des y:

Input("Tracez une ligne horizontale à",1,10000,5);

L’indicateur personnalisé tracera une ligne horizontale à la valeur donnée. Cette fonctionnalité pourrait être utile à ceux qui désirent une plus grande précision que la simple étude de ligne (horizontal line/ligne horizontale) pour tracer leurs lignes de support/résistance.