Couleur de l'indicateur standard - page 2

 

Bonjour, Yedelkin !

Désolé, voici les réponses à vos questions.

MqlParam params[5];
int ma_handle;

params[0].type = TYPE_INT;
        params[0].integer_value = 10;
        
        params[1].type = TYPE_INT;
        params[1].integer_value = 0;
        
        params[2].type = TYPE_INT;
        params[2].integer_value = MODE_SMA;
        
        params[3].type = TYPE_INT;
        params[3].integer_value = PRICE_MEDIAN;
        
        params[4].type = TYPE_COLOR;
        params[4].integer_value = clrBlue;
        
        ma_handle = IndicatorCreate( NULL, PERIOD_CURRENT, IND_MA, 5, params );
        if ( ma_handle != INVALID_HANDLE )
      {
        ChartIndicatorAdd( 0, 0, ma_handle );
      }

L'indicateur est créé, mais sa couleur est ROUGE.

Une dernière chose. Le message précédent ne vous était pas destiné, mais à stringo,

sauf pour les paramètres de l'indicateur MA.

Si cela vous a offensé de quelque manière que ce soit, je m'en excuse.

Sincèrement, Mikhail.

 
Mikalas:

Une dernière chose. Le message précédent ne vous était pas destiné, mais à stringo,

En général, je lis exactement ce qui est écrit : "Bonjour, stringo et Yedelkin !". Urain a déjà noté hier que je "ne sais pas lire entre les lignes".

D'après la réponse principale, il est clair que la mise à zéro du tableau des paramètres n'est pas effectuée (et chaque variable de typeMqlParam a 4 champs, et non 2). Vous ne pouvez pas voir la réponse au commentaire : "De plus, l'indicateur IND_MA(iMA) n'a pas de paramètre tel que "Couleur", alors que vous l'avez. Vous pouvez voir un exemple d'utilisation de iMA ici : Référence MQL5 / Accès aux séries temporelles et aux indicateurs / IndicatorCreate".

Le code d'erreur renvoyé n'est pas spécifié.

 

Cher Yedelkin !

Il n'est pas nécessaire de mettre à zéro le tableau params, car il s'agit d'un tableau statique (params[5]) et je

remplir tous ses champs, d'ailleurs, remplir 2 champs est suffisant. Je pense que selon le TYPE, l'un des 3

les champs suivants.

Aucuneerreur (ma_handle != INVALID_HANDLE), l'indicateur est créé.

Dites-moi, combien de paramètres a l'indicateur sur la photo ?

MA

Mikhail

 
Mikalas:

Pas decode d'erreur, l'indicateur est créé.

Vous écrivez d'abord"Ce code aurait dû fonctionner, MAIS.... hélas...". Il s'avère maintenant que"l'indicateur est en cours de création". ....To "No error code" - il y a toujours un code d'erreur, même s'il est nul.

A propos de la photo. Vous réduisez sans cesse la question à une discussion sur un éventuel bug, selon vous. Mais au départ, vous avez commencé à parler de l'utilisation de la fonction IndicatorCreate() dans votre code. Comme vous le comprenez vous-même, la fonction IndicatorCreate() ne fonctionne pas avec les images. Une fois encore, je vous suggère de consulter la documentation et les exemples. Trouvez (devinez) pourquoi dans l'onglet des paramètres apparaît l'option "Style", mais dans les paramètres d'entrée de l'indicateur iMA vous n'avez pas une telle option. Découvrez les paramètres d'entrée fournis pour l'indicateur que vous avez choisi et ceux qui doivent être pris en compte dans la fonction IndicatorCreate().

 

Je vois, merci.

 
Mikalas:

Dites-moi, combien de paramètres a l'indicateur sur la photo ?

Il y a 7 paramètres dans cet onglet.
 

Contrairement à iMA(4 paramètres), la fonction

La fonction IndicatorCreate doit saisir tous les paramètres possibles

MQL5 Référence :

int IndicatorCreate(
chaîne de caractères symbole, // nom du symbole
ENUM_TIMEFRAMES période, // période
ENUM_INDICATOR indicator_id, // type d'indicateur de l'énumération ENUM_INDICATOR
int parameters_cnt=0, // nombre de paramètres
const MqlParam& parameters_array[]=NULL, // tableau de paramètres
) ;

tableau des paramètres[]=NULL

[Tableau de type MqlParam, dont les éléments contiennent le type et la valeur de chaque paramètre d'entrée d'un indicateur technique.

Vous m'envoyez vers le livre de référence, mais vous ne le lisez pas ?

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Типы индикаторов - Документация по MQL5
 
Mikalas:

Vous me renvoyez à un guide et vous ne l'avez pas lu vous-même ?

C'est parti. Avec cette approche, vous risquez de vous retrouver seul avec votre problème.

Sur le sujet. Le fait que vous ayez regardé dans le manuel est une bonne chose. Maintenant, rouvrez-le sur la même page. Vous voyez la ligne suivante : "Un tableau de type MqlParam, dont les éléments contiennent le type et la valeur de chaque paramètre d'entrée de l'indicateur technique". Qu'est-ce que "paramètre d'entrée" est "paramètre d'entrée"(Référence MQL5 / Notions de base sur MQL5 / Variables / Variables d'entrée). Cherchez maintenant la réponse à la question "combien de paramètres d'entrée l'indicateur technique iMA possède-t-il ?

Mikalas:

Contrairement à iMA (4 paramètres), la fonction IndicatorCreate doit saisir tous les paramètres possibles

Donc, si iMA a 4 paramètres d'entrée, combien de paramètres d'entrée dois-je "entrer" dans IndicatorCreate() ? Encore une fois : IndicatorCreate() ne fonctionne pas avec les images. Pour être plus exact, IndicatorCreate() ne travaille pas avec des images, mais avec des paramètres d'entrée de l'indicateur, qu'il transmet directement à l'indicateur. Où passera-t-il l'option d'image "Style" si l'indicateur n'a pas un tel paramètre d'entrée ?
 

L'indicateur MA a 7 paramètres !

Pour la fonction iMA, 4 paramètres suffisent

ma_handle = iMA( _Symbol, TimeFrame, 10, 0, MODE_SMA, PRICE_MEDIAN ) ;,

mais pourla fonction IndicatorCreate() les 7 paramètres de l'indicateur doivent être possibles

tableau des paramètres[]=NULL

[Array of type MqlParam the elements of which contain type and value of each input parameter of the technical indicator.

Encore une chose... Quelle est votre profession ?

 
Mikalas:

et les 7 paramètres de l'indicateurdoivent être possibles pourIndicatorCreate().

C'est votre conclusion et vous devez vivre avec :) Service Desk pour vous aider.